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.

Media SDK 2012 and 2013 compatibility

jaybo_nomad
Beginner
273 Views

I have been using the (prebuilt) H.264 encoder and H.264 multiplexor from the 2012 SDK in a DirectShow graph which has worked fine on Win7 and Win8.  I'm now attempting to upgrade to the 2013 SDK and find that the graph fails to encode video after a few frames on Win7 but seems to work fine on Win8. I am certain that nothing else has changed other than installing Media SDK 2013.   Before diving deeply into the possible causes, I have a few questions:

  1. Should the 2013 SDK install cleanly over the 2012 SDK?  Is an uninstall of the 2012 SDK required?  Are any registry values potentally left behind which might adversely affect the 2013 components?
  2. My app is written in C# and uses the C# implementation of IConfigureVideoEncoder from this post: http://software.intel.com/en-us/forums/topic/311827 .  Is an updated definition of Params required for the 2013 SDK (i.e. did the binary interface change in 2013 for IConfigureVideoEncoder.SetParams() and hence my program will require a recompile?)
  3. I'm using the PRESET_BALANCED preset, and changing nothing else from the defaults except p.frame_control.width and p.frame_control.height.  Any known problems here?

Thanks, Jay

0 Kudos
3 Replies
Petter_L_Intel
Employee
273 Views

Hi,

1. You do not have to un-install Media SDK 2012 before installing 2013 release, but keep in mind that the DirectShow samples (pre-built binaries) that are packaged with Media SDK 2013 will replace the ones installed by 2012 release. Also, the Media SDK system PATH will be updated to point to Media SDK 2013 folder.

2. The Media SDK sample code is updated slightly for every release so it's possible the example C# interface you used may not be compatible anymore. Please explore the implementation to verify.

3. No known problems.

And as always, keep in mind that the DirectShow filters are samples, not intending to cover all cases. You may have to modify the source code to fit your needs.

Regards,
Petter 

0 Kudos
jaybo_nomad
Beginner
273 Views

To understand the different behavior I'm experiencing with the 2013 SDK, I've captured the output of tracer.exe with Per-Frame logging enabled.  This is  using 2013 SDK, but with no code changes from the version which works great with 2012 SDK.  The DirectShow graph is somewhat complicated with GMFBridge, but basically it's capturing live video (no audio stream), compressing to H.264, muxing with the H.264 mux and then directly to filewriter. 

The symptoms are that no video gets written to file, although the capture filter delivers 14 frames downstream successfully.  Log is attached.

0 Kudos
Petter_L_Intel
Employee
273 Views

Hi,

Unfortunately the Media SDK trace log does not tell me much, except that SW encode is selected during setup and that encoder is setup correctly, but then immediately closed by application.

I suggest rebuilding the DShow encoder sample and the use Visual Studio debugger to isolate where the issue occurs. That info and details about your pipeline will help us assist you in finding the root cause.

Regards,
Petter 

0 Kudos
Reply