Update to Speex

Jean-Marc Valin jean-marc.valin at usherbrooke.ca
Mon Oct 15 11:44:45 UTC 2007


Faidon Liambotis wrote:
> Hi,
> 
> Jean-Marc Valin wrote:
>> I just wanted to let you know that I recently split the Speex library
>> into libspeex and libspeexdsp. The libspeex part contains the codec and
>> is fully compatible with the 1.0 version of libspeex. The libspeexdsp
>> part is basically the new (unstable0 features (preprocessor, AEC, ...)
>> that appeared in the 1.1/1.2beta branch. So I guess the debian packages
>> for Speex would need to be updated accordingly.
> Thanks for informing us!
> 
> So, if I understand correctly, you haven't actually "splitted" the
> library, just introduced a new part.

No, I really did split if you look at the 1.1 versions that you have
been shipping. Basically, 1.0 had just the codec. Then 1.1.x introduced
new features in libspeex, which you are currently shipping. Now, I am
moving those new features to libspeexdsp. So basically, the only things
that moved where "unstable" features that hadn't been part of a stable
release yet (but are in libspeex in 1.1.12).

> Are there any known users of libspeexdsp?

Yes. I believe Ekiga is using the features that are being moved there
from libspeex (e.g. the echo canceller) and the new resampler is now
being used by alsa-plugins and pulseaudio. In the case of alsa and
pulseaudio, I think they use a copy of the code though (because the
resampler is very very new).

>> I've also noticed that debian still has 1.1.12, so I thought it would be
>> a good opportunity to update. The split version of Speex will soon be
>> released as 1.2beta3. If you want to start playing with it, the current
>> svn/git is quite stable and no breakage/instability is expected before
>> beta3.
> Debian has 1.1.12 in stable, testing and unstable but has 1.2~beta2 in
> its experimental suite.
> That's where all betas will be until you release the final 1.2.

I guess I should point out that 1.2beta1 is more stable than 1.1.12
because 1.1.x was an "unstable branch" (just like odd releases for the
kernel used to be). The only difference is that the 1.1.x/1.2beta branch
has long been much superior to the last "stable release" (1.0.5).
Seriously, there's no point in keeping 1.1.12 in stable because it's
just an older unstable release. Consider 1.2beta2 as 1.1.14 (that's
actually how it's identified internally). Also note that 1.2beta2 has no
known issue (except for the resampler, which is a new component anyway
and doesn't affect anything else).

Hope this clarifies things. Any questions?

One last note, I've noticed you seem to ship testenc and even a man page
for it. Those should *not* be distributed and are only for development
use (easy testing). testenc has no value as a tool.

	Jean-Marc



More information about the Pkg-voip-maintainers mailing list