Opened 11 years ago

Closed 11 years ago

#2739 closed defect (fixed)

Seeking with certain OGM samples fails

Reported by: jeeb Owned by:
Priority: important Component: avformat
Version: git-master Keywords: ogg asp seek
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
A sample is uploaded to upload.ffmpeg.org/incoming under the name lavf_ogm_seeking_borked.ogm. As I have no idea if the file can be cut with dd, I have not touched the file at all.

Seeking with certain OGM samples fails. Gabest and Haali seem to work fine with them, as well as libav after commit 8ad3267 (cherry-picking the change from libav does not seem to fix it, though the oggdec demuxer seems to be rather different between the two projects, so that is kind of understandable).

How to reproduce
:

% ffmpeg -ss 00:05:00.000 -i lavf_ogm_seeking_borked.ogm -c:v rawvideo -c:a pcm_s16le -f null -
ffmpeg version N-54345-ga35494c Copyright (c) 2000-2013 the FFmpeg developers
  built on Jul  2 2013 12:33:35 with gcc 4.7.3 (GCC)
  configuration:
  libavutil      52. 38.100 / 52. 38.100
  libavcodec     55. 18.100 / 55. 18.100
  libavformat    55. 10.101 / 55. 10.101
  libavdevice    55.  2.100 / 55.  2.100
  libavfilter     3. 77.101 /  3. 77.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
[ogg @ 000319E0] Headers mismatch for stream 1: expected 3 received 2.
[ogg @ 000319E0] Headers mismatch for stream 2: expected 3 received 2.
Input #0, ogg, from 'lavf_ogm_seeking_borked.ogm':
  Duration: 00:23:19.19, start: 0.000000, bitrate: 1383 kb/s
    Stream #0:0(Japanese): Video: mpeg4 (DX50 / 0x30355844), yuv420p, 640x480, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc
    Stream #0:1(English): Audio: vorbis, 48000 Hz, stereo, fltp, 0 kb/s
    Stream #0:2(Japanese): Audio: vorbis, 48000 Hz, stereo, fltp, 0 kb/s
    Stream #0:3(English): Subtitle: text
    Stream #0:4(Deutsch): Subtitle: text
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf55.10.101
    Stream #0:0(Japanese): Video: rawvideo (I420 / 0x30323449), yuv420p, 640x480, q=2-31, 200 kb/s, 90k tbn, 23.98 tbc
    Stream #0:1(English): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg4 -> rawvideo)
  Stream #0:1 -> #0:1 (vorbis -> pcm_s16le)
Press [q] to stop, [?] for help
[null @ 03CDF9E0] Encoder did not produce proper pts, making some up.
frame=    8 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.33 bitrate=N/A dup=2 drop=0
video:1kB audio:0kB subtitle:0 global headers:0kB muxing overhead -104.296875%

As can be seen, only "8" frames get decoded, and then it stops. There are plenty of frames to be decoded, though, even after the seek.

Change History (3)

comment:1 by Carl Eugen Hoyos, 11 years ago

Keywords: ogg asp seek added; oggdec ogm seeking removed
Reproduced by developer: set
Status: newopen

I suspect this is related to tickets #2506 and #2507 but there may be additional issue(s).

comment:2 by gjdfgh, 11 years ago

By the way, this works on Libav.

comment:3 by Michael Niedermayer, 11 years ago

Priority: normalimportant
Resolution: fixed
Status: openclosed

Fixed in 5e0c7eab2a9d43e6e3be967ec1a6b04a3e0328da
Also as it was a regression (relative to libav in this case) this should have been marked as important

Note: See TracTickets for help on using tickets.