[vorbis-dev] trouble getting libvorbis to cut beginning of the bitstream

Joshua Haberman joshua at haberman.com
Tue Nov 25 21:21:06 PST 2003


I'm having trouble getting libvorbis to cut the beginning of a bitstream
when I instruct it to do so with granulepos.

I have constructed a file which I believe should have its beginning
truncated.  I have attached it to this mail.  Here is a picture of what
the bitstream looks like, as output by a python program that uses
pyogg/pyvorbis to read the stream and print a representation:

<OggPage, BOS pageno = 0, granulepos = 0, serialno = 2079510926, head length = 28, body length = 30 at 0x4019b3e0>
        <OggPacket, BOS packetno = 0, granulepos = 0, length = 30 at 0x401e7bb0>
<OggPage, pageno = 1, granulepos = 0, serialno = 2079510926, head length = 44, body length = 3877 at 0x4019b368>
        <OggPacket, packetno = 1, granulepos = -1, length = 45 at 0x401e7bb0>
        <OggPacket, packetno = 2, granulepos = 0, length = 3832 at 0x401e7bd8>
<OggPage, EOS pageno = 2, granulepos = 934, serialno = 2079510926, head length = 30, body length = 506 at 0x4019b3f8>
        <OggPacket, packetno = 3, granulepos = -1, length = 248 at 0x401e7bd8>
        <OggPacket, EOS packetno = 4, granulepos = 934, length = 258 at 0x401e7bb0>

Notice that the granulepos of the last ogg page is 934.  There are 1048
samples in that page (the overlap/add of those two packets), and my
understanding is that libvorbis should only return the first 934 of
them.  However, when I decode to wav with ogg123, the resulting file is
1024 samples long, as verified with sndfile-info (from libsndfile).

Any ideas?  What am I doing wrong?

Josh

-------------- next part --------------
A non-text attachment was scrubbed...
Name: TruncateBeginning.ogg
Type: application/x-ogg
Size: 4704 bytes
Desc: TruncateBeginning.ogg
Url : http://lists.xiph.org/pipermail/vorbis-dev/attachments/20031125/72396921/TruncateBeginning-0001.bin


More information about the Vorbis-dev mailing list