Hardware Transcoding - Linux - artefacts

Hello, i updated the plex server on docker :slight_smile:

and i still have really bad quality : (many artefacts )

Ubuntu 16.04 / Intel Core i7-2630QM (2.0 GHz) / HW transcoding activated and running

something to update ?

Some logs :
“[services.d] starting services
[services.d] done.
Starting Plex Media Server.
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/plexmediaserver/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-87218f6/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/plexmediaserver/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-87218f6/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/plexmediaserver/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-87218f6/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0
Connection to 178.79.148.211 closed by remote host.
Connection to 178.79.186.187 closed by remote host.
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/plexmediaserver/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-87218f6/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0
libva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/plexmediaserver/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_40
failed to open /data/jenkins/pms-deps-universal-v2/BUILD_TAG/linux-ubuntu-x86_64/output/pms-depends-linux-ubuntu-x86_64-release-87218f6/lib/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0”

Log files please? Screenshots don’t provide anything actionable

Please also provide OS and other hardware information

@ChuckPA
i was editing my post :slight_smile: do you need more logs ?

Sorry about that! :slight_smile:

Thanks. I won’t need any additional information. The artifact problem is most likely due to the limitations of CPU/GPU.

To confirm I will need the XML of what you’re playing .

@ChuckPa said:
Sorry about that! :slight_smile:

The artifact problem is most likely due to the limitations of CPU/GPU.

To confirm I will need the XML of what you’re playing .
XML attached.

Can be fix with a futher version of VA-API driver or definately dead ?
thanks

EDIT : same issues with 1080p movie :frowning:

EDIT 2 : 1080p xml attached

Maxine,
When Intel releases 2.0.0 of libvaapi, POSSIBLY ??. Nothing is known until we can actually try it.

As per the artifacts you’re seeing. XViD is the issue. It’s blocky to begin with and definitely not helping any. Hardware transcoding is making it worse. The bitrate is only 1.1 Mbps.

@ChuckPA said:
Maxine,
When Intel releases 2.0.0 of libvaapi, POSSIBLY ??. Nothing is known until we can actually try it.

As per the artifacts you’re seeing. XViD is the issue. It’s blocky to begin with and definitely not helping any. Hardware transcoding is making it worse. The bitrate is only 1.1 Mbps.

Thnaks. It’s clear


1/ There is a way to test to test 2.0.0 of livaapi or it’s closed source ?
2/ There is a way, it’s the same issue for all linux user, to disable HW transcoding for all low biterate file ?

On hight biterate, it seems to working.

thnaks

@“maxime.wantiez” You can download it from Intel’s VAAPI github.

I also just tried this new feature transcoding a HEVC video. It indeeds looks very badly, while with software transcoding it looks good. My cpu is a i3-2100, which is the first version that supports quick sync. I assume the quality was still suboptimal back then. Maybe they should just not allow it on that version.

@mouse256 said:
I also just tried this new feature transcoding a HEVC video. It indeeds looks very badly, while with software transcoding it looks good. My cpu is a i3-2100, which is the first version that supports quick sync. I assume the quality was still suboptimal back then. Maybe they should just not allow it on that version.

Or you could turn off the option to use HW transcoding ?

For supplemental information

https://support.plex.tv/hc/en-us/articles/115002178853-Using-Hardware-Accelerated-Streaming

@Achilles said:
@“maxime.wantiez” You can download it from Intel’s VAAPI github.

i launched the autogen.sh and i have :

configure: error: Package requirements (libva >= 1.0.0) were not met:
Requested ‘libva >= 1.0.0’ but version of libva is 0.40.0
Something else to do ?

@ChuckPA said:
For supplemental information

https://support.plex.tv/hc/en-us/articles/115002178853-Using-Hardware-Accelerated-Streaming

no mention of linux limitation ^^

Maxine,
So I can track along with you, autogen from what ?

You will need to download libva 2.0.0.pre2 as well

@Achilles said:
You will need to download libva 2.0.0.pre2 as well

Thanks for your help
I install on the host Ubuntu : vaapi-test : Wolfgang Schupp
Libva 2.0.0.pre2 and libva2

Vainfo seems to be break (something’s else Todo ?)

ibva info: VA-API version 0.40.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so has no function __vaDriverInit_0_32
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit

Thanks :slight_smile:

@ChuckPA said:
Maxine,
So I can track along with you, autogen from what ?

It’s the autogen file in the vaapi’s githup :slight_smile:
I’m trying to update vaapi’s driver in order to test if HW transcoding can be usefull on Linux server (my case)

There is nothing more I can help with.
Have you reviewed? https://support.plex.tv/hc/en-us/articles/115002178853-Using-Hardware-Accelerated-Streaming

vaapi 2.0.0pre is untested with PMS. Nothing can be done with it until official release.

Updating libva, vaapi and vainfo is outside the realm of Plex. You will be better off suited to ask how to on the Ubuntu support forums.

@maxime.wantiez said:

https://support.plex.tv/hc/en-us/articles/115002178853-Using-Hardware-Accelerated-Streaming

no mention of linux limitation ^^

In a past thread it was pretty clear that these artifacts are indeed a Linux limitation: a user tried with the very same hardware and PMS in Windows and Linux, Windows was clear, Linux was blocky. Sadly it seems we are left to wait until there’s an update of the libraries.

EDIT Found the reference: http://forums.plex.tv/discussion/comment/1505812/#Comment_1505812