I am developing a piece of software that records video from a live source to WMV files (using WMV1 compression).
I am attempting to provide a rough estimate of the recording time remaining, based on the space left on the storage hard drive. I cannot simply base the output file size on the bit-rate of the codec, unfortunately, since the video compression means that the output size varies wildly according to the complexity of the image.
Any thoughts?
FYI I am using C# and DirectShow.
This is a really good question. Unfortunately, there's no sure-fire way of doing this, but you have two basic options:
Option 1 is a quick and easy way to get started. Option 2 requires a bit more programming, but your estimate will be substantially more accurate. After all, compression in these instances is based on what you are recording. Recording a solid green screen for 1 hour takes substantially less disk than recording a moving background with continuously changing foreground, or maybe a fractal sequence. There's no way to do a good estimate ahead of time.