From 50a9d32310e7a67fa3a9b2c92d5ed70ac00261e4 Mon Sep 17 00:00:00 2001 From: David Conrad Date: Thu, 11 Mar 2010 07:17:29 +0000 Subject: oggdec: Set data_offset to the right value Otherwise it gets set automatically to a page midstream and prevents seeking to the first page. Originally committed as revision 22454 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/oggdec.c | 1 + tests/ref/seek/lavf.ogg.ref | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/libavformat/oggdec.c b/libavformat/oggdec.c index 2c2cb2d3bc..3ebd61bbbc 100644 --- a/libavformat/oggdec.c +++ b/libavformat/oggdec.c @@ -382,6 +382,7 @@ ogg_packet (AVFormatContext * s, int *str, int *dstart, int *dsize, int64_t *fpo os->segp = segp; os->psize = psize; ogg->headers = 1; + s->data_offset = os->sync_pos; }else{ os->pstart += os->psize; os->psize = 0; diff --git a/tests/ref/seek/lavf.ogg.ref b/tests/ref/seek/lavf.ogg.ref index a4b9e63d30..d366a59505 100644 --- a/tests/ref/seek/lavf.ogg.ref +++ b/tests/ref/seek/lavf.ogg.ref @@ -1,48 +1,48 @@ ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 125 size: 1364 ret: 0 st:-1 flags:0 ts:-1.000000 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 5768 size: 1390 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 4353 size: 1382 ret: 0 st:-1 flags:1 ts: 1.894167 ret:-EIO ret: 0 st: 0 flags:0 ts: 0.788345 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 11410 size: 1365 ret: 0 st: 0 flags:1 ts:-0.317506 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 2936 size: 1384 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 1522 size: 1381 ret: 0 st:-1 flags:0 ts: 2.576668 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st:-1 flags:1 ts: 1.470835 ret:-EIO ret: 0 st: 0 flags:0 ts: 0.365011 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 5768 size: 1390 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 7191 size: 1370 ret: 0 st: 0 flags:1 ts:-0.740839 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 2936 size: 1384 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 1522 size: 1381 ret: 0 st:-1 flags:0 ts: 2.153336 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st:-1 flags:1 ts: 1.047503 ret:-EIO ret: 0 st: 0 flags:0 ts:-0.058322 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 5768 size: 1390 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 4353 size: 1382 ret: 0 st: 0 flags:1 ts: 2.835828 ret:-EIO ret: 0 st:-1 flags:0 ts: 1.730004 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st:-1 flags:1 ts: 0.624171 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 7191 size: 1370 -ret: 0 st: 0 flags:0 ts:-0.481655 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 5768 size: 1390 +ret: 0 st: 0 flags:0 ts:-0.481655 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 4353 size: 1382 ret: 0 st: 0 flags:1 ts: 2.412494 ret:-EIO ret: 0 st:-1 flags:0 ts: 1.306672 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st:-1 flags:1 ts: 0.200839 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 2936 size: 1384 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 1522 size: 1381 ret: 0 st: 0 flags:0 ts:-0.904989 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 5768 size: 1390 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 4353 size: 1382 ret: 0 st: 0 flags:1 ts: 1.989184 ret:-EIO ret: 0 st:-1 flags:0 ts: 0.883340 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st:-1 flags:1 ts:-0.222493 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 2936 size: 1384 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 1522 size: 1381 ret: 0 st: 0 flags:0 ts: 2.671678 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 12808 size: 1223 ret: 0 st: 0 flags:1 ts: 1.565850 @@ -50,4 +50,4 @@ ret:-EIO ret: 0 st:-1 flags:0 ts: 0.460008 ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 8594 size: 1381 ret: 0 st:-1 flags:1 ts:-0.645825 -ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 2936 size: 1384 +ret: 0 st: 0 flags:1 dts: NOPTS pts: NOPTS pos: 1522 size: 1381 -- cgit v1.2.3