mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Abort Ogg header parsing when we encounter a data packet.
Fixes ticket #15.
This commit is contained in:
parent
ae7a4a1594
commit
d459d8e28d
@ -376,8 +376,7 @@ ogg_packet (AVFormatContext * s, int *str, int *dstart, int *dsize, int64_t *fpo
|
|||||||
|
|
||||||
// We have reached the first non-header packet in this stream.
|
// We have reached the first non-header packet in this stream.
|
||||||
// Unfortunately more header packets may still follow for others,
|
// Unfortunately more header packets may still follow for others,
|
||||||
// so we reset this later unless we are done with the headers
|
// but if we continue with header parsing we may lose data packets.
|
||||||
// for all streams.
|
|
||||||
ogg->headers = 1;
|
ogg->headers = 1;
|
||||||
|
|
||||||
// Update the header state for all streams and
|
// Update the header state for all streams and
|
||||||
@ -386,8 +385,6 @@ ogg_packet (AVFormatContext * s, int *str, int *dstart, int *dsize, int64_t *fpo
|
|||||||
s->data_offset = os->sync_pos;
|
s->data_offset = os->sync_pos;
|
||||||
for (i = 0; i < ogg->nstreams; i++) {
|
for (i = 0; i < ogg->nstreams; i++) {
|
||||||
struct ogg_stream *cur_os = ogg->streams + i;
|
struct ogg_stream *cur_os = ogg->streams + i;
|
||||||
if (cur_os->header > 0)
|
|
||||||
ogg->headers = 0;
|
|
||||||
|
|
||||||
// if we have a partial non-header packet, its start is
|
// if we have a partial non-header packet, its start is
|
||||||
// obviously at or after the data start
|
// obviously at or after the data start
|
||||||
|
Loading…
Reference in New Issue
Block a user