Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add platform auto-detection for i965 and iHD drivers #280

Open
dvrogozh opened this issue Feb 21, 2019 · 5 comments
Open

Add platform auto-detection for i965 and iHD drivers #280

dvrogozh opened this issue Feb 21, 2019 · 5 comments

Comments

@dvrogozh
Copy link
Contributor

i965 and iHD drivers intersect for some platforms they can support. It worth adding auto-detection of the platform to avoid manually set LIBVA_DRIVER_NAME. Options:

  1. Implement a code in libva to detect the hardware and use the correct driver for it.
  2. Try drivers one at a time until a working one is found.

We need to count situation when both drivers will be installed.

@Brainiarc7
Copy link

Hey there,

This sounds like a precedent for nondeterministic behavior.
At some point, with such a change implemented, you'll have a deployment where the current libva driver name would change sporadically on upgrades, and that, as a default, is a precedent for failure.

Edge cases wherein an undesired driver is auto-selected for platforms such as engineering samples and uncommon vendor IDs (such as Intel's Kabylake-G that do not conform to nominal VAAPI device creation, see this ticket in FFmpeg for an example).

An ideal situation would be to allow for the instantiation of every VAAPI session with a driver name per node, as this patch-set does.

Mucking around with automatic driver detection in libva will only expose a greater maintenance burden downstream over time as more devices are introduced. Rather than allow that to be the case, let the user land applications, such as ffmpeg, libav, etc govern the creation of driver-specific VAAPI instances as needed:

  1. https://patchwork.ffmpeg.org/patch/13012/
  2. https://patchwork.ffmpeg.org/patch/13010/
  3. https://patchwork.ffmpeg.org/patch/13008/
  4. https://patchwork.ffmpeg.org/patch/13009/

@Brainiarc7
Copy link

An update: All these patches have been committed.

@rcombs
Copy link
Contributor

rcombs commented Oct 2, 2019

This functionality is probably going to be necessary long-term, as the i965 driver will apparently not receive support for newer hardware, so the current autodetection code (which always picks i965 and never iHD) will need some kind of change.

@driesmp
Copy link

driesmp commented Nov 16, 2019

I agree, the current situation doesn't lean towards installing the newer driver.

@driesmp
Copy link

driesmp commented Nov 19, 2019

Actually, I tink this is fixed by following commit: 09c8c2e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants