[FFmpeg-trac] #941(avformat:open): Seek problems with ogg decoder

FFmpeg trac at avcodec.org
Sat Feb 4 15:36:12 CET 2012

#941: Seek problems with ogg decoder
             Reporter:  DonMoir     |                    Owner:
                 Type:  defect      |                   Status:  open
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:  ogg seek    |               Blocked By:
             Blocking:              |  Reproduced by developer:  1
Analyzed by developer:  0           |

Comment (by reimar):

 > the index_entries table which have not been created but should be in the
 ogg_read_seek function

 This is nonsense, there is no need for any index entries at that point,
 and your method of creating them has O(n) performance.
 What happens is that FFmpeg falls back to seeking via read_timestamp,
 which can seek without index with O(log(n)) performance.
 The problem however is that read_timestamp randomly fails due to a bug:
 > [ogg @ 0003B000] read_timestamp() failed in the middle
 This can cause all kinds of issues like seeking completely failing or
 degrading to O(n*n) performance.
 Worse, that bug can even for a single byte of corruption cause the Ogg
 demuxer to suddenly start discarding all following data from a stream for
 no good reason at all.
 Patch to fix this bug is on the ffmpeg-devel list ([PATCH] Fix potential
 infinite discard loop.).

Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/941#comment:7>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list