You can uninstall codecs with the constrol panel's add/remove programs. Or use regsvr32 /u [PATH_TO]/codecname.ax But you should really test with a fresh OS. You can easily create one with a VM...
Hi, Your problem is probably linked to your machine's installed codecs, not DirectShow. You should try your app on a fresh installed OS with minimum (or no) codecs installed. Never use Codec packs...
Hi, There is no API i'm aware to detect if a camera device is already in use. Prior, Windows 10 Anniversary Update, if a such device was in use, you had an error code during the graph building but now, Microsoft make changes in the OS that allow camera sharing. So a graph building should always be successful, even when another application already use the camera.
Interfaces provided by MFLib is just a very thin managed layer over the related COM objects From the CLR point of view, the sole purpose of these interfaces is to provide RCWs, not less and not more. A better implementation is possible but require lots of work. You could check SharpDX for exemple...
Starting Windows XP, the default video renderer is the VMR7 filter. It's a quite old renderer that internally use DirectDraw 7. This filter is dependent on the hardware (video card driver) so your problem can be rooted by an unsupported driver feature... IMHO, VMR9 should be the bare minimum renderer to use and you should use EVR as a norm for all your applications...
Hi, m_pProvider is an IServiceProvider object. To get in instance of IWMWriterAdvanced2 you must use the IServiceProvider.QueryService method (a C# cast don't work). Check this sample (on the bottom of the page) : https://docs.microsoft.com/en-us/windows/win32/wmformat/wm-asf-writer-filter
Just my two cents... Is it possible to test the filters connection using GraphEdit (or one of its clone) ? ffdshow is largely out-dated and a dead project ! If it's possible for you, try the LAV filters instead (also based on ffmpeg). The community behind it is much more active. Also, when you write "I need to show the video in IE", does this means that you are writing an add-in for IE ???
The first thing you must check is the maximum surface size supported by your hardware. Some old GPU or drivers are limited to 2048 or 4096 so they can't hold an uncompressed 4K frame. You can see that with the DirectX Caps Viewer (DXCapsViewer.exe) from the DirectX SDK (June 2010). Of course, that is a thing that must be checked by your custom allocator ! Regarding the DXVA support, probe it using DXVAChecker ( https://bluesky23.yukishigure.com/en/DXVAChecker.html ). With that tool, you can see what...