I want to capture (not to display) closed captions.
I wrote my own filter, based on Dump example. The only thing I modified is mediatype of input pin.
I wrote an application which does the following:
1) Creates graph builders (normal and capture)
2) Finds a capture device. The criterion is a category and a presense of audio, video and VBI output pins.
3) Finds a Tee Sink device. The criterion is a category.
4) Finds CC decoder device. The criterion is a category and a presense of pins.
5) Finds other required devices by capture graph builder method
I render audio output pin of capture device, then connect VBI output to Tee Sink input, then connect Tee Sink output to CC decoder, then connect CC decoder output to my filter's input.
Also I use crossbar to turn sound on.
No errors occure, I hear sound, I can switch channels, but my filter creates empty files.
Is all above correct in general?
How program should behave in the case of CCs absent? Should it write zeros or just do nothing? I see no breaks in debugger within CGrabberCCInputPin::Receive method.
How my filter can send captured CCs back to application with the help of events?
What is IMediaSample structure in the case of CCs?
Thanks.