Diagnostic of missing hardware acceleration

Diagnostic of missing hardware acceleration


IMSDK has a software fallback mode that can be used if "mfxSession.Init(MFX_IMPL_HARDWARE_ANY, &version)" fails, that is to say if no Intel HD is available.

My problem is to give useful messages and guidance to the end user if hardware acceleration is not available.

1)if MFX_IMPL_HARDWARE_ANY fails, it can mean that Intel HD is present, but drivers are not up-to-date. What is the most reliable way to tell if an Intel HD (compatible with IMSDK) is present ? I could programatically query the Widnows Device Manager for any "Intel HD*" component, query some architecture version, then fetch ark.intel.com/search?q=Intel+HD and perform some analysis of the HTML result, based on my knowledge of the compatibility list.
Since Intel HD is embedded in many Core-i* processor, I can do the same kind of query (thanks to ark.intel.com) according to the CPU of the host machine.
However, it needs network access, seems not very reliable, and is far from "simple". What could be done instead ?

3)If no Intel HD is known by the Windows Device Manager, the reason may be that it is not enabled in the BIOS, because a dedicated video card is also installed. Some machines (like Dell Precision M4700) may not even provide a way to enable it in the BIOS (or at least I could not find it). What are the best practices to query useful information about such a feature ?


Pierre Chatelier

3 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione

Hi Pierre,

The process to detect if platform is capable of HW acceleration is, as you point out, not something Media SDK can fully determine by itself. There are many factors, such as:

1. Graphics driver exposing HW acceleration. The user must have a recent Intel graphics driver installed. You could potentially check for a specific version of the driver programmatically.
2. If you are using DirectX9 in your application, and the user has a discrete card installed, then you may have to prompt the user to physcally connect a monitor to the Intel Graphics device. Also consider the "switchable graphics" notebook platforms case. You can find more info on there topics in the Media SDK Developers Users Guide document.
3. Some OEMs disable (sometimes permanently) the Intel Graphics device in the BIOS. In that case the user will have to enable the device manually in the BIOS.


The plan is to release some source code in connection with the Media SDK 2014 release to help simplify the above process. Keep watching this space.

BTW. If you want automatic fallback on SW codec (when the platform or driver does not expose HW acceleration) the you should use MFX_IMPL_AUTO_ANY, not MFX_IMPL_HARDWARE_ANY.



>The plan is to release some source code in connection with the Media SDK 2014

Ok, I am looking forward to seeing that ! Until I see the new features, it seems I should not take too much time at developing the solution myself.


Pierre Chatelier

Lascia un commento

Eseguire l'accesso per aggiungere un commento. Non siete membri? Iscriviti oggi