[FFmpeg-devel] [PATCH 3/3] Only set starttime to pts when pts and dts agree
Benjamin Larsson
banan
Wed Mar 2 18:36:45 CET 2011
On 03/02/2011 06:32 PM, M?ns Rullg?rd wrote:
> Benjamin Larsson <benjamin at southpole.se> writes:
>
>> ---
>> libavformat/utils.c | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/libavformat/utils.c b/libavformat/utils.c
>> index c8e16ba..7627364 100644
>> --- a/libavformat/utils.c
>> +++ b/libavformat/utils.c
>> @@ -872,7 +872,7 @@ static void update_initial_timestamps(AVFormatContext *s, int stream_index,
>> st->start_time= pktl->pkt.pts;
>> }
>> if (st->start_time == AV_NOPTS_VALUE)
>> - st->start_time = pts;
>> + st->start_time = pts==dts ? pts : AV_NOPTS_VALUE;
>> }
>>
>> static void update_initial_durations(AVFormatContext *s, AVStream *st, AVPacket *pkt)
>> --
>> 1.7.1
> What is this intended to fix? Why should this be done only if pts and
> dts are equal, i.e. no decoder delay?
mpeg 2 mov file duration gets messed up when the files starts with a b
frame.
pts in the file is 200,0, etc.
MvH
Benjamin Larsson
More information about the ffmpeg-devel
mailing list