Announcement

Collapse
No announcement yet.

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

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

  • Originally posted by zelda32 View Post
    $ ldd /usr/bin/vainfo
    libva.so.1 => /usr/lib/libva.so.1 (0xb7818000)
    libva-x11.so.1 => /usr/lib/libva-x11.so.1 (0xb7812000)
    You said you compiled and installed the libva yourself to /usr/local, so this definitely means you are not using the latest libva. Just remove the system one provided by your distribution, or use updated packages. Either libva 0.31.1-1+sds4 or upstream libva 1.0.4. Both contain the right fglrx detection code.

    Comment


    • Originally posted by evolution View Post
      Can this be a problem related to some library that AMD updated?
      Are you sure it worked with 10.7? I would say it might work with < 10.4. Yes, there were some changes.

      Comment


      • To mr.gbeauche:

        Yes, for me, (at least in my Arch x86_64 distro), H264 decoding worked properly until catalyst 10.7 (even with their slightly different libva implementation and some little "bugs"...). Since Catalyst 10.8, I wasn't able to decode H264 videos properly anymore... (and this problem still goes with Catalyst 10.10 )...

        Comment


        • Originally posted by gbeauche View Post
          You said you compiled and installed the libva yourself to /usr/local, so this definitely means you are not using the latest libva. Just remove the system one provided by your distribution, or use updated packages. Either libva 0.31.1-1+sds4 or upstream libva 1.0.4. Both contain the right fglrx detection code.
          Well, my distro (slackware), doesn't provide any libva package. So i compile it myself.
          At 1st, i installed it on /usr/local. Then after figuring it out that libva search the driver on /usr/local/lib/dri, i put xvba_drv_video.so and fglrx_drv_video.so link there so vainfo can detect it properly. Then vaapi (including mplayer) works with that export thing.

          Then, i re-install the libva (which is version 0.31.1-1+sds4) to /usr. then copied those two files to /usr/lib/dri. vaapi (including mplayer) works, but with that export thing. Won't work without it.

          On the other hand, i found strange problem that can make the system freeze. Here's how.
          1. Login, startx, then run 1080p video.
          2. kill X, logout.
          3. Login, startx, then run 1080p video. Get busy on 2nd screen (i use dual-screen) like scrolling along the workspace that basically introduce delay to the playback. Then got this error.

          [h264 @ 0x8a23140]hardware accelerator failed to decode picture
          [vo_vaapi] vaCopySurfaceGLX(): unknown libva error

          [h264 @ 0x8a23140]hardware accelerator failed to decode picture
          xvba_video: XVBA_SyncSurface(): status 2
          xvba_video: XVBA_SyncSurface(): status 2
          xvba_video: XVBA_SyncSurface(): status 2
          xvba_video: XVBA_SyncSurface(): status 2
          [vo_vaapi] vaCopySurfaceGLX(): unknown libva error
          xvba_video: XVBA_SyncSurface(): status 2

          4. Close video, run it again.
          5. At this point, most likely the system going to freeze.

          When the system freeze, i am ssh-ing to the box, see if dmesg or Xorg.0.log have some error notice. There are none.
          I tried non-gl (-vo vaapi) playback, same problem occur.
          I tried rmmod fglrx then modprobe fglrx after step 2, same problem occur.

          I use cat 10.10. Same problem with 10.9. Gonna try 10.8 next.

          Comment


          • Alright, so after trying 10.10, 10.9, and 10.8, they have the same problem.
            if i play 1080p video on 1st monitor while doing something on 2nd monitor to the point it's introducing delay where the video and audio out-of-sync (the video freeze while sound still playing), it produces that xvba_video error. After that error, i tried playing the video again, and it just play so slowly to the point it doesn't have GPU acceleration and mplayer complaining my system is too slow ! O_O.

            Then, when i try to logout from X to console, the system just freeze.

            Comment


            • To mr.gbeauche:

              After doing some "dirty work" in my Arch Linux PKGBUILD's, and downgrading Xorg server to version 1.8.2, I solved my problem of not decoding H264 videos properly downgrading Catalyst from 10.10 to 10.7.

              Now I can finally see my H264 and VC-1 encoded videos properly (if you want a proof, I can post here some screenshots of H264 encoded videos that now play with no issues)...

              The only problem now is this isn't a definitive solution (at least for me)... And I want to upgrade my Xorg and kernel versions (when 2.6.37 arrives) in a near future...

              Cheers and thanks for your help...

              p.s.: Currently I'm using in my laptop libva 1.0.6 (with sds patches) and xvba-video 0.7.6.pre3 with any problems...

              Comment


              • Did you try the new ati driver with old xserver too?

                Comment


                • To Kano:

                  No I didn't try it... But if you want, I can try to "mess up" a bit and check if I have properly VAAPI acceleration with Cat. 10.10 + Xorg 1.8.2...

                  Cheers

                  Comment


                  • To Kano:

                    After I've tried to use Cat. 10.10 with Xorg Server 1.8.2, the results were the following:

                    1- First, I've changed some lines in Arch's Cat.10.10 PKGBUILD, in order to make it work with Xorg 1.8.x (original Cat.10.10 PKGBUILD by default only installs the drivers for Xorg 1.9.x).

                    2- Then, I removed Cat.10.7 driver and installed Cat. 10.10 with compatibility for Xorg 1.8.2 (with Pacman, of course).

                    3- Rebooted the computer with no problems (I checked it loading my LXDE desktop and typing in the terminal "fglrxinfo").

                    4- I did 2 tests with the following commands (in my terminal): "mplayer -vo vaapi:gl -va vaapi movie.mkv" (with a H264 encoded video) and "mplayer -vo vaapi:gl -va vaapi movie.wmv" (a VC-1 encoded video)... and the results were... surprise! The video encoded with the H264 format appeared completly garbled... The other one (encoded in VC-1), was working properly (like me and zelda32 have been reporting in the forum in the last posts) =S

                    5- Finally, I deleted Cat.10.10 drivers, reinstalled my Cat.10.7 drivers (with my customized PKGBUILD), rebooted the computer... et voil?! With Cat.10.7 my computer was decoding both H264 and VC-1 encoded videos properly (I can post here some screenshots to proof it...)

                    So, we possibly can conclude the problem isn't related to different versions of Xorg Server... (could someone else try to confirm it?)

                    Cheers

                    Comment


                    • Originally posted by evolution View Post
                      5- Finally, I deleted Cat.10.10 drivers, reinstalled my Cat.10.7 drivers (with my customized PKGBUILD), rebooted the computer... et voil?! With Cat.10.7 my computer was decoding both H264 and VC-1 encoded videos properly (I can post here some screenshots to proof it...)
                      It sounds like the xvba library in catalyst was just updated and no longer supports your hardware correctly. I don't think AMD ever said it was supported, so it wouldn't surprise me at all if they just broke it.

                      Comment

                      Working...
                      X