For my science project, I must process a video frame-by-frame. I want to extract the Image data from each frame, obviously.
Now, I found this C++ source in MSDN that grabs frames and saves them as bmp files. However, it'd be a *pain* to convert that into C# because its long, complex, complicated, etc.The sample file
Is there any easier way to do it?
You can compile this sample as a normal C++ DLL and call this from C# like any other native DLL.
Other than that, maybe you can take some keywords out of the sample and look them up, maybe there's a C# wrapper for one of them in Managed DirectX.
Alright, I'm just really confused now. I've spent 2 days trying to figure out how the filters work. So far I have a C# application that sucessfully plays a video file using DirectShow. But instead of a normal playback, I play one frame at the time until its finished. That way, I can hopefully parse it.
All I want to do is get the indivdual frame data. I have absolutly no idea how these filters connect to each other and work. I've searched all over the place with no avail.
Can anyone help?
I found a few AVI functions in the Windows Platform SDK that allow me to play back and get frame data easily. However, I dont know how to import these functions into C#. If there is aboslutely no way to use DirectShow to get frame data, I'll use these functions. The thing is that the AVI files are 60+ MB and the .wma files (which DirectShow plays), are only 800 KB. I dont want to carry around 60 megabytes of video data on my USB drive when I can just carry less than a megabyte. And in addition, I have no idea how to import these functions into C#.