Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Tristan_Y_
Beginner
45 Views

Encode RGB4 to JPEG

I implement a pipeline VPP + ENC. VPP converts RGB4 data to NV12 and ENC encodes NV12 to JPEG, and I put libmfxsw.dll in the same directory as the execution file. It works on the most of Intel graphic platform. But I have an old platform, its graphic is Intel HD Graphics 3000 and Intel Media SDK version is 1.4. If I call MFXInitEx() with MFX_IMPL_HARDWARE_ANY,  it failed when calling  mfxENC->QueryIOSurf() the error code is MFX_ERR_UNSUPPORTED.  If I call MFXInitEx() with MFX_IMPL_SOFTWARE, it failed  on calling mfxVPP->Init (), the error code is MFX_ERR_INVALID_VIDEO_PARAM. I found the Media SDK doesn't load the libmfxsw.dll  but load libmfxhw.dll. The libmfxhw.dll  locates at c:\Program Files(x86)\Intel\Media SDK\ .  If I remove the libmfxhw.dll then everything works fine. I also try to load libmfxsw.dll before calling MFXInitEx, it doesn't work.

How can I  force the SDK to  load the libmfxsw.dll even the Intel Media SDK is installed?

0 Kudos
1 Reply
Jiandong_Z_Intel
Employee
45 Views

Hi There,

Because of your platform and MSDK version is so old, it is hardly get support for each new version will be added new fixes.

By this issue, I think you may try to study mfx_dispatch, it is in charge the dll loading, and it is opensouce can be found in MSDK install direction.  

Help it can help.

 

Thanks,

Zachary

Reply