17

I'm trying to choose between these two APIs for a Video Capture/Monitoring/Streaming application, and I'm not sure which is going to be the best bet.

A bit of background:

  • I need it to work with a wide range of video capture cards/dongles.
  • The app will likely be developed in C++ so a native API is essential
  • Performance is important, as I need to handle multiple video streams

A bit of googling has given me the impression that

  • MF only supports video capture on Win 7
  • Directshow is better supported , but will become obsolete
  • MF can offer better performance in some applications

MF feels a better bet going forwards, but I'm concerned about ending up in a technological dead-end if MF doesn't 'catch on' and Directshow remains the API of choice. Suggestions and advice, please...

casperOne
  • 73,706
  • 19
  • 184
  • 253
Roddy
  • 66,617
  • 42
  • 165
  • 277
  • Just a minor point, I read that MF support is "on Windows Vista and later" – FruitBreak Jun 25 '14 at 13:26
  • 1
    @FruitBreak - Not for video capture, AFAIK: http://msdn.microsoft.com/en-gb/library/windows/desktop/dd317912(v=vs.85).aspx – Roddy Jun 25 '14 at 19:19
  • Thanks @Roddy, yes you are right: "In Windows 7, Microsoft Media Foundation now supports audio and video capture. " – FruitBreak Jun 26 '14 at 09:34

1 Answers1

23

Whatever marketers from MS say, DirectShow is here to stay. Too many applications use it, so MS will support it forever, just as all other COM-based technologies. And since DirectShow has much more features and is native for C++ programming, I suggest sticking with it.

Dee Mon
  • 1,016
  • 6
  • 7
  • 2
    Spot on. Also, OP might consider that MF isn't available on XP, so if it's a requirement to support that OS, then the decision is easy. – kidjan Dec 21 '10 at 18:53
  • 7
    Have the things changed in favor of Media Foundation recently? Especially since Windows 10 has been released? – VuVirt May 13 '18 at 12:35
  • 1
    @VuVirt [No](https://social.msdn.microsoft.com/Forums/en-US/e8e44bd7-40c3-4cf1-acf5-f75836efac8b/c-developing-media-application-directshow-or-media-foundation-or-?forum=vcgeneral). DirectShow 4 life. – KeyC0de Sep 28 '21 at 18:38
  • 1
    @VuVirt Yes, DXVA 2.0 is only supported on MF, as are most new hardware accelerated codecs such as NVENC. MF also supports dedicated QOS which Dshow does not. It also has better integration with DX12 and DX11, which again... Dshow does not. – Mgetz Nov 16 '21 at 17:55
  • Would appreciate if someone can provide a new update to this question – EGN Sep 29 '22 at 16:14