Create the Windows DirectShow setup to allow me to buffer and modify 4 frames of video from a DVD during playback in another window. Audio must be heard as with normal video playback: No changes or sampling is done on the audio, the audio does not need to be delayed with the video.
This can be done in VC or VB: version 6 or .net.
Deliverables:
1) Code for selecting the video source and setting up the DirectShow pipes.
2) A 4 frame circular buffer that holds the previous 4 frames and sends the oldest frame out for display.
3) Code to modify the pixels in frames that are displayed (for testing you can add text or clear some pixels in the video stream)
I'll modify the VB or VC code to do my video analysis.
## Deliverables
Controls on screen:
1. Select video source
2. Start / Pause / Stop video (if needed--maybe this is already in another screen)
3. Select the number of frames to buffer (default to 4 frames). Probably this can not be modified during video playback.
4. Preview window which shows the content of one of the buffered frames being analyzed--mainly for my diagnostics.
5. Selector for which of the frames is previewed.
6. A main viewing window (which can be expanded to full screen). This could be browser or other standard video display screen.
7. Selector for which of the buffered frames is displayed in the main viewing window.
8. Other controls that you recommend for debugging and testing.
I will be doing analysis on BGR24 pixels from the video. If the video is in some other format, it must be converted to BGR24 or BGR32, with the frame size available to my analysis code.
As I said, 4 frames must be buffered, and typically the oldest frame displayed. This means that the display is delayed. The audio does not need to be delayed.
Speed must be good, but does not need to be "perfect". I will analyze the video in real time using image analysis libraries, not VB.