[vorbis-dev] Re: Feedback on Ogg Speex file format
Ingo Ralf Blum
ingoralfblum at gmx.de
Wed Aug 14 00:54:43 PDT 2002
Here's my opinion (I'm no Xiph member, so just take this as an idea of an
outsider):
> All integer fields in the headers are stored as little-endian. The
Should be ok, as long as your libs take care of that.
> speex_string field must contain the ``Speex `` (with 3 training
> spaces), which identifies the bit-stream.
Why the 3 spaces?
> The next field, speex_version
> contains the version of Speex that encoded the file. For now, refer to
> speex_header.[ch] for more info. The beginning of stream (b_o_s) flag is
> set to 1 for the header. The header packet has packetno=0 and
> granulepos=0.
Isn't -1 the preferred granuelpos for headers.
> The second packet contains a user-comment string, without terminating
> null. The content/format of the comment string is not defined. This
> packet has packetno=1 and granulepos=0.
You should specify the charset, for example UTF8, if your library doesn't
handle it.
> The third and subsequant packets each contain one or more (number found
> in header) Speex frames. These are identified with packetno starting
> from 2 and the granulepos is the number of the first sample encoded in
> that packet.
In Vorbis and FLAC the granulepos is the last sample, which is decodable
from the packet, so perhaps you should change that.
> The stream is terminated by a packet containing the string ``END OF
> STREAM'' (without terminating null). The the end of stream (e_o_s) flag
> set to 1. The decoder should rely on the e_o_s flag and not on the
> content of the packet.
Seems redundant to me. I'd leave away that special packet and set the e_o_s
flag on the last data packet.
Regards,
Ingo
<p><p><p><p>--- >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