You are not logged in.
Hi everyone.
I'm on a Haswell based laptop (i7-4700MQ) and I am trying to use VA-API acceleration.
However, my owes start early...
I have installed:
libva-intel-driver 1.3.2-1
libva 1.3.1-2
and also some gstreamer and gst packages for vaapi.
However, simply running vainfo, get me this:
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/emgd_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
I googled around and didn't find anything really relevant, but I did find some clues - as far as I could tell, VA-API should be looking for the i965 driver, and not emgd.
So I tried working around the problem, like this:
LIBVA_DRIVER_NAME=i965 vainfo
Which got me a bit further, but still errors out:
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: User requested driver 'i965'
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_35
vainfo: intel_driver.c:88: intel_driver_init: Assertion `drm_state' failed.
[1] 1677 abort LIBVA_DRIVER_NAME=i965 vainfo
However, I have run out of ideas. I couldn't find anything relevant, neither on the wiki, nor on the forums... googling for the new error also turned out fruitless.
So... does anyone have any tips? Why is VA-API not looking for the correct driver in the first place? And why does i965 error out?
Also, for reference:
ls -l /usr/lib/dri/
total 1496
-rwxr-xr-x 1 root root 22616 Jun 20 16:17 dummy_drv_video.so
-rwxr-xr-x 1 root root 1504296 Jun 18 17:15 i965_drv_video.so
glxinfo |grep direct
direct rendering: Yes
Thanks in advance for any help you may provide.
Last edited by Stunts (2014-09-05 23:57:08)
Offline
Just a little bump. It's been one week, I suppose it's acceptable to do this now.
Offline
When using mplayer, use mplayer-vaapi instead for one. Maybe you are also having this problem also.
Last edited by nomorewindows (2014-07-28 00:42:34)
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
@nomorewindows:
Thanks for the reply. Unfortunately, the post you referenced seems to be an unrelated problem. Nowhere in any of my logs can I find any relevant reference to "irq_handler".
Also, I'm not even in a stage where I can start trying video players. Simply running vainfo is throwing errors... and worst of all for some reso it is looking for the pulsebo drivers, I hae no idea why, since I am on an Intel HD4600, which is using the i965 driver...
Offline
This is all I get when I run vainfo, and I don't have i965. Libva-intel has a driver for i965 and a dummy driver for everything else.
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i915_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Yes, that is what I was expecting to see:
libva info: Trying to open /usr/lib/dri/i915_drv_video.so
But I'm getting something related to the sorry pulsebo driver...
Could this somehow be related to the dual GPU? I also have an nVidia 740M card on this laptop... but it shouldn't interfere...
Offline
Nvidia has its' own implementation that is libvdpau and you can use mplayer for that, but mplayer-vaapi would be for the intel. But since you have both of them...
Last edited by nomorewindows (2014-08-04 21:29:21)
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
True... But turning on the dedicated GPU to play a video kind of defeats the purpose of lowering the overall fan noise...
This is why I really wanted to use intel's VA-API implementation...
Offline
Do something like mplayer to see if it really does anything. Might switch between mplayer and mplayer-vaapi to see what it does.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Do you have libva-vdpau-driver installed?
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Could there be some sort of incompatibility between VA-API and bumblebee or vgaswitcheroo? What are you using to switch between the embedded and the dedicated GPUs?
Offline
@nomorewindows:
I have tried with both libva-vdpau-driver installed and uninstalled. The result is the same. =-(
As for mplayer:
I tried the sintel trailer for testing (1080p) http://download.blender.org/durian/trai … lus_HD.mkv
Using mplayer, the video play fine and consumes about 40% of 1 CPU (according to htop).
Using mplayer-vaapi, the video is *very* choppy, and the CPU consumption is about the same as with "vanilla" mplayer.
@Pse
Let's see what we can get from here.
I am using bumblebee with bbswitch and the nvidia driver.
The bbswitch module is loaded, and the card is off by default:
francisco@VoidCaster [10:44:11] [~]
-> $ optirun --status
Bumblebee status: Ready (3.2.1). X inactive. Discrete video card is off.
Also, AFAIK, vgaswitcheroo is for ATI cards, right?
I also found this: https://bbs.archlinux.org/viewtopic.php?id=176831
But it's not quite the same, and what solved the problem for that user did not solve it for me...
Offline
This is very strange:
Running a live USB of Lubuntu 14.04.1 and installing the packages relevant for VA-API to work on intel, I can use video acceleration, and "vainfo" returns the expected information.
This means that this is either:
a) a config problem on my end (that I cannot seem to figure out);
b) an arch specific bug in my specific hardware, since so many users can use hardware acceleration;
That being said, anyone got any ideas on what might be amiss?
Offline
Do you have a ~/.driconf?
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
~/.driconf does no exist on my system.
I do have a ~/.drirc, but removing it does not fix the problem...
Offline
Does xrandr report anything interesting? Maybe you can glean something from Ubuntu, even though the modules aren't the same as Arch.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Here is the output of my xrandr:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 60.01*+
1400x1050 59.98
1280x1024 60.02
1280x960 60.00
1024x768 60.00
800x600 60.32 56.25
640x480 59.94
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
I'm not sure what I should be looking for here, or even what I should be comparing to Ubuntu...
Offline
That's only one card apparently. Dependning on which one is discrete. There is commands to parse to xrandr to show both cards as being providers as well as their sink status. xrandr --list-providers I think it is. When I've had dual setups there should show both providers, but mine would pick one or the other. So which ever one is active should be the one that you would be installing the va-api support for. I think you said that you previously had both of them working at the same time. I think I also read that i915 seems to be experiencing a performance lag as of later kernels. It also looks like you may have multiple connectors on just this one card (whichever one it is). It would be easier to connect monitors on the same card if possible, because multiple different cards are harder to configure correctly.
Last edited by nomorewindows (2014-08-29 03:17:46)
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Ok, so here is something new:
After realising that google was not helping me, I decided do give DuckDuckGo a go (pun intended).
And it got me somewhere new.
Running:
sudo vainfo
Will make everything work! I don't even need to export any variables.
I will use this clue to dig further and report back.
Offline
Is your user in the video group? I think this has been possibly changed since systemd came along, but you might add your user to the video group.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
It was the first thing I tried.
I was not. Added myself to that group, and rebooted. Still not working. I am now finding that I was not the first with this issue in these boards, but no one found a solution so far...
Still researching.
Offline
Ok, so this all boils down to:
$XDG_RUNTIME_DIR
If this variable is set, vainfo fails miserably.
If I unset this variable (unset XDG_RUNTIME_DIR), vainfo runs fine as a user.
Before unsetting the variabale,
echo $XDG_RUNTIME_DIR
/run/user/1000
I feel like I am getting to the bottom of this.
What does it show on your system?
Offline
Nothing changes for me, of course I don't have i965 hardware either, just i915.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
Running strace on vainfo, with the variable set and unset gives me a suspicious line that is different:
connect(3, {sa_family=AF_LOCAL, sun_path="/run/user/1000/wayland-0"}, 27) = 0
connect(3, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
Naturally the line that mentions wayland is the one that is *not* working...
Offline
OMG...
If I run vainfo under gnome-shell, everything works...
It's only under E18 that vainfo is not working.
I'm going to consider this [solved], and I have opened a bug report on enlightenment's phabricator (https://phab.enlightenment.org/T1635).
Offline