DirectShow (Stream.h) for Windows 10 Development - c++

I just noticed that streams.h is missing, while I was compiling DSVideoLib on my machine.
A quick research pointed me to the Windows SDK.
https://msdn.microsoft.com/en-us/library/windows/desktop/dd407279(v=vs.85).aspx
Well after installing the windows sdk again, I still cannot find those files and folders in my windows sdk folder.
Does anybody have an idea where to get the DirectShow library on windows 10?

Streams.h and and other BaseClasses directory files can be found in Windows SDK 7.1, in \Samples\multimedia\directshow\baseclasses. This also looks like a good snapshot to grab.
See also (actually proves that taken out from Windows SDK 8.0, the code in question was never put back later):
Where are the DirectShow samples in the Windows 8 SDK?
Getting DirectShow Samples on Windows 8
DirectShow samples and base classes relocated
https://stackoverflow.com/questions/31657925/locations-of-windows-sdk-samples-in-windows-8-1
There is nothing bad in taking "old" DirectShow sample/base code because there has been so little changes over last 10+ years...

Related

Is Intel OpenCL SDK available for Windows 11?

I want to run some C++ on my Laptop GPU with Windows 11. I saw in the Internet that I need the Intel OpenCL SDK. I tried to download it, but I got a warning that it's only recommended for Windows 10. I still continued with the installation, but i can't find all the C++ header files. Is that because I use Windows 11 or is there another reason for this?
I thought that the Download would contain all the OpenCL header files and so on.
You don't need the Intel OpenCL SDK for OpenCL development. All you need is the graphics driver, which probably is already present, and the OpenCL header files. For how to set it up in a Visual Studio Community project, see here; this works for Intel/AMD GPUs too, and on both Windows 10 and 11.

where can I find the project to build DirectShow BaseClasses?

I am working on a software product that goes waaaay back. Part of our source code is a project that builds baseclasses. This is supposedly a project that ships with the Windows SDK and is used for developing apps that reference DirectShow.
Unfortunately the version we have checked in to our repository is out of date and issues many warnings when we build (all related to warning C4996: 'GetVersionExW': was declared deprecated).
Personally, I cannot find any information about how to find the newest (or indeed any) version of this little nugget of Windows goodness. As recently as a few days ago Microsoft Learn published a tutorial about this very topic (https://learn.microsoft.com/en-us/windows/win32/directshow/directshow-base-classes). But, it is essentially useless.
For example, if I click here: https://learn.microsoft.com/en-us/windows/win32/directshow/using-the-directshow-base-classes it tells me:
The base class library is provided as a SDK sample in the Microsoft
Windows Software Development Kit (SDK)
(https://go.microsoft.com/fwlink/p/?linkid=62332). The exact location
depends on the version of the SDK that you have installed, but the
relative path is:
(SDK samples root)\DirectShow\BaseClasses
I have Visual Studio 2022 installed and there is no such path in its directory tree, nor in C:\Program Files (x86)\Windows Kits. However, if I click on the link quoted, it sends me to a page that basically tells me that all I need to do to get the Windows SDK is download Visual Studio. Hmmmm....
Does anyone know how to get a contemporary version of the DirectShow base classes? Microsoft is not being very helpful on this point.
This is a classic Microsoft: Moving things around but failing to update references.
If you navigate to DirectShow sample apps, you'll find the link to the new GitHub home under Windows-classic-samples/Samples/Win7Samples/multimedia/directshow/, including the baseclasses directory.
Since you are explicitly asking for a "contemporary" version of the DirectShow base classes, that's what the GitHub repository contains. They haven't been (to my knowledge) updated since. DirectShow is in maintenance mode, and Microsoft encourage clients to use more recent technologies instead (such as Microsoft Media Foundation or the Windows Runtime types under the Windows.Media.Capture namespace).
For this reason I copied the directshow baseclasses and included them in the project, when I implemented GraphStudioNext. I didn't touch the project in a while but maybe this helps: https://github.com/cplussharp/graph-studio-next/tree/master/baseclasses
PS: I just saw, Roman has a more updated version of the base classes: https://alax.info/blog/2157

OpenFrameworks, with OpenCV, VS2013 setup

So I am a total newbie (and you may have guessed because this is my first post/question here). I have a working OpenCV 2.4.8 install with Windows 8.1, running Visual Studio 2013 Express. I have downloaded OpenFrameworks for Windows ZIP archive and unzipped it. Now, I am stuck with the fact that I know nothing about what next to do. The setup guides on OpenFrameworks are how to install the IDE, not OF. The tutorials that are available are also more geared toward Macs, which I don't have access to for development purposes.
So, in short, I need some help in getting OpenFrameworks installed within Visual Studio 2013 EXPRESS, for my robotics high school robotics team, FRC.
By the way, has anyone successfully exploited the available resources from both, OpenCV and OpenFrameworks? If so, please let me know how I can get started integrating both together! ;)
So here's a little bit about me environment:
5 OSes (WIN8.1,WIN7, 250GB HDD, WIN7 32GB SSD, Ubuntu, under Wubi 30GB vDISK, Ubuntu, under Wubi 24GB vDISK), 6GB RAM, 1.5GB RAMDISK (can be disabled), i3-2367 (very slow) with CPU GOVERNOR PERFORMANCE under Ubuntu.
Thank you for your time and help, and peace!
if you would like to use with visual studio 2010, download the respective package from the below link.
http://openframeworks.cc/download/older.html
the latest version supports 2012 or above, which is 0.8 (I say, prefer the latest one, as it has good examples to start with)
After the installation, if you go to the respective directory of openframeworks, you will find a folder named project generator, use it to generate your project file. follow the below link to get an idea.
http://openframeworks.cc/tutorials/introduction/002_projectGenerator.html
As you are interested in opencv, you can use the addon available in openframworks ofxopencv and use couple of examples in examples folder to get used to its interface.

directx sdk on windows 8

This is my first post here and please apologize me for my very poor English.
Current state:
I have a project that is very advanced, until now i use the DirectX SDK from June 2010, and several other librarys (Assimp, FreeImage, Bullet etc....).
My development environment is Win7, with VS2010 professional (win sdk 7.1A).
My question is, must i rewrite my DirectX code (with win sdk 8) to support windows 8?
I have searched around the web, and the only post that i find was the blog from Chuck Walbourn "http://blogs.msdn.com/b/chuckw/archive/2012/03/22/where-is-the-directx-sdk.aspx".
Thank you in advance
Behnam Karaj
(From Stuttgart - Good Old Germany)
No, you can use DirectX SDK and Windows SDK 7.1A. It will work in Windows 8. But you will can not use it's new features, and cannot make Windows Store Apps.
Also, if you want to migrate to Windows 8 SDK, you don't need change much in your code, just a headers and some functions names and parameters.
If you want make Windows Store Apps you need to to migrate to Windows 8 SDK and cut some things such as D3DCompiler.h, Effects framework etc.

Webcam Video Capture using Visual C++ 6.0

I am trying to create an application to capture a snapshot using a webcam.
I have been able to accomplish this using WIA, but this solution becomes unstable when ran on Windows 7 with a camera that has a resolution of more than 1.3 megapixels. We are coding for a tablet computer that has a built in webcam with 2.0 megapixels.
I am not opposed to using direct show, but I would like to stay away from .net.
I have searched high and low for a solution and I can not get the directshow examples from the windows platform sdk or directx 9.0 to even compile on Visual Studio 6.0. I have also had no luck OpenCV.
Is there anyone that could point me in the direction of a tutorial that might get me started down the right path?
Thanks
The simplest way is videoinput lib that wraps directshow, it's the same lib used by openCV.
If that isn't good enough then the AMCAP sample in the multimedia/directshow dir of the Microsoft SDK shows how to run a camera in directshow
ps. as Hans said you should update the compiler,VC++6 is little old. There is a free version of their latest vs2010.
I found this tutorial excellent and it is so simple. I found it worked on XP and win7 with an old webcam and a new one.
I used the second example which is a semi-directshow one, but bypasses most of directshow.
You do need to add error handling though.
http://www.codeproject.com/KB/audio-video/VideoImageGrabber.aspx