The MediaSDK and its samples are developed and validated using C++. We have little or no experience using managed DirectShow, or using C# with our filters. The idea does sound compelling. If you get it working please share with the rest of us on the forum.
The filters implement their properties through the IConfigureVideoEncoder interface GetParms(), SetParams(). How these map to your environment is unclear from this side.
Does anyone out there reading this have any experience with this? Please speak up and help Martin out.
You are right, I used newer guid,weswitched to this one recently. We will either mention this in documentationo roll back changes, to maintain backward compatibility, so please check that again when new Mediasdk package will be available.
since c# doesnt support structures inheritance you may declare parent structure Params as a first member of H264Params structure.
Actually as i mentioned interface that you are using changed, together with its guid, so in my first post you can see how it will look like in Beta5, there won't be any structures inheritance, as well as IConfigureH264Encoder interface.
I'm attaching whole c# console class that works, i checked that such layout of c# H264Params structure normally marshaled to unmanaged code and back.
\beta4\samples\sample_dshow_plugins\video_enc_filter\src\mfx_video_enc_filter.cpp line : 1030
hr = m_pGraph->QueryInterface(IID_IFilterGraph, (void**)&pGraph);So you may comment this line and rebuild/register h264 encoder filter, and see whether it helps.