On Nov 23, 2008, at 10:51 AM, Maik Merten wrote:

Eric Carlson schrieb:

Reporting the absolute time of the current sample won't help when the
first sample of the file doesn't have a timestamp of zero. It will be
even more confusing for files with portions removed or added without
fixing time stamps - for example a movie created by concatenating
different files.

Well, at least the "zero-timestamp has offset" problem can be corrected. Whenever possible a "corrected" time should be reported - whatever that
may be.

As I noted when this subject came up a few weeks ago, the right way to
deal with media formats that don't store duration is to estimate the
duration of the whole file by extrapolating from the known, exact,
duration of the portion(s) that have been processed. While the initial
estimate won't always be correct for variable bit-rate formats, the
estimate will become more and more accurate as it is iteratively refined by processing more media data. The spec defines the "durationchange" for
just exactly this scenario.

Personally I don't think extrapolating the duration will work at all.
Yes, it gets better the more has been seen, but I assume we'll see a lot
of position indicators in the UI bouncing back and forth if durations
are to be extrapolated.

QuickTime has used this method this since it started supporting VBR mp3 in 2000, and in practice it works quite well. I am sure that there are degenerate cases where the initial estimate is way off, but generally it is accurate enough that it isn't a problem. An initial estimate is more likely to be wrong for a very long file, but each pixel represents a larger amount of time in the time slider with a long duration so changes less noticeable.

eric

Reply via email to