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.

Problem with DirectX 11 init

nadav
Beginner
673 Views

Hi,
I'm trying to use Intel Media SDK with DirectX 11 surfaces without success.
when i run the following code:
 mfxStatus sts = MFX_ERR_NONE;   
 mfxIMPL impl = MFX_IMPL_HARDWARE_ANY;
    mfxVersion ver = {0, 1};
    MFXVideoSession mfxSession;
    sts = mfxSession.Init(impl, &ver);
  MSDK_CHECK_RESULT(sts, MFX_ERR_NONE, sts);
    // Query selected implementation and version
    sts = mfxSession.QueryIMPL(&impl);
    MSDK_CHECK_RESULT(sts, MFX_ERR_NONE, sts);
    sts = mfxSession.QueryVersion(&ver);
    MSDK_CHECK_RESULT(sts, MFX_ERR_NONE, sts);
    printf("Implementation: %s , Version: %d.%d\n", impl==MFX_IMPL_SOFTWARE?"SOFTWARE":"HARDWARE", ver.Major, ver.Minor);
 // the result:
 //sts = MFX_ERR_NONE(0)
 //printf: Implementation: HARDWARE , Version: 1.3

- but when i change mfxIMPL to (use directx11 surfaces):
 mfxIMPL impl = MFX_IMPL_HARDWARE_ANY | MFX_IMPL_VIA_D3D11
 // the result is:
 //sts = MFX_ERR_UNSUPPORTED(-3) 

System details:

 Intel Media SDK System Analyzer (64 bit)
The following versions of Media SDK API are supported by platform/driver:

        Version Target  Supported       Dec     Enc
        1.0     HW      Yes             X       X
        1.0     SW      Yes             X       X
        1.1     HW      Yes             X       X
        1.1     SW      Yes             X       X
        1.3     HW      Yes             X       X
        1.3     SW      Yes             X       X
        1.4     HW      No
        1.4     SW      Yes             X       X
        1.5     HW      No
        1.5     SW      Yes             X       X
        1.6     HW      No
        1.6     SW      Yes             X       X

Graphics Devices:
        Name                                         Version             State
        Intel(R) HD Graphics 4000                    8.15.10.2712        08
        NVIDIA Quadro 2000                           8.17.12.9573        Active

System info:
        CPU:    Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
        OS:     Microsoft Windows 7 Enterprise
        Arch:   64-bit

Installed Media SDK packages (be patient...processing takes some time):
        Intel« Media SDK 2013 (x64)

Installed Media SDK DirectShow filters:
  Intel« Media SDK MP3 Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mpa_dec_ds.dll
  Intel« Media SDK JPEG Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\jpeg_dec_filter.dll
  Intel« Media SDK MPEG-2 Splitter :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mp2_spl_ds.dll
  Intel« Media SDK H.264 Encoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\h264_enc_filter.dll
  Intel« Media SDK MVC Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\mvc_dec_filter.dll
  Intel« Media SDK AAC Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_aac_dec_ds.dll
  Intel« Media SDK MPEG-2 Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\mpeg2_dec_filter.dll
  Intel« Media SDK MP4 Splitter :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mp4_spl_ds.dll
  Intel« Media SDK MPEG-2 Muxer :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mp2_mux_ds.dll
  Intel« Media SDK MP4 Muxer :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mp4_mux_ds.dll
  Intel« Media SDK H.264 Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\h264_dec_filter.dll
  Intel« Media SDK MP3 Encoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_mpa_enc_ds.dll
  Intel« Media SDK AAC Encoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\imc_aac_enc_ds.dll
  Intel« Media SDK MPEG-2 Encoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\mpeg2_enc_filter.dll
  Intel« Media SDK VC-1 Decoder :
    C:\Program Files\Intel\Media SDK 2013\samples\_bin\x64\vc1_dec_filter.dll

Installed Intel Media Foundation Transforms:
  Intel« Hardware VC-1 Decoder MFT : {059A5BAE-5D7A-4C5E-8F7A-BFD57D1D6AAA}
  Intel« Hardware H.264 Decoder MFT : {45E5CE07-5AC7-4509-94E9-62DB27CF8F96}
  Intel« Hardware MPEG-2 Decoder MFT : {CD5BA7FF-9071-40E9-A462-8DC5152B1776}
  Intel« Quick Sync Video H.264 Encoder MFT : {4BE8D3C0-0515-4A37-AD55-E4BAE19AF471}
  Intel« Hardware Preprocessing MFT : {EE69B504-1CBF-4EA6-8137-BB10F806B014}

is there any other way to use DirectX 11 surfaces ?
thanks,
Nadav.

 

0 Kudos
3 Replies
dr_asik
Beginner
673 Views

I recently asked a similar question. Intel MSDK "Direct3D 11" is really 11.1, so you need to be on Windows 8 for this to work.

0 Kudos
Anthony_P_Intel
Employee
673 Views

Yes, this is actually called out in the System Requirements section of mediasdk_release_notes.pdf document ("For Microsoft DirectX* 11 functionality - Microsoft Windows 8."), but we understand that this can be move visible.  Sorry for the confusion.

0 Kudos
nadav
Beginner
673 Views

Thanks for the info. i've tried with DirectX 9 and it worked. the documentation is indeed not clear enough...

 

0 Kudos
Reply