Hi,
The Speex reference refers to the Vorbis comment format to define the
comment header:
http://www.xiph.org/ogg/vorbis/doc/v-comment.html
However, speexenc violates that format in a couple of ways:
1. it doesn't append a "framing bit" to the end of the
comments packet. According to the Vorbis comment spec,
an ERROR must be flagged when decoding such a packet.
2. it explicitly allows comments which are not of the
form name=value, and even provides a commandline option
for adding them.
As trivial as these differences are, they make it difficult to write code
that tries to follow the Vorbis comment spec properly when dealing with
random speex and vorbis files.
If you want a patch, I'll write it as soon as I get back from my
lobotomy -- I've just spent way too long writing test suites for managing
vorbiscomments, and I'll be glad if i never need to think about this stuff
after a week from now :).
Conrad.
--
<kfish> yeah, text processing is fucking tedious. It's like audio
coding
with all the fun bits taken out.
<kfish> no math
<kfish> no io
<kfish> no squelchy, speaker destroying sounds
<kfish> no pretty graphs or visualization
<kfish> just an endless pit of table lookups and byte comparisons
<-- m3ga has quit ("Client exiting")
--- >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
'speex-dev-request@xiph.org'
containing only the word 'unsubscribe' in the body. No subject is
needed.
Unsubscribe messages sent to the list will be ignored/filtered.
Hi Conrad, I was discussing this with Jean-Marc just now...> 1. it doesn't append a "framing bit" to the end of the > comments packet. According to the Vorbis comment spec, > an ERROR must be flagged when decoding such a packet.The framing bit is an obsolete concept when also in the context of Ogg framing although it is part of the spec. It provides nothing Ogg doesn't provide in a production environment (it crept in during the day when Ogg framing wasn't yet solid and the Vorbis codec was using additional framing paranoia. I left it in the spec on the basis of 'can't hurt when not using with Ogg'). That said... Obsolete or not, Vorbis decoders do check for it. Speex decoders do not. So it seems a simple case of 'include the bit and everyone's happy!', but we end up with a case of 'the encoder must write this bit which the decoder must not read.' That's probably worst of it. Oh, one silly thing... the Vorbis I bitpacker is LSbit first. The comment header is octet-aligned (the only header that is). So what you really end up doing is writing '0x01'.> > 2. it explicitly allows comments which are not of the > form name=value, and even provides a commandline option > for adding them.Basic agreement here. Monty --- >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 'speex-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.