Announcement

Collapse
No announcement yet.

AMD Posts VP9 VA-API Video Acceleration For Gallium3D

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

  • #11
    I'm pretty sure Nvidia moved away from fixed-function decoders a few years ago, which is why Nouveau cannot support video decoding there. It should work with the proprietary driver though.

    Comment


    • #12
      Originally posted by Shnatsel View Post
      I'm pretty sure Nvidia moved away from fixed-function decoders a few years ago, which is why Nouveau cannot support video decoding there. It should work with the proprietary driver though.
      Nouveau can't support hardware video decode because it's not possible anymore to extract the necessary firmware from the blob. Nvidia is very much still using fixed-function decoders.

      Comment


      • #13
        Originally posted by Gusar View Post
        Very rarely does Linux get shader-based decoders (there's basically just intel-hybrid-driver, but even that one only exists because Google commissioned it, likely for Chromebooks), this is using the the full fixed-function ASIC decoder as found on Raven Ridge (currently, the only AMD hardware that has one).
        I think MPEG2 VDPAU decoder for r300g is shader based. Also I believe there is a H.264 decoder for Xbox 360 Xenos GPU but not released for Linux.

        Rasbperry Pi has GPU/VPU decoders for VP8 and H.265.

        Comment


        • #14
          Originally posted by chithanh View Post
          I think MPEG2 VDPAU decoder for r300g is shader based. Also I believe there is a H.264 decoder for Xbox 360 Xenos GPU but not released for Linux.

          Rasbperry Pi has GPU/VPU decoders for VP8 and H.265.
          Yes, Gallium has a shader-based mpeg2 decoder, but it's quite slow actually, and probably uses more resources than software decoding.

          Didn't know about the RPi. I'm trying to find info on that, especially regarding HEVC, but all I can find in a minute of search is references to NEON optimizations, but that's still software decoding, not GPU/VPU. Do you have links for the GPU/VPU decoders?

          Edit: For VP8 I found this:
          Latest firmware has added a start_x.elf which includes extra (free) codecs.
          It is built with video codecs: MJPEG, VP6, VP8, Ogg Theora, and audio codec: Ogg Vorbis.
          (MJPEG has also been added to start.elf as it is very small)

          These are all software GPU accelerated codecs (unlike the existing hardware accelerated codecs) and so are limited to SD resolutions, rather than HD.
          So these are in the firmware, but they're software based. Kinda weird, why have them in the firmware then, when you can just as well use ffmpeg. The poster probably got something wrong here.

          Edit2: The LibreELEC wiki says this
          VP6, VP8, and Theora have GPU accelerated support, but that is limited to DVD resolutions.
          Still nothing about HEVC. And BTW, VP8 is relatively simple, I can imagine software actually doing a better job than the weak RPi GPU, even though the RPi CPU isn't exactly speedy either. Maybe tomorrow I'll play with this a little, I do have a RPi2, but the thing is VP8 videos are actually rare nowadays, Google replaced most of them with VP9 versions.
          Last edited by Gusar; 09 April 2018, 04:47 PM.

          Comment


          • #15
            Now only benchmarking is needed Ryzen APU against that new GT 1030 DDR4 20W model... probably someone wondering which one uses more watts while decoding something

            Comment


            • #16
              Given that Polaris has a VP9 decoder in hardware, I'm guessing this is for the encoder side?

              Comment


              • #17
                You don't have to guess so much if you read the cover letter of the patches linked in the article

                Originally posted by https://lists.freedesktop.org/archives/mesa-dev/2018-April/191612.html
                This series will enable VP9 support for profile0 and profile2 on VCN.
                It will support players with VP9 VA-API enabled.
                and

                Originally posted by https://lists.freedesktop.org/archives/mesa-dev/2018-April/191612.html
                radeon/vcn: add VP9 stream type for decoder
                /edit:
                And IIRC enconding is currently only done in the OMX state stracker, not in the VA state tracker
                Last edited by droste; 10 April 2018, 01:51 AM.

                Comment


                • #18
                  Think AV1 was finished too late to make it into the 2019 CPUs.. They are probably all design complete by now and are only doing small fixes.. As there is probably a tapeout happening in mid 2018!
                  There isn't any AV1 decoding ASIC block right now! So there is nothing to be integrated! The bitstream was just frozen... I doubt we will see any hardware AV1 decoder before 2021. Probably first in mobile SoCs as google and Netflix might push it! Desktop CPUs and GPUs tend to lag behind in this regard as they are not that power constrained and bandwidth constrained as mobile and don't get much benefit from it.

                  Comment


                  • #19
                    Originally posted by microcode View Post
                    Given that Polaris has a VP9 decoder in hardware, I'm guessing this is for the encoder side?
                    It doesn't. On Windows they have a shader based implementation for Polaris.

                    Comment


                    • #20
                      Originally posted by Gusar View Post
                      Didn't know about the RPi. I'm trying to find info on that, especially regarding HEVC, but all I can find in a minute of search is references to NEON optimizations, but that's still software decoding, not GPU/VPU. Do you have links for the GPU/VPU decoders?
                      Here is a description of how RPi decodes H.265/HEVC:

                      Comment

                      Working...
                      X