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.

Intel Hardware Encoder/Decoder MFTs

Carl_P_
Beginner
1,057 Views

Hi,

I am trying to use Intel Hardware Encoder/Decoder MFTs in our project and in topoedit. But both application throws an error regarding:
"The current GRL on the machine does not meet the minimum version requirements".
MFGetMFTMerit @ Merit validation failed for MFT @06A42CA0 (hr=C00D715F MF_E_GRL_VERSION_TOO_LOW)

What does GRL stand for and what does it mean? not much information on the web...

Graphics: HD4000, driver version: 9.18.10.3165

best regards, 

Carl

0 Kudos
6 Replies
OTorg
New Contributor III
1,057 Views
0 Kudos
Anthony_P_Intel
Employee
1,057 Views

Hi Carl,

GRL stands for "global revocation list" and it is something that is used for Protected Media Path (PMP).  When playback of some types of (premium) protected media is executed, the entire code path must be protected.  (Best place for information is to search MSDN for "Media Foundation GRL")

Are you only seeing this issue when using specific content, or is it always observed?

If it is the latter, can you provide some more information on the environment?  What sepcific OS?  What monitor/display?  

Are you referring to the production/certified " Intel Hardware Encoder/Decoder MFTs " that are part of the Intel Graphics drivers, or are you trying to use the Samples from the Intel Media SDK which are only intended to demonstrate basics of how you can write create your own MFTs ?

0 Kudos
Carl_P_
Beginner
1,057 Views

Hi Tony,

I am refering to the production/certified MFT. We have installed the latest graphics/motherboard drivers and
are currently running Windows 7 with latest updates on a Intel(R) Core(TM) i7-3770K CPU, HD-4000.

We are actually trying the run a simple Reader-Writer (transcoder, VC1 -> H264) in Media Foundation. The source data (VC1) is captured with our own equipment, so no "premium protected content" or similar is used.

Looking at the MediaFoundation trace log we can see that a hardware MFT is enumerated and created

CoCreateInstance @ Created {4BE8D3C0-0515-4A37-AD55-E4BAE19AF471} Intel® Quick Sync Video H.264 Encoder MFT (c:\Program Files\Intel\Media SDK\mfx_mft_h264ve_w7_32.dll)
MFGetMFTMerit @ Merit validation failed for MFT @06A42CA0 (hr=C00D715F MF_E_GRL_VERSION_TOO_LOW)

The decoder used seems to come from:
CoCreateInstance @ Created {82D353DF-90BD-4382-8BC2-3F6192B76E34} WMVideo Decoder DMO (C:\Windows\System32\wmvdecod.dll)

We provide a IDirect3DDeviceManager9 pointer MediaFoundation when creating our source reader + sink writer according to the documentation.
It's rather strange that MF wants to use a protected media path. Are we supposed to pass some encoder params to disable this type of behavior? Any ideas?

Or do we need to make sure Intel® Quick Sync Hardware VC-1 Decoder is used instead of the above?
So our case looks like: Intel® Quick Sync Hardware VC-1 Decoder -> Processing -> Intel® Quick Sync Video H.264 Encoder

Standard monitor with DVI cable is used.

best reagrds,

Carl

0 Kudos
Anthony_P_Intel
Employee
1,057 Views

Hi Carl,

Thank you for the detailed information.  I believe our expectations are the same as yours in this case.  We will continue to try to reproduce what you are seeing.  Thank you for your patience while we investigate.

0 Kudos
Carl_P_
Beginner
1,057 Views

Hi Tony,

Do you have any updates on this issue? We are still failing on the merit validation deep down in Media foundation.
Just to be clear we are using the IMFSourceReader and IMFSinkWriter interface to do this. So we are not using an TranscodeTopology, IMFTranscodeProfile and IMFMediaSession. As I understand, these two approaches are nearly the same.

best regards,

Carl

0 Kudos
Anthony_P_Intel
Employee
1,057 Views

Hi Carl,

I'm sorry I hve not been able to reproduce what you are doing here, but it sounds very simular to what we are doing in our Windows 8 UI (WinRT) sample code (see "sample_win8ui_transcode" in samples directory).

I will ask for some help looking into this.  Sorry it is taking so long.

0 Kudos
Reply