[speex-dev] API suggestions

Jean-Marc Valin jean-marc.valin at hermes.usherb.ca
Fri Jun 6 11:16:04 PDT 2003


> I will probably use a termination code in the bitstream following each
> group of frames (inband signalling). This would apply to VBR modes only.

If that's what you want to do, there's already a termination code that
exists see speex_bits_insert_terminator in version 1.0.1. Also, you
might want to do that with CBR too, as even in CBR mode, it's possible
to add "extra information" in the stream (requests to the decoder, ...).

> For CBR this works perfectly. The block size in the WAVE file is defined
> by the nBlockAlign value in the WAVEFORMATEX header. These blocks are
> of a constant size and facilitate seeking. By grouping a number of frames
> together the padding loss becomes minimal (or zero).

I really think you should to something like what speexenc does: pack
many frames in the same packet and then add some size info to the
packets.

As for the (void*) for the encoder and decoder states, it needs to stay
that way because it's the way I emulate polymorphism in C...

        Jean-Marc


-- 
Jean-Marc Valin, M.Sc.A.
LABORIUS (http://www.gel.usherb.ca/laborius)
Université de Sherbrooke, Québec, Canada

<p>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: Ceci est une partie de message numériquement signée
Url : http://lists.xiph.org/pipermail/speex-dev/attachments/20030606/3609af65/signature-0001.pgp


More information about the Speex-dev mailing list