Announcement

Collapse
No announcement yet.

Holy Crap! You Can Use XvMC With ATI Gallium3D!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by sturmflut View Post
    No, on the VIA Unichrome it also supports Motion Compensation, IDCT and Variable-Length Decoding for MPEG-4 ASP.

    I never quite understood why NVIDIA and AMD had to come up with their own XvMC replacements. XvMC can be extended to provide playback acceleration for most video codecs, and if the limitations are that bad a common open-source successor should have been developed. If you think nearly every player had to be patched to support VPDAU, just so it can accelerate playback for a codec which could have been easily added to XvMC...
    My understanding was that the XvMC API would have needed such drastic changes to handle anything past ASP (eg H.264/MPEG-4 AVC) at MC or IDCT level that the resulting interface would have been nothing like XvMC. Don't know if that is the case but that seems to be the conventional wisdom. I believe that only VLD-level support was added for H.264 since the API differences are much less at VLD level.

    The other point AFAIK was simply that XvMC had not been broadly adopted so it probably seemed like a good time to introduce a newer API. Unfortunately VA-API, VDPAU and XvBA were independently developed at more or less the same time, so we went from zero new APIs to three new APIs fairly quickly.

    It's like when you see a part of town with no hotels... everyone recognizes the opportunity at the same time so you end up with three hotels and only enough customers to fill one of them
    Test signature

    Comment


    • #22
      Originally posted by xeros View Post
      Will it be usefull for R300 hardware (like mine RV350 and RV370), too? Or does it lack of power/shader units needed for such acceleration?
      Yes, it's still useful on r3xx-r5xx hardware. There's no UVD hw on those asics so they always used shaders for MC in the proprietary driver.

      Comment


      • #23
        I gave it a try. It seems to work-ish on my rs780 but not on my evergreen. There are some visual glitches but the funny part is that CPU usage is actually higher with XvMC than when using plain Xv. Only a little bit though and it doesn't really matter because mpeg2 hardly requires any CPU power to decode anyway. So Xv will do just fine for now. Wake me up when there's H.264 support .

        Comment


        • #24
          Cool to have this! even though it's use is somewhat limited

          Comment


          • #25
            I can understand VDPAU but do we really need MPEG2 acceleration these days? Do not modern CPUs have more than enough horse power for that?

            Anyway great news.

            Comment


            • #26
              Oh no!!!!

              Originally posted by zoomblab View Post
              I can understand VDPAU but do we really need MPEG2 acceleration these days? Do not modern CPUs have more than enough horse power for that?
              Too much functionality!!!! Take it away!!!!!!!!

              But just think of what else you will be able to use that freed-up CPU power for instead.

              Comment


              • #27
                Originally posted by zoomblab View Post
                I can understand VDPAU but do we really need MPEG2 acceleration these days? Do not modern CPUs have more than enough horse power for that?
                How can you do MPEG4 acceleration if you haven't figured out how to do MPEG2 acceleration first?

                This is a first step towards a more generic decoding solution which will be able to deal with many different codecs. ALL of these codecs need to do IDCT and motion compensation.

                Anyway, modern CPUs have more than enough horsepower for HD x264 too.

                Comment


                • #28
                  Anyway, VDPAU is just a protocol. On its own, it doesn't accelerate anything. It is used by nvidia hardware to access the decoding HW on their cards. It's this decoding part that needs to be written in a generic way using shaders since we don't have the documentation for any manufacturer's decoding hardware thanks to the Hollywood mafia.

                  Once this is done, you can expose this functionality using VDPAU, VA-API, or any other protocol you wish.

                  Comment


                  • #29
                    Anyway, modern CPUs have more than enough horsepower for HD x264 too.
                    You mean h.264? Because x264 is... an IMPLEMENTATION OF h.264. I also would be very careful about claiming that modern processors have more than enough power.... *high end* modern processors certainly do, but what about the very VERY modern processor in your PHONE? Will that also be able to do it? Blanket statements are dangerous... and not all machines are intended for maximum processing power.

                    My primary workhorse is a Phenom X6-1090T. It obviously has more than enough raw computational power to handle video decode. Another machine I'm in the process of gathering parts for though, FOR THE EXPLICIT PURPOSE of being part of my media center, will be running a much less powerful SEMPRON 140. Think it can handle high bitrate h.264 all on the CPU? How about if I hand off some of the work to the Radeon HD 4200, probably then, it should be able to do the job.

                    I'm not banking on it though, have a broadcom 970015 video decoder on the way... the mini-ITX mainboard I selected has a mini-PCIe slot for just such a device.


                    @zoomblab:
                    When you are building a complex system, do you start out and implement the entire thing all at once? Or do you break that down into a series of smaller projects? XvMC is a smaller project that implements at least PART of what is needed to ultimately provide h.264 decode assistance.

                    Comment


                    • #30
                      Has anyone benchmarked this?

                      Comment

                      Working...
                      X