You are not logged in.

#1 2016-10-26 04:31:59

lp0101
Member
Registered: 2016-09-05
Posts: 9

[SOLVED] No hardware acceleration for videos

Hello,
I've just set up an HTPC for my 4k TV, and installed arch on it, running a GTX 950 and an Intel Pentium G3258 processor. Video playback is a problem, though, with even twitch.tv videos dropping frames, and 4k videos being completely unplayable. I've isolated this to hardware decoding not being used. Here is what I've tried to get it working:

I have tried installing both libva-vdpau-driver and libvdpau-va-gl, both without any different results.

The output from vainfo is:

libva info: VA-API version 0.39.3
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/nvidia_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.2)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG4Simple            :	VAEntrypointVLD
      VAProfileMPEG4AdvancedSimple    :	VAEntrypointVLD
      VAProfileH264Baseline           :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD

running

vdpauinfo | grep "Information string:"

gives me:

Information string: NVIDIA VDPAU Driver Shared Library  370.28  Thu Sep  1 19:18:08 PDT 2016

With a 4k video in mpv, I ran it with

--hwdec=vdpau --vo=vdpau

and

--hwdec=vaapi --vo=opengl

. I get the following output for vaapi



Playing: sample-Elysium.2013.2160p.mkv
 (+) Video --vid=1 (*) 'Elysium (2013) - Release for ULTRAHDCLUB' (hevc)
 (+) Audio --aid=1 --alang=eng (*) 'DTS-HD MA 7.1 - Blu-ray CEE' (dts)
File tags:
 Title: Elysium (2013)
libva info: VA-API version 0.39.3
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/nvidia_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
[ffmpeg/video] hevc: Invalid default display window
AO: [pulse] 48000Hz 7.1 8ch s16
[ffmpeg/video] hevc: Invalid default display window
Using software decoding.
VO: [opengl] 3840x1606 yuv420p10
AV: 00:00:00 / 00:01:02 (1%) A-V:  0.476 Dropped: 11

And this for vdpau

Playing: sample-Elysium.2013.2160p.mkv
 (+) Video --vid=1 (*) 'Elysium (2013) - Release for ULTRAHDCLUB' (hevc)
 (+) Audio --aid=1 --alang=eng (*) 'DTS-HD MA 7.1 - Blu-ray CEE' (dts)
File tags:
 Title: Elysium (2013)
[ffmpeg/video] hevc: Invalid default display window
[ffmpeg/video] hevc: Invalid default display window
AO: [pulse] 48000Hz 7.1 8ch s16
Using software decoding.
Using conversion filter.
VO: [vdpau] 3840x1606 yuv420p
[vo/vdpau] Compositing window manager detected. Assuming timing info is inaccurate.
AV: 00:00:00 / 00:01:02 (0%) A-V:  0.473

Audio/Video desynchronisation detected! Possible reasons include too slow
hardware, temporary CPU spikes, broken drivers, and broken files. Audio
position will not match to the video (see A-V status field).

For chrome, I have chromium-vaapi installed from the AUR, done through the maintainer's own repo, with the chromium-vaapi-other package.

Last edited by lp0101 (2016-10-26 16:08:18)

Offline

#2 2016-10-26 12:55:46

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: [SOLVED] No hardware acceleration for videos

vainfo doesn't list h265 or hevc , could you post vdpauinfo output ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2016-10-26 13:50:20

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] No hardware acceleration for videos

lp0101 wrote:

I have tried installing both libva-vdpau-driver and libvdpau-va-gl, both without any different results.

That's the worst thing you can do. Wrappers are bad. Baaaaaaaaaad.

When using the Nvidia driver all you need is libvdpau, the rest is provided in the nvidia-utils package. And VDPAU is all you get, there's no VAAPI (we're ignoring wrappers here, as I said above, they're baaaaad).

lp0101 wrote:

The output from vainfo is:

Since we'll be using VDPAU, vainfo is irrelevant, the output of vdpauinfo (you need to install it separately) is what's interesting.

That said, your output shows you're trying to play 10bit video. There's no 10bit support in VDPAU or in the Nvidia driver. So you're out of luck. VDPAU development seems to have stalled, so who knows when 10bit support will appear.

Offline

#4 2016-10-26 15:19:16

lp0101
Member
Registered: 2016-09-05
Posts: 9

Re: [SOLVED] No hardware acceleration for videos

Gusar wrote:
lp0101 wrote:

I have tried installing both libva-vdpau-driver and libvdpau-va-gl, both without any different results.

That's the worst thing you can do. Wrappers are bad. Baaaaaaaaaad.

When using the Nvidia driver all you need is libvdpau, the rest is provided in the nvidia-utils package. And VDPAU is all you get, there's no VAAPI (we're ignoring wrappers here, as I said above, they're baaaaad).

lp0101 wrote:

The output from vainfo is:

Since we'll be using VDPAU, vainfo is irrelevant, the output of vdpauinfo (you need to install it separately) is what's interesting.

That said, your output shows you're trying to play 10bit video. There's no 10bit support in VDPAU or in the Nvidia driver. So you're out of luck. VDPAU development seems to have stalled, so who knows when 10bit support will appear.

I see. Is there any hardware that has support for 10 bit decoding? This is all still within the return period, and with this being a 4k HTPC build, being able to actually play those formats is pretty important.

Offline

#5 2016-10-26 15:54:31

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] No hardware acceleration for videos

lp0101 wrote:

I see. Is there any hardware that has support for 10 bit decoding? This is all still within the return period, and with this being a 4k HTPC build, being able to actually play those formats is pretty important.

The problem is not the hardware, it's the software - vdpau and the Nvidia driver.

AMD Polaris cards (RX 460, RX 470 and RX 480) support 10bit with VAAPI, however no idea if it's actual 10bit or it's dithered down to 8bit for presentation. But even if it's dithered down, it's better than nothing.

Edit. I just remembered something: 10bit HEVC is supported on Nvidia using CUDA (it's not a CUDA decoder, it's just the CUDA interface being used to access the hardware decoder, instead of using the VDPAU interface). ffmpeg and mpv recently added support for that, particularly because VDPAU development is going nowhere, but currently it's quite tricky to build - you need to install nvidia-sdk and mess around with stuff. But the ffmpeg devs are working towards making this a lot easier, so no messing around will be required.

Last edited by Gusar (2016-10-26 16:12:12)

Offline

#6 2016-10-26 16:07:43

lp0101
Member
Registered: 2016-09-05
Posts: 9

Re: [SOLVED] No hardware acceleration for videos

Gusar wrote:

The problem is not the hardware, it's the software - vdpau and the Nvidia driver.

AMD Polaris cards (RX 460, RX 470 and RX 480) support 10bit with VAAPI, however no idea if it's actual 10bit or it's dithered down to 8bit for presentation. But even if it's dithered down, it's better than nothing.

Thank you smile Looks like I'll be returning the 950, and getting an RX 460 in its place.

Offline

#7 2016-10-26 16:15:56

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] No hardware acceleration for videos

lp0101 wrote:

Thank you smile Looks like I'll be returning the 950, and getting an RX 460 in its place.

Note the Edit I just did to my previous post. But if you still want to get an RX 460, that's fine too. Less messing around with it, due to AMD's open source efforts.

Offline

Board footer

Powered by FluxBB