Create a Directshow Push Source filter that receives audio, video and subtitles from FFMPEG via a named pipe (or seperate named pipes for each media type).
Receive a URL from IFileSourceFilter, start the FFMPEG process, receive the media with timestamps and push it to the filter's output pins.
Must keep A/V sync, receive and parse FFMPEG stderr and stdout messages for incomming bandwidth, rates and error messages.
The filter should support the following interfaces ISpecifyPropertyPages, IAMNetShowExProps, IAMNetworkStatus, IAMOpenProgress, CFilterLogger, IFileSourceFilter. No need for seeking or trick play.
You will need to be an expert in Directshow, C++ and named pipes to complete this project