Announcement

Collapse
No announcement yet.

AMD's UVD2-based XvBA Finally Does Something On Linux

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

  • http://doom10.org/index.php?topic=686.0
    10-bit depth for Dummies?

    the new x264/FFmpeg 10 bit encoding and soon decoding options patches Just submitted being a case in point, with the generic C code getting new assembly patch's added real soon now (thats a x264 soon as in days, not soon as in ATI/AMD soon it might kind of work 2+ years and counting )to make it even better.

    actually, thinking about it,the question needs asking does ANY UVD actually work with 10bit depth and greater encodes Today ?.

    Comment


    • Originally posted by DivineGrace View Post
      To a certain extent, I agree with you. However, with mobile computing, XvBA is essential for power conservation. For example, if I can keep my dual-core down to 800mhz while watching 720p content, my notebook will not get as hot and will be much more energy efficient.
      With fast cpus on my desktop, I don't care much for power conservation nor do I need gpu-accelerated video; ffmpeg-mt takes care of all that.
      and as i like to point out, as 1080P Mpeg-4 AVC becomes even more popular as time passes

      try saying that after testing this current top of the line clip (the 'Bird Scene' from Planet Earth) PlanetEarthBirds.mkv sample

      http://rapidshare.com/files/82525583....x264.mkv.html

      i think thats a working sample but iv not checked it.

      Comment


      • Originally posted by popper View Post
        and as i like to point out, as 1080P Mpeg-4 AVC becomes even more popular as time passes

        try saying that after testing this current top of the line clip (the 'Bird Scene' from Planet Earth) PlanetEarthBirds.mkv sample

        http://rapidshare.com/files/82525583....x264.mkv.html

        i think thats a working sample but iv not checked it.
        It's working for me right now using the command :
        mplayer -vo vaapi:reflect -va vaapi PlanetEarthBirds.mkv
        Those who would give up Essential Liberty to purchase a little Temporary Safety,deserve neither Liberty nor Safety.
        Ben Franklin 1755

        Comment


        • Hey! Great work, gbeauche. Your work is appreciated!

          I'm running an ATI 5730 Mobile 1002:68c0 (Dell XPS 1647)

          Using 2.6.36-rc8-git3, fglrx 10.10, libva 0.31.1-sds1, xorg 1.9.0.902, xvba-video 0.7.6.pre2, mplayer-vaapi 20100713, hwdecode-demos 0.9.4. Running on Gentoo ~x64.

          Getting the garbled vaapi output, interestingly enabling XVBA_VIDEO_DEBUG (with any XVBA_VIDEO_EVERGREEN_WORKAROUND value or with none) results in a segfault (see below code snippet)

          Code:
          gabe@daglaptop64 ~ $ XVBA_VIDEO_DEBUG=1 XVBA_VIDEO_EVERGREEN_WORKAROUND=15 vaapi_vc1 --size 320x240 
          Display type 'x11'
          Hardware accelerator 'vaapi'
          [hwdecode_demos] VA display 0x1767e20
          libva: libva version 0.31.1-sds1
          Xlib:  extension "XFree86-DRI" missing on display ":0.0".
          libva: va_getDriverName() returns 0
          libva: Trying to open /usr/lib64/va/drivers/fglrx_drv_video.so
          xvba_video: FGLRX driver version 8.78.30 detected
          xvba_video: FGLRX device ID 0x68c0
          xvba_video: Evergreen GPU detected
          xvba_video: XvBA version 0.74 detected
          libva: va_openDriver() returns 0
          [hwdecode_demos] VA API version 0.31
          [hwdecode_demos] 6 display attributes available
          [hwdecode_demos]   VADisplayAttribDirectSurface     (get/---) min 1 max 1 value 0x1
          [hwdecode_demos]   VADisplayAttribBackgroundColor   (get/set) min 0 max 16777215 value 0xffffff
          [hwdecode_demos]   VADisplayAttribBrightness        (get/set) min -100 max 100 value 0x0
          [hwdecode_demos]   VADisplayAttribContrast          (get/set) min -100 max 100 value 0x0
          [hwdecode_demos]   VADisplayAttribHue               (get/set) min -100 max 100 value 0x0
          [hwdecode_demos]   VADisplayAttribSaturation        (get/set) min -100 max 100 value 0x0
          [hwdecode_demos] Decoded surface size: 320x240
          [hwdecode_demos] 4 profiles available
          [hwdecode_demos]   VAProfileMPEG2Simple
          [hwdecode_demos]   VAProfileMPEG2Main
          [hwdecode_demos]   VAProfileH264High
          [hwdecode_demos]   VAProfileVC1Advanced
          [hwdecode_demos] 1 entrypoints available for VAProfileVC1Advanced
          [hwdecode_demos]   VAEntrypointVLD
          Segmentation fault
          vaapi_vc1 --size 320x240:

          vaapi_vc1 --size 320x240 --glx --no-glx-use-reflection:

          Comment


          • Hello!

            I'm trying to get H264/VC1 acceleration to work on my HD3850 AGP. I'm running Ubuntu 10.4 x86 with fglrx 10.9. I've installed the latest versions of libva, xvba-video, mplayer-vaapi, and hwdecode-demos. Vaapi_h264 and vaapi_vc1 seem to give ok output (nice cat).

            mplayer -vo vaapi -va vaapi gives accelerated, but completely garbled video (with the exception of a few keyframes):

            Code:
            vlix@karolinux:~/mplayer-vaapi-20100713/mplayer-vaapi$ mplayer -vo vaapi -va vaapi /home/vlix/Videos/killa.sampla.x264.mkv 
            MPlayer SVN-r31722-4.4.3 (C) 2000-2010 MPlayer Team
            mplayer: could not connect to socket
            mplayer: No such file or directory
            Failed to open LIRC support. You will not be able to use your remote control.
            
            Playing /home/vlix/Videos/killa.sampla.x264.mkv.
            libavformat file format detected.
            [matroska @ 0xa64aa70] Estimating duration from bitrate, this may be inaccurate
            [lavf] stream 0: video (h264), -vid 0
            [lavf] stream 1: audio (ac3), -aid 0
            VIDEO:  [H264]  1920x1080  0bpp  47.917 fps    0.0 kbps ( 0.0 kbyte/s)
            Clip info:
             title: Avidemux
            libva: libva version 0.31.1-sds1
            Xlib:  extension "XFree86-DRI" missing on display ":0.0".
            libva: va_getDriverName() returns 0
            libva: Trying to open /usr/lib/va/drivers/fglrx_drv_video.so
            libva: va_openDriver() returns 0
            ==========================================================================
            Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
            [VD_FFMPEG] VA API accelerated codec.
            Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
            ==========================================================================
            ==========================================================================
            Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
            AUDIO: 48000 Hz, 2 ch, s16le, 448.0 kbit/29.17% (ratio: 56000->192000)
            Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
            ==========================================================================
            AO: [oss] 48000Hz 2ch s16le (2 bytes per sample)
            Starting playback...
            Unsupported PixelFormat 61
            [VD_FFMPEG] Trying pixfmt=1.
            Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
            VO: [vaapi] 1920x1080 => 1920x1080 H.264 VA-API Acceleration 
            [VD_FFMPEG] XVMC-accelerated MPEG-2.
            xvba_video: driver does not support H.264 content over HP@L4.1. Please upgrade.
            A:  11.9 V:  11.4 A-V:  0.480 ct: -0.080   0/  0 30% 11% 15.5% 60 0
            mplayer -vo vaapi:gl -va vaapi does not work, the relevant part of the error message being:

            Code:
            vlix@karolinux:~/mplayer-vaapi-20100713/mplayer-vaapi$ mplayer -vo vaapi:gl -va vaapi /home/vlix/Videos/killa.sampla.x264.mkv 
            MPlayer SVN-r31722-4.4.3 (C) 2000-2010 MPlayer Team
            mplayer: could not connect to socket
            mplayer: No such file or directory
            Failed to open LIRC support. You will not be able to use your remote control.
            
            Playing /home/vlix/Videos/killa.sampla.x264.mkv.
            libavformat file format detected.
            [matroska @ 0x9dcda70] Estimating duration from bitrate, this may be inaccurate
            [lavf] stream 0: video (h264), -vid 0
            [lavf] stream 1: audio (ac3), -aid 0
            VIDEO:  [H264]  1920x1080  0bpp  47.917 fps    0.0 kbps ( 0.0 kbyte/s)
            Clip info:
             title: Avidemux
            Could not parse arguments at the position indicated below:
            gl
            ^
            
            -vo vaapi command line help:
            Example: mplayer -vo vaapi:gl

            I guess something is not installed correctly, but what? I would really appreciate any help or hints, thanks!

            Comment


            • Sorry for the misinformation in my earlier post popper and vlix
              I saw PlanetEarthBirds.mkv and thought it was the same file I downloaded from way earlier in this thread.

              I was wrong once I downloaded killa.sampla.x264.mkv and tried to play it.
              .. I see the same error as you vlix, using both :
              Code:
              mplayer -vo vaapi:gl -va vaapi killa.sampla.x264.mkv
              or
              Code:
              mplayer -vo vaapi:reflect -va vaapi killa.sampla.x264.mkv
              Code:
              Starting playback...
              Unsupported PixelFormat 61
              [VD_FFMPEG] Trying pixfmt=1.
              Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
              VO: [vaapi] 1920x1080 => 1920x1080 H.264 VA API Acceleration  [zoom]
              [VD_FFMPEG] XVMC-accelerated MPEG-2.
              [h264 @ 0xbb6fa0]number of reference frames exceeds max (probably corrupt input), discarding one  (multiple times)
              xvba_video: driver does not support H.264 content over HP@L4.1. Please upgrade.
              Given the miracle gbeauche has worked just getting xvba and vaapi into a usable state..I wouldn't hold my breath waiting for AMD to introduce support
              for a new format anytime soon..I don't think it's been announced as officially supported yet, has it ?
              Those who would give up Essential Liberty to purchase a little Temporary Safety,deserve neither Liberty nor Safety.
              Ben Franklin 1755

              Comment


              • Originally posted by vlix View Post
                mplayer -vo vaapi -va vaapi gives accelerated, but completely garbled video (with the exception of a few keyframes):

                Code:
                VO: [vaapi] 1920x1080 => 1920x1080 H.264 VA-API Acceleration 
                [VD_FFMPEG] XVMC-accelerated MPEG-2.
                xvba_video: driver does not support H.264 content over HP@L4.1. Please upgrade.
                A:  11.9 V:  11.4 A-V:  0.480 ct: -0.080   0/  0 30% 11% 15.5% 60 0
                Given the last xvba-video debug message, the video output you see is then "normal" in your configuration. Only reference frames and other frames that don't rely on reference frames that are still available in the DPB will be showed correctly.

                mplayer -vo vaapi:gl -va vaapi does not work, the relevant part of the error message being:

                Code:
                Could not parse arguments at the position indicated below:
                gl
                ^
                
                -vo vaapi command line help:
                Example: mplayer -vo vaapi:gl
                I guess something is not installed correctly, but what? I would really appreciate any help or hints, thanks!
                You probably have not the VA/GLX support compiled it. Make sure GL and GLU libraries are installed. You can check your mplayer config.log, around "Checking for VA-API (with GLX support)", and see what it tells you is missing.

                Comment


                • Originally posted by DarkFoss View Post
                  Code:
                  mplayer -vo vaapi:reflect -va vaapi killa.sampla.x264.mkv
                  This is not related to your problem but please note that the "reflect" option will only work with the "gl" renderer, thus -vo vaapi:gl:reflect.

                  Given the miracle gbeauche has worked just getting xvba and vaapi into a usable state..I wouldn't hold my breath waiting for AMD to introduce support for a new format anytime soon..I don't think it's been announced as officially supported yet, has it ?
                  If people are trying to use that, this means this was advertised as such... Since those people don't have any other "better" driver, this is the same that what common users are getting. Anyway, as for other driver features, I don't think there is any official bug reporting system for fglrx on Linux, neither for NVIDIA BTW. So users usually report bugs to their distributor, whom forward to the relevant people @ ATI, IMHO.

                  Comment


                  • iv been meaning to ask you gbeauche for a while now and seeing the latest news ....

                    have you been given access to the new sandy bridge prototypes yet ?


                    the news being http://www.phoronix.com/scan.php?pag...item&px=ODY2OQ
                    Intel To Have Sandybridge 3D In Mesa Done By Q4
                    Posted by Michael Larabel on October 11, 2010

                    and it seems AMD's UVD is nearly now as good as dead for end user use ,given the sandy bridge Open Encode/Decode ASIC progress


                    Francois Piednoel , (Senior Performance analyst at Intel) says he's beta patched a current x264 master code-base, to give it a lower level access than the new higher level Intel® Media SDK 2.0 has to the new sandy bridge internal Encode/Decode engine and open up some internal routines for direct x264 use as he understands x264 assembly etc and that "the x264 community would not include a call to a DLL without any control of the encoding process."

                    he also said in IRC about the x264 patches he's working on right now.

                    "2010-10-18 05:58:07 < Dark_Shikari> a) What exactly is this hardware?

                    2010-10-18 05:58:12 < Dark_Shikari> Is it a single encoding ASIC that takes YUV in?
                    2010-10-18 05:58:27 < Dark_Shikari> Is it a set of asynchronous units, like on the OMAP4?
                    2010-10-18 05:58:35 < frpiednoel> it does take YUV in ... and few other formats
                    2010-10-18 05:58:40 < Dark_Shikari> Is it a set of synchronous units, accessible via CPU instructions?
                    2010-10-18 05:59:18 < frpiednoel> for the moment, we are only supporting windows ... and via DXVA2
                    2010-10-18 05:59:40 < frpiednoel> I am the one who is trying to get it out as "hardware" ...
                    "
                    "
                    you ll get access to the motion vector field, you ll be able to use Quanti, inverse quanti, hard Zig Zag, and reserve ZigZag
                    2010-10-18 06:02:39 full hard decoder
                    2010-10-18 06:02:56 < Dark_Shikari> can it search an arbitrary number of refs?
                    2010-10-18 06:02:58 < frpiednoel> and the decoder decode in the L3 cache" so far.

                    Comment


                    • How about UVD support ?

                      I wonder why ATI/AMD doesn't support UVD in fglrx, only UVD2.0? Are those
                      two hardware decoders so different that AMD would have to start write
                      fglrx driver for UVD support from scratch ?

                      Comment

                      Working...
                      X