Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

MFX_ERR_DEVICE_FAILURE on MFXVideoSession::SyncOperation

Nick_K_2
Beginner
335 Views

Hi,

I have build an encoding pipeline integrated with ffmpeg for muxing into MP4 container in a similar fashion as the ffmpeg integration sample. Overall all works but with some issues. Very often the app experiences MFX_ERR_DEVICE_FAILURE error after which encoding no longer works when calling MFXVideoSession::SyncOperation when synchronizing for getting the bitstream data. The error lacks any pattern but there are a few things I have noticed:

1. The first machine on which I see this is having Nvidia card as primary adapter to which display is connected. There is no display connected to the Intel card. Encoding works and sometimes will die with the above error.

Async depth is 4 ( reducing to 1 does not change anything ). If I allocate more surfaces than SDK suggests on sync it will block and never end instead of firing the above error. This is an i7 3rd generation desktop ( Windows 8.1 ). The error happens only when using byte arrays to provide samples to SDK. If I switch to D3D11 all works with no problems.

2. On another machine with just one Intel card it will fire the error right on start. It is an i5 3rd generation laptop ( Windows 8.1). Fails when using D3D11 or byte arrays.

3. On another i5 3rd generation laptop ( Windows 7 ) it works with no issues but takes huge amount of CPU. Data is exchanged via byte arrays and no D3D is used.

Any ideas what can it be? I saw a similar thread: https://software.intel.com/en-us/forums/topic/532078 ( slightly different though ) with no positive outcome so far.

Best Regards,
Nick

 

0 Kudos
3 Replies
Bjoern_B_Intel
Employee
335 Views

Hi Nick,

To me it looks like you are using three different MS-Windows platforms/configurations. Narrowing down the problem and reproduce the problem locally we need to have the platform configuration of each system you are using. The easiest way to obtain that information is to run “mediasdk_system_analyzer_64.exe” in a dos-shell and pipe the output into a log-file. You will find the program typically under “C:\Program Files\Intel\Intel(R) Media Server Studio 2015 R4\Software Development Kit\tools\mediasdk_sys_analyzer”.

Can you please share those log-files with me?

Best Regards,
Bjoern

 

0 Kudos
Sravanthi_K_Intel
335 Views

For case (1), where NVidia is primary and iGfx is not connected to a monitor - this is a Microsoft D3D impl, not MSDK issue. D3D9 required a monitor attached to Gfx for it to be visible at SDK layer. In D3D11, this requirement was removed and the SDK can see both dGfx and iGfx.

For case (2), it is using HW implementation with D3D11 and looks like the feature is either not supported or was not used correctly in this config. (Can you give some information on the application you developed? If you can reproduce the error using our samples or tutorial examples, that will help us debug the issue. Without this, we can only venture a guess).

For case (3), From your explanation, looks like the SW implementation is used and not HW - that could be the reason why the application is working. Again, without understanding the the SDK setup/init you used, params and pipeline (reproducer code with samples/tutorials in effect), we can only venture a guess.

0 Kudos
Sravanthi_K_Intel
335 Views

Bjoern and I responded in parallel! Yes, as Bjoern mentioned, the sys analyzer output for all the configurations will be highly useful. Please provide them as well.

0 Kudos
Reply