DirectShow base classes not found in windows 10 sdk


  • I needed streams.h and other related header files for my project so i googled for direct show, which is supposed to provide me with those. What I came up with is that DShow is now a part of windows sdk. So i downloaded 2.2 gb windows 10 sdk version 10.0.14393.33 (since i am running windows 10) and all in vain. There is no folder or file named Dshow in that sdk folder neither any header file named streams.h. 
    I tried the windows 7 sdk and it said said that "I am running a higher version of .net framework so cant install that sdk"... tried direct x sdk for DShow ...again no success... and now i am stuck up here with all doors closed. If someone could guide me, where exactly should i search for, to install direct show in my windows 10 and get requisite header files for the project. It would be a great help...
    Saturday, January 07, 2017 7:40 PM

All replies

  • You need Windows 7 SDK. If you cannot install it, you could possibly install on legacy OS system and copy from there, or extract from respective cabinet file. Or download from GitHub (see below) or another source.

    This question on StackOverflow provides with relevant links: How do I build a DirectShow filter with Visual C++ 5.0?

    It also has a GitHub link where you can find baseclasses folder with streams.h and friends, as well as legacy SDK samples.

    Saturday, January 07, 2017 7:45 PM
  • This is misleading. DirectShow runtime a part of operating system. What is known as "implementation of IGraphBuilder,  IMediaControl, IMediaEvent" interfaces does not even need SDK. Neither 7 nor 10. Both SDK versions have headers to interface to runtime services.

    What OP asks however is DirectShow base classes (streams.h and friends) and the question is stated correctly. Those were removed from Windows SDK 8 and more recent releases, as well as DirectShow samples (still referenced by MSDN). So you are incorrect writing that "DShow is in Windows 10 SDK". No they are not in Windows 10 SDK, this part of DirectShow development remains - in its latest version - in Windows SDK 7.1.

    Saturday, January 07, 2017 9:23 PM
  • Thank you very much... that did work for me. I have got streams.h and friends but when i run the visual studio 2015, it does't find that sdk instead allows only to chose between sdk 10 or 8.1... there is no option for 7....i searched and came to know that i need visual studio 2005 or 2008 to target sdk there any way around by which i could target this sdk for my visual studio 2015?
    Sunday, January 08, 2017 9:44 AM
  • Check projects settings and add additional directories (with your newly downloaded files) to look files for in. Win SDK 7.1 Base Classes are compatible with normal SDK includes of newer SDKs.

    Sunday, January 08, 2017 9:48 AM