Link to home
Get AccessLog in
Avatar of alexatsearidge
alexatsearidgeFlag for Canada

asked on

How do I decode an MPEG2 stream in visual c++?

I am looking at MPEG2 streaming and decoding and am searching for a good start to accept a stream and draw it on the screen in visual c++, where should I start?
SOLUTION
Avatar of jkr
jkr
Flag of Germany image

Link to home
membership
This content is only available to members.
To access this content, you must be a member of Experts Exchange.
Get Access
ASKER CERTIFIED SOLUTION
Link to home
membership
This content is only available to members.
To access this content, you must be a member of Experts Exchange.
Get Access
I'm not experienced on this subject, but... what about ffmpeg
Avatar of alexatsearidge

ASKER

The example at http://www.codeproject.com/KB/directx/MPEG2_Capture_Device.aspx ("Preview and Record with MPEG2 Capture device") I tried to compile it after installing the Windows SDK for Server 2003 (since I'm compiling my final app to work with Win XP) but I'm still getting linker errors with that sample, I think my Windows SDK or directshow version may be different than needed but the sample doesn't say what version is needed.

I'm looking further into directshow and using microsofts mpeg2 - demux but I never worked with makefiles so I'm still trying to compile them so I can try the samples that come with Windows SDK - the Directshow Samples - Filter Samples but they make it a little difficult to set up the environment - your includes and exe files in Options - C++ Directories need to be in a certain order that I'm still figuring out.

-ffmpeg-

If you read into ffmpeg and do some research they say it is not designed for MSVC++ .net because MSVC++ does not follow the C99 standard and FFmpeg is designed to rely on it. The current project that I'm working on uses MSVC++ but if anyone else wants to try ffmpeg on windows with MinGW they talk about it here http://ffmpeg.arrozcru.org/wiki/index.php?title=Main_Page  but they also state that you have to do all your compiling still in a virtual box running linux.
SOLUTION
Link to home
membership
This content is only available to members.
To access this content, you must be a member of Experts Exchange.
Get Access
Solution is to use directshow which should work, in the end I went with Intel Integrated Performance Primitives which also works.