Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
01-27-2014, 06:00 PM
|
#1
|
Member
Registered: Aug 2012
Location: Kentucky, USA
Distribution: Slackware
Posts: 97
Rep:
|
X dies when trying to play hardware accelerated video with XVBA, fglrx driver
Hello! Maybe you all can give me some pointers with this issue. I've been trying to get this to work for several hours with only partial success.
I am trying to get hardware accelerated video working with the Radeon HD 6320 graphics card on my laptop. I am running Slackware 14.1. I've been using the fglrx proprietary driver. This is the relevant additional software I have compiled/installed:
vainfo looks like it should, I believe:
Code:
$ vainfo
libva info: VA-API version 0.34.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/va/drivers/fglrx_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.34 (libva 1.2.1)
vainfo: Driver version: Splitted-Desktop Systems XvBA backend for VA-API - 0.8.0
vainfo: Supported profile and entrypoints
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
In my xorg.conf file:
Code:
...
Section "Module"
Load "dri"
EndSection
...
Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
BusID "PCI:0:1:0"
EndSection
...
Section "DRI"
Mode 0666
EndSection
Section "Extensions"
Option "Composite" "Disable"
EndSection
X crashed when I tried playing x264 video (in a mkv container) using hardware acceleration with both vlc and xbmc. I took a look at the Xorg.0.log.old file, at the very end:
Code:
...
[ 281.156] (EE)
[ 281.156] (EE) Backtrace:
[ 281.156] (EE) 0: /usr/bin/X (xorg_backtrace+0x49) [0x81d6099]
[ 281.156] (EE) 1: /usr/bin/X (0x8048000+0x191ac4) [0x81d9ac4]
[ 281.156] (EE) 2: linux-gate.so.1 (__kernel_rt_sigreturn+0x0) [0xffffe40c]
[ 281.156] (EE) 3: /usr/lib/xorg/modules/amdxmm.so (0xb42ff000+0x4ef6) [0xb4303ef6]
[ 281.156] (EE) 4: /usr/bin/X (0x8048000+0x3151d) [0x807951d]
[ 281.157] (EE)
[ 281.157] (EE) Segmentation fault at address 0x3600001
[ 281.157] (EE)
Fatal server error:
[ 281.157] (EE) Caught signal 11 (Segmentation fault). Server aborting
[ 281.157] (EE)
[ 281.157] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 281.157] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 281.157] (EE)
[ 281.158] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 281.164] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 281.164] (II) fglrx(0): Backup framebuffer data.
[ 281.266] (II) fglrx(0): Backup complete.
[ 282.694] (EE) Server terminated with error (1). Closing log file.
I have just recompiled/reinstalled both vlc and xbmc (xbmc was dynamically linked to libva, so when I updated libva I had to recompile xbmc also):
vlc-2.1.2-i486-3alien
xbmc-12.3-i486-2_SBo
Let me know if I can provide more information or anything! Thanks a lot!!
|
|
|
01-28-2014, 02:46 AM
|
#2
|
Member
Registered: Apr 2010
Location: Cluj, Romania
Distribution: Debian Testing
Posts: 731
Rep: 
|
That libva of yours may not be compiled correctly. Your card knows many more decoding profiles. Libva uses only a subset of xvba (or vdpau in nvidia's case) and does it badly.
In any case, libva used with both nvidia and fglrx is just crap, i can tell you this from experience.
Xbmc has a branch (FernetMenta's) that uses native xvba (NOT via libva), its the only player that can do that AFAIK. But you have to use that specific branch (which is parked somewhere in the git), the main version doesnt have that feature because they went to support the OSS driver.
Better yet, and the best option for hw decoding on newer radeon cards (from 5xxx and up) is the radeon open source driver - it does hw decoding via vdpau, a method used by nvidia and its implemented in mplayer, xbmc and newer vlc (2.1 and up, but it has to be compiled in a certain way). But this driver is new and isnt mainstreram (maybe it is in cutting edge distros) , so you either have to find it packaged by others or compile yourself.
|
|
1 members found this post helpful.
|
01-28-2014, 03:15 AM
|
#3
|
Moderator
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
|
Quote:
Originally Posted by gradinaruvasile
Better yet, and the best option for hw decoding on newer radeon cards (from 5xxx and up) is the radeon open source driver - it does hw decoding via vdpau, a method used by nvidia and its implemented in mplayer, xbmc and newer vlc (2.1 and up, but it has to be compiled in a certain way). But this driver is new and isnt mainstreram (maybe it is in cutting edge distros) , so you either have to find it packaged by others or compile yourself.
|
To extend on that, for VDPAU using the open source driver you need at least kernel 3.10 (default in Slackware), but you better use a newer one to enable dynamic power management and some performance improvements, I recommend to go with at least 3.12. Furthermore you need libvdpau (compiled once before compiling Mesa and once afterwards), Mesa 10 (Slackware has 9.1 by default), compiled with --enable-vdpau (and when you are at it already also use --enable-texture-float to get OpenGL 3 support).
If you have done that you have to recompile your videoplayer with VDPAU support, I have tested that with MPlayer for now and it works fine with my HD6870 (sadly still no hardware support for my HD3200, where I really need it).
|
|
1 members found this post helpful.
|
01-28-2014, 05:17 PM
|
#4
|
Member
Registered: Aug 2012
Location: Kentucky, USA
Distribution: Slackware
Posts: 97
Original Poster
Rep:
|
Alright! Thank you both, it sounds doable! I think it might be worth the effort. I'll post back the results (if I remember...). Thanks again!
|
|
|
02-07-2014, 11:34 AM
|
#5
|
Member
Registered: Aug 2012
Location: Kentucky, USA
Distribution: Slackware
Posts: 97
Original Poster
Rep:
|
I just thought I'd post back to let you know that I have succeeded in transitioning to the radeon driver and in enabling VDPAU decoding!
I am using: - Linux kernel 3.13.1-smp
- xf86-video-ati from git 2/4/2014
- Mesa 10.0.2
- DRI drivers: r200, radeon
- Gallium drivers: r300, r600, swrast
- libvdpau 0.7
- glamor-egl 0.6.0
I tried using glamor (for 2D acceleration) but I never really got it to work properly. It loaded and X started without errors, but moving windows and updating text in xterm was slow. So I reverted to using EXA acceleration instead, and it works fine.
More information:
Quote:
$ glxinfo | grep OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD PALM
OpenGL core profile version string: 3.1 (Core Profile) Mesa 10.0.2
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 10.0.2
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
|
So, everything works now. I played Portal in Steam and found that the graphics were much more responsive than when I had used fglrx (maybe I didn't set up fglrx properly??). I played it with all the highest graphical setting without a problem, whereas with fglrx I had to set them all on the lowest settings to keep it from jerking too much. Also, hardware video decoding with VDPAU and x264 seems to work the way it should.
Thanks again!
|
|
|
02-07-2014, 11:50 AM
|
#6
|
Member
Registered: Apr 2010
Location: Cluj, Romania
Distribution: Debian Testing
Posts: 731
Rep: 
|
Quote:
DRI drivers: r200, radeon
Gallium drivers: r300, r600, swrast
|
You need no dri drivers ( --with-dri-drivers="" ) and only r600 and swrast from gallium. Your card uses only the r600 driver and swrast is there for software rendering/fallback.
Quote:
I played Portal in Steam and found that the graphics were much more responsive than when I had used fglrx (maybe I didn't set up fglrx properly??)
|
I dont know about Portal specifically, but some games like the Source-based ones had some really annoying jerkiness with fglrx that was gone with the radeon driver. It was a fglrx specific issue.
Quote:
Also, hardware video decoding with VDPAU and x264 seems to work the way it should.
|
Test in from the command line with mplayer:
Code:
mplayer -vo vdpau -vc ffh264vdpau,ffodivxvdpau,ffvc1vdpau,ffwmv3vdpau,ffmpeg12vdpau clipname
If it works, then you have vdpau. With HD clips you should have very low cpu usage (dunno how much on your cpu, on my A8-6500 i have ~3-5% with 1080p clips).
Quote:
I just thought I'd post back to let you know that I have succeeded in transitioning to the radeon driver and in enabling VDPAU decoding!
|
Well done.
Last edited by gradinaruvasile; 02-07-2014 at 12:17 PM.
|
|
|
All times are GMT -5. The time now is 11:38 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|