Revision f2d56513
libavformat/iv8.c | ||
---|---|---|
55 | 55 |
|
56 | 56 |
static int read_packet(AVFormatContext *s, AVPacket *pkt) |
57 | 57 |
{ |
58 |
int ret, size, pts; |
|
59 |
|
|
60 |
get_be16(s->pb); // 257
|
|
58 |
int ret, size, pts, type;
|
|
59 |
retry: |
|
60 |
type= get_be16(s->pb); // 257 or 258
|
|
61 | 61 |
size= get_be16(s->pb); |
62 | 62 |
|
63 | 63 |
get_be16(s->pb); //some flags, 0x80 indicates end of frame |
... | ... | |
69 | 69 |
if(size<1) |
70 | 70 |
return -1; |
71 | 71 |
|
72 |
if(type==258){ |
|
73 |
url_fskip(s->pb, size); |
|
74 |
goto retry; |
|
75 |
} |
|
76 |
|
|
72 | 77 |
ret= av_get_packet(s->pb, pkt, size); |
73 | 78 |
|
74 |
pkt->pts= pkt->dts= pts;
|
|
79 |
pkt->pts= pts; |
|
75 | 80 |
pkt->pos-=16; |
76 | 81 |
|
77 | 82 |
pkt->stream_index = 0; |
Also available in: Unified diff