[FFmpeg-devel] Supporting container formats with PTS gaps (Ogg)
Andy Sheen
sheen.andy
Mon Feb 2 16:28:40 CET 2009
Robert Swain wrote:
> 2009/2/2 M?ns Rullg?rd <mans at mansr.com>:
>> Robert Swain <robert.swain at gmail.com> writes:
>>> 2009/2/2 M?ns Rullg?rd <mans at mansr.com>:
>>>> Robert Swain <robert.swain at gmail.com> writes:
>>>>> 2009/2/2 M?ns Rullg?rd <mans at mansr.com>:
>>>>>> Peter Ross <pross at xvid.org> writes:
>>>>>> I consider this mess a flaw in the FFmpeg design. Some formats
>>>>>> provide only occasional timestamps, and there is no generic way to
>>>>>> find the missing timestamps without (more or less) decoding the
>>>>>> elementary streams. The current approach seems to be vigorous denial
>>>>>> of this, and a half-baked attempt at inventing the missing
>>>>>> timestamps. More often than not this fails, resulting in the infamous
>>>>>> "non-monotone timestamps" error when stream-copying.
>>>>> This issue seems to come up quite a lot. What can be done to make the
>>>>> system more robust? Is decoding the elementary streams the only way?
>>>>> If so, shouldn't this 'brute force' approach at the very least be an
>>>>> option?
>>>> Timestamp interpolation should only be done when required, not by
>>>> default.
>>> That's why I said at the very least be an option, rather than just
>>> spitting the "non-monotone timestamps" error. In this situation would
>>> it not be considered required?
>> That depends on the target container. E.g. MPEG doesn't need all the
>> timestamps.
>
> If MPEG doesn't need all the time stamps then would it spit that error
> in this situation?
>
Although not directly relevant to PTS gaps in ogg files, I have entered
a bug in roundup (issue 807) concerning non monotone timestamps.
In my case, I am forced to demux, re-encode and then remux (ironically,
all done via ffmpeg) when all I want to do is single command line to
re-encode audio to the same file.
It appears there could be a wider implication of getting this fixed...
More information about the ffmpeg-devel
mailing list