diff options
author | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2009-06-21 03:50:26 +0000 |
---|---|---|
committer | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2009-06-21 03:50:26 +0000 |
commit | b27758bc02c7111d32c1e0d36d7cbdb4ce5d0400 (patch) | |
tree | 23deea9d637b899e527425fbcc105720957a8962 /libavcodec/parser.c | |
parent | f356fc57994188eaf3499c74937716ae116563cd (diff) | |
download | ffmpeg-b27758bc02c7111d32c1e0d36d7cbdb4ce5d0400.tar.gz |
Fetch timestamp for the first frame of field only if frame_offset and
next_frame_offset are not set, because second field has next frame offset set
but not frame_offset, otherwise this wrongly fetch timestamp for the
second field.
Originally committed as revision 19244 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/parser.c')
-rw-r--r-- | libavcodec/parser.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/parser.c b/libavcodec/parser.c index 69215a47d0..0b007e9ee4 100644 --- a/libavcodec/parser.c +++ b/libavcodec/parser.c @@ -89,7 +89,8 @@ void ff_fetch_timestamp(AVCodecParserContext *s, int off, int remove){ s->offset= 0; for(i = 0; i < AV_PARSER_PTS_NB; i++) { if ( s->cur_offset + off >= s->cur_frame_offset[i] - &&(s-> frame_offset < s->cur_frame_offset[i] || !s->frame_offset) + && (s->frame_offset < s->cur_frame_offset[i] || + (!s->frame_offset && !s->next_frame_offset)) // first field/frame //check is disabled becausue mpeg-ts doesnt send complete PES packets && /*s->next_frame_offset + off <*/ s->cur_frame_end[i]){ s->dts= s->cur_frame_dts[i]; |