Re: ov_pcm_seek to sample zero of Theora/Vorbis file hangs

Ian Nartowicz <[email protected]> Fri, 6 Jun 2014 15:47:05 +0100
Newsgroups gmane.comp.multimedia.ogg.vorbis.devel
Message-ID <20140606154705.285fa75c@crunchbang>
On Fri, 23 May 2014 23:51:58 +0100
Ian Nartowicz <[email protected]> wrote:

>Hi all,
>
>I'm having a little trouble with a Vorbis decoder hanging (actually hard
>looping the CPU) when I call ov_pcm_seek(&vorbis_file, 0) on a multiplexed
>theora/vorbis file.  It appears to be the vorbisfile library that has the
>problem.  The call to ov_pcm_seek never returns.
>
>Seeking in non-multiplexed, including chained, files is OK.  Seeking to other
>values, including sample 1, works OK.  Has anyone else seen this?
>
>I have tested against Big Buck Bunny:
>http://www.bigbuckbunny.org/index.php/download/
>
>and plane.ogg from Wikipedia:
>https://en.wikipedia.org/wiki/File:I-15bis.ogg
>
>--ian

So, to partially answer my own question.  This goes into an infinite loop in
_get_prev_page in vorbisfile.c, with begin=0 and end=0.  Perhaps this function
should never be called since it clearly can't handle this situation.

--ian