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.

I get DXGI_ERROR_DEVICE_REMOVED with reason DXGI_ERROR_DRIVER_INTERNAL_ERROR

bitsmaker
Beginner
1,184 Views

Hello,

Currently in my company's product we use Ivy Bridge only and for all our encoding needs we have used the video conf pipeline example as our basis. I have begun testing Haswell and used the latest video conf pipeline sample as my guide again. It does work but we do not see the same level of performance as on Ivy Bridge.

I was Googling and came across the Intel sample simple_6_encode -d3d - lowlatency. This sample uses D3D11 whereas the media SDK 2014 video conf pipleline still uses D3D9. I decided that I would try to combine the D3D11 calls with my existing code. Every time I make a call to allocator.Lock (which calls simple_lock as used by simple_6_encode -d3d - lowlatency) I get the error DXGI_ERROR_DEVICE_REMOVED when simple_lock calls the deviceCtx->Map function. When I check for the reason code I get DXGI_ERROR_DRIVER_INTERNAL_ERROR. I should let you know that the encoding is synchronous and I attempt it @ 30FPS.

Should I not have combined the two? Is there a sequence of commands that must be followed that perhaps I am not? I would appreciate all the help I can get.

Thanks

0 Kudos
1 Reply
bitsmaker
Beginner
1,184 Views

After further investigation I realized that the simple_6_encode - d3d - lowlatency sample uses the file common_directx11.cpp which uses GLOBALS!!! I created a class to encapsulate the functionality in common_directx11 and removed the globals and got it to work.

0 Kudos
Reply