diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2010-02-11 22:32:46 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2010-02-11 22:32:46 +0000 |
commit | f2d56513d71c5e151c4a6ca95020605a6179dbbb (patch) | |
tree | 5673289ceb00be4844dfa4900719b1d25a3a7c4d /libavformat/iv8.c | |
parent | 23b361bacaa73e40a55e1ba48440abefb274bf95 (diff) | |
download | ffmpeg-f2d56513d71c5e151c4a6ca95020605a6179dbbb.tar.gz |
Fix timestamps.
Originally committed as revision 21761 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/iv8.c')
-rw-r--r-- | libavformat/iv8.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libavformat/iv8.c b/libavformat/iv8.c index 33894ad9f8..299de45ba8 100644 --- a/libavformat/iv8.c +++ b/libavformat/iv8.c @@ -55,9 +55,9 @@ static int read_header(AVFormatContext *s, AVFormatParameters *ap) static int read_packet(AVFormatContext *s, AVPacket *pkt) { - int ret, size, pts; - - get_be16(s->pb); // 257 + int ret, size, pts, type; +retry: + type= get_be16(s->pb); // 257 or 258 size= get_be16(s->pb); get_be16(s->pb); //some flags, 0x80 indicates end of frame @@ -69,9 +69,14 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt) if(size<1) return -1; + if(type==258){ + url_fskip(s->pb, size); + goto retry; + } + ret= av_get_packet(s->pb, pkt, size); - pkt->pts= pkt->dts= pts; + pkt->pts= pts; pkt->pos-=16; pkt->stream_index = 0; |