Hardware Transcoding - Linux - artefacts

@Achilles said:
Intel had some notes for vaapi driver 1.8.0 that improves quality for Broadwell and Braswell H264 QSV encoding. I don’t know if Intel will go back further to Sandy Bridge, Ivy Bridge and Haswell and improve the drivers for QSV on those older generation CPUs.

Braswell is my CPU, I think that under Ubuntu 16.04 LTS you usually just get 1.7.x intel driver. I updated my box to 16.04LTS+HWE so now I should be able to update graphics driver to a later version having updated kernel and X, but if intel driver installation tools just checks Ubuntu version there would be no luck until 18.04 is out. Apparently users of 17.10 don’t have the same issues as 16.04 users. And last time I tried to update graphics driver with intel tool I got an error regarding online database.

@zpaolo11x said:

@Achilles said:
Intel had some notes for vaapi driver 1.8.0 that improves quality for Broadwell and Braswell H264 QSV encoding. I don’t know if Intel will go back further to Sandy Bridge, Ivy Bridge and Haswell and improve the drivers for QSV on those older generation CPUs.

Braswell is my CPU, I think that under Ubuntu 16.04 LTS you usually just get 1.7.x intel driver. I updated my box to 16.04LTS+HWE so now I should be able to update graphics driver to a later version having updated kernel and X, but if intel driver installation tools just checks Ubuntu version there would be no luck until 18.04 is out. Apparently users of 17.10 don’t have the same issues as 16.04 users. And last time I tried to update graphics driver with intel tool I got an error regarding online database.
PMS however apparantly uses whatever version Plex is packaging with it under Linux. I think we just need to wait and see what the developers deem stable to update vaapi to.

@Achilles said:
PMS however apparantly uses whatever version Plex is packaging with it under Linux. I think we just need to wait and see what the developers deem stable to update vaapi to.

Oh that’s good to know, but does this extend to the driver too? I mean, can you package a driver in your application?

With Linux yes.

To clarify.

The Intel i915 kernel driver is required. Most kernels provide this already but select vendors do not.

libvaapi, the equivalent of a Windows DLL, provides the API for applications such as PMS to manipulate it.

@ChuckPA said:
To clarify.

The Intel i915 kernel driver is required. Most kernels provide this already but select vendors do not.

libvaapi, the equivalent of a Windows DLL, provides the API for applications such as PMS to manipulate it.

Ok, I got it. So if I understand it correctly, PMS is packaging the “latest and greatest” libvaapi, but it’s using it to manipulate the kernel provided i915 driver? Or is PMS packaging both? When libvaapi 2.0 is released PMS will package it, but will it work on, say, Ubuntu 16.04LTS without the mainstream kernel (4.10)?

Yes, libvaapi speaks directly to the i915 driver in the kernel.

libvaapi is packaged with PMS.

When version 2.x is finally released, if your kernel still has the i915 driver in it, still have a compatible GPU which presents itself in /dev/dri, you’ll be good to go :slight_smile:

@ChuckPA said:
Yes, libvaapi speaks directly to the i915 driver in the kernel.

libvaapi is packaged with PMS.

When version 2.x is finally released, if your kernel still has the i915 driver in it, still have a compatible GPU which presents itself in /dev/dri, you’ll be good to go :slight_smile:

Thanks @ChuckPA :slight_smile:
just have to wait.

@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

@Achilles said:
@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

Thank you @Achilles and @ChuckPA , luckily my CPU is Braswell, so I’ll just have to wait and hope it’s out soon :slight_smile:

@Achilles said:
@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

Exact, just have to ~~wait ~~ pray :slight_smile:

@Achilles said:
@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

wow, srsly?
can you link the source? thanks

there aren’t even decent broadwell desktop CPUs (only 1 high-end, with IRIS). I have haswell, looks like I have to update to kaby or coffee lake, ffs…

@LSL1337 said:

@Achilles said:
@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

wow, srsly?
can you link the source? thanks

there aren’t even decent broadwell desktop CPUs (only 1 high-end, with IRIS). I have haswell, looks like I have to update to kaby or coffee lake, ffs…
Releases · intel/intel-vaapi-driver · GitHub

@Achilles said:

@LSL1337 said:

@Achilles said:
@“maxime.wantiez” Please keep in mind that on Intel’s Github for VAAPI they have only gone back as far as Broadwell and Braswell to improve h264 encoder quality in vaapi 2.0. They have not noted any further QSV encoder improvements for Sandy Bridge, Ivy Bridge or Haswell.

wow, srsly?
can you link the source? thanks

there aren’t even decent broadwell desktop CPUs (only 1 high-end, with IRIS). I have haswell, looks like I have to update to kaby or coffee lake, ffs…
Releases · intel/intel-vaapi-driver · GitHub

thanks for the link
“Improve the quality of the H264 encoder on BDW/BSW”
For me it means, that the 2.0 version does this, but down the line they could do HASWELL as well.
Am I wrong?
haswell is not that old

Its 4th gen Core and we now have 8th gen. How old it is depends on whose perspective. You can always open an issue on github to request they improve it.

@Achilles said:
Its 4th gen Core and we now have 8th gen. How old it is depends on whose perspective. You can always open an issue on github to request they improve it.

Haswell / 4th gen , 2013
Broadwell / 5th gen, 2014/2015
Skylake / 6th gen, 2015
Kaby Lake / 7th gen, 2016/2017

etc

Haswell is over 4 years old now… That is old for a CPU and long for new significant development of features.

@lazybones said:

@Achilles said:
Its 4th gen Core and we now have 8th gen. How old it is depends on whose perspective. You can always open an issue on github to request they improve it.

Haswell / 4th gen , 2013
Broadwell / 5th gen, 2014/2015
Skylake / 6th gen, 2015
Kaby Lake / 7th gen, 2016/2017

etc

Haswell is over 4 years old now… That is old for a CPU and long for new significant development of features.
Don’t forget Coffee Lake / 8th gen 2017

@lazybones said:

@Achilles said:
Its 4th gen Core and we now have 8th gen. How old it is depends on whose perspective. You can always open an issue on github to request they improve it.

Haswell / 4th gen , 2013
Broadwell / 5th gen, 2014/2015
Skylake / 6th gen, 2015
Kaby Lake / 7th gen, 2016/2017

etc

Haswell is over 4 years old now… That is old for a CPU and long for new significant development of features.

Broadwell is non existent on desktop, so If I bought a desktop 2 years ago in the summer, I would have used haswell, so…

people who built PC’s 2 years ago have obsolete tech?..
imho haswell is not that bad, broadwell was not relevant, skylake was good, but it’s barely 2 years old…

@LSL1337 said:

Broadwell is non existent on desktop, so If I bought a desktop 2 years ago in the summer, I would have used haswell, so…

Well you do have a point there, and Intel has commented that may have been a mistake.

Regardless of when you bought it, Haswell was designed and released over 4 years ago. The silicon design of that processor has its limits—intentionally or unintentionally. Hardware erratas that can be resolved by software workarounds are usually always resolved under Windows quickly. If you are interested in getting Intel to resolve issues with 1st, 2nd and 3rd Gen QSV under Linux—open an issue on github with them.