Hi,
I'm writing a small program that reads an AVI DV file (captured from camcorder) and extracts metadata (timecode & timestamp). Currently I use the VfW interface (AVIFileOpen, AVIStreamRead,...) and everything works nicely. But when I tested it on real captured data (LARGE) I found out that VfW has a file size limit of 1GB (or maybe 2?). A typical DV Tape usually contains 1 hour of video which at 25mbps lead to an AVI file of about 13GB and VfW cannot handle it.
Looking for more info I found out that VfW is depecated, so what is the recommended way to read an AVI file nowadays???
Directshow seems to have been deprecated too, which leaves just DirectX but what DirectX functions should I use to read an AVI file ? Note that I don't want to read the video or audio stream but the metadata, so I either need some function to retrieve the metadata directly or a way to read the raw frames in DV format (and decode them myself).
In other words I need to: open avi file, check that it is in DV format, read some info (frame rate, number of frames,...), loop over all frames from first to last and for each frame retrieve timecode and timestamp.
An example would be very welcome.
Start Free Trial