[vorbis-dev] my vorbis comments
sbj at mit.edu
sbj at mit.edu
Wed Sep 13 18:31:53 PDT 2000
>>1. vorbis_info:
>> b. A function which compares two vorbis_info structs, to see if they
>> are equivalent
>Is this really useful?
Nope. I think you're right on this one, I take back 1.b.
>> d. People say the info_[A-E] has approximate bitrate X, but those
>> structs don't have the bitrate_* fields set, what's up with that?
>The bitrate_* fields are for CBR (and constrained VBR). So they aren't used
>yet (you'll see that the library doesn't use them anywhere, except to write
>and read them). The approximate bitrates are a function of the
>psychoacoustic sets and the codebooks used, at the moment. There's no
>simple way to figure out what they are just from looking at them, which is
>why the headers say what they are.
The reason I ask about this is that I think it would nice to be able
to describe the particular encoding of a vorbis file to the user.
Something like "2-channel, mid-side, 44.1kHz, approx 128bps". Right
now the only useful info I know how to extract is rate and channels,
and maybe bitrate if I seek to the end and divide number of frames by
file size.
>> a. I wouldn't mind if vorbis didn't use separated channel buffers,
>Not entirely sure what you mean, here. Can you clarify? If you're talking
>about how vorbis uses seperate buffers for each channel, rather than a
Yeah that's what I mean. It's not a big issue to me at all, I was
just throwing out more comments.
[ chained streams ]
Ah, I see. So if I've got some seekable file with chained streams in
it, I should treat it basically like a tar file? :) I was running into
some confusion about how chained vorbis files map to speaker output,
and to other file formats. I'm guessing it would depend a lot on what
the user is trying to do.
[ header problems ]
>I'm not sure I understand what you've been doing here, but it sounds like
>you're expecting the current page to end after the last header (such that
>the audio starts on a new page). This indeed should be the case (after some
>discussion a week or so back).
Basically. What I really want to know is the offset to the first page
which might contain audio, so I can seek to it later, if necessary.
For now I have worked around it by assuming that page is at offset 0.
Later I will look into it further, it is another non-big issue. I was
only concerned that there was some hidden difference between
ogg_sync_pageout and ogg_sync_pageseek, such that using pageout might
possible read more pages than is really necessary.
>However, if you based your encoder off any of the sample code more than a
>week ago, then it wouldn't be doing this (flushing pages after the
>headers). You should make this change, but you might also want to deal
>correctly with files which don't do this.
It's the decoder. And, what change?
By the way, thanks for the incredibly rapid response! And keep up the
good work.
jamie
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Vorbis-dev
mailing list