<!--#include virtual="/ssi/header.include" --> <!-- Enter custom page information and styles here --> <title>Speex: a free codec for free speech</title> <style type="text/css"> <!-- #home_ a { text-decoration: underline; } --> </style> </head> <body> <!--#include virtual="/common/xiphbar.include" --> <div style="text-align:center;"> <div style="text-align:center;display:inline-block;border:2px solid;width:66%;margin:30px;padding:5px;background-color:#fc9;"> <div style="text-align:center;font-size:125%;">—The Speex codec has been obsoleted by <a href="http://opus-codec.org/">Opus</a>. It will continue to be available, but since Opus is better than Speex in all aspects, users are encouraged to switch— </div> </div> </div> <!--#include virtual="/ssi/pagetop.include" --> <!-- All your page content goes here --> <h1>Speex: A Free Codec For Free Speech</h1> <h2>Overview</h2> <img src="https://travis-ci.org/xiph/speex.svg?branch=master"/> <img src="https://oss-fuzz-build-logs.storage.googleapis.com/badges/janus-gateway.svg"/> <p> Speex is an <a href="/fsos/">Open Source/Free Software</a> patent-free audio compression format designed for speech. The Speex Project aims to lower the barrier of entry for voice applications by providing a free alternative to expensive proprietary speech codecs. Moreover, Speex is well-adapted to Internet applications and provides useful features that are not present in most other codecs. Finally, Speex is part of the <a href="http://www.gnu.org/"><abbr title="GNU’s Not Unix">GNU</abbr> Project</a> and is available under the <a href="http://www.xiph.org/licenses/bsd/speex/">revised BSD license</a>. </p> <h2>The Technology</h2> <p> Speex is based on <abbr title="Code-Excited Linear Prediction">CELP</abbr> and is designed to compress voice at bitrates ranging from 2 to 44 <abbr title="kilobits per second">kbps</abbr>. Some of Speex's features include: </p> <ul> <li>Narrowband (8 kHz), wideband (16 kHz), and ultra-wideband (32 kHz) compression in the same bitstream</li> <li>Intensity stereo encoding</li> <li>Packet loss concealment</li> <li title="Speex uses more bits for more difficult-to-encode audio, and less bits for less">Variable bitrate operation (VBR)</li> <li title="Speex can detect if someone is speaking or not, and adjust itself accordingly">Voice Activity Detection (VAD)</li> <li title="Speex can stop sending data if it thinks it’s okay (such as when there is no voice data)">Discontinuous Transmission (DTX)</li> <li>Fixed-point port</li> <li>Acoustic echo canceller</li> <li>Noise suppression</li> </ul> <p> Note that Speex has a number of features that are not present in other codecs, such as intensity stereo encoding, integration of multiple sampling rates in the same bitstream (embedded coding), and a <abbr title="variable bitrate (operation)">VBR</abbr> mode; see our <a href="/comparison/">comparison page</a> for more. </p> <h2>Getting Involved</h2> <p> One of the simplest things you can do to get involved in Speex is by using it in your application; Speex is well-suited to handle <abbr title="Voice over IP">VoIP</abbr>, internet audio streaming, data archival (like voice mail), and audio books. Currently, <a href="http://www.linphone.org/">LinPhone</a>, <a href="http://www.ekiga.org/">Ekiga</a>, and <a href="http://www.asterisk.org/">Asterisk</a> are some of the projects currently using Speex. For a list of projects with Speex support, visit our <a href="/software/">Plugins & Software</a> page. </p> <p> If you have questions or are interested in contributing to the project, have a look at our <a href="/roadmap/">roadmap</a>, <a href="http://lists.xiph.org/mailman/listinfo/speex-dev">join our mailing list</a>, or <a href='http://www.xiph.org/donate/'>send us money</a> so we can keep working on Speex. You can also contact the Project Lead, <a href="http://jmvalin.ca/"> Jean-Marc Valin</a> (though the mailing is usually the best place to ask questions). <p> <strong>Patches can be sent to the</strong> <a href="http://lists.xiph.org/mailman/listinfo/speex-dev">mailing list</a>, and should apply on the latest master branch. </p> </p> <h2>Headlines</h2> <ul class="descriptivelist"> <li> <h3>SpeexDSP 1.2.0 is out</h3> <p class="submitdate">June 7, 2019</p> <div class="description"> <p>This is the latest stable release of the SpeexDSP library.</p> </div> </li> <li> <h3>Speex 1.2.0 is out</h3> <p class="submitdate">December 7, 2016</p> <div class="description"> <p>This is the latest stable release of the Speex codec library.</p> </div> </li> <li> <h3>SpeexDSP 1.2rc3 is out</h3> <p class="submitdate">January 3, 2015</p> <div class="description"> <p>This brown-paper-bag release adds two headers that should have been included with SpeexDSP 1.2rc2. These are needed to build the resampler with NEON optimizations and to build SpeexDSP without the Speex codec library. </p> </div> </li> <li> <h3>Speex 1.2rc2 and SpeexDSP 1.2rc2 are out</h3> <p class="submitdate">December 6, 2014</p> <div class="description"> <p>This release splits the speex codec library and the speex DSP library into separate source trees. Both projects received build-system improvements, bugfixes, and cleanup. The speex codec's VBR tuning was improved, while the speexdsp resampler got some NEON optimizations. </p> </div> </li> <li> <h3>Speex 1.2rc1 is out</h3> <p class="submitdate">July 23, 2008</p> <div class="description"> <p>This release adds support for acoustic echo cancellation with multiple microphones and multiple loudspeakers. It also adds an API to decorrelate loudspeaker signals to improve multi-channel performance. In the bugfix department, there are fixes for a few bugs in the echo canceller, jitter buffer and preprocessor. At this point, the API for 1.2 should be stable and only a few very minor additions are planned.</p> </div> </li> <li> <h3>Speex 1.2beta3 is out</h3> <p class="submitdate">December 11, 2007</p> <div class="description"> <p>The most obvious change in this release is that all the non-codec components (preprocessor, echo cancellation, jitter buffer) have been moved to a new <i>libspeexdsp</i> library. Other changes include a new jitter buffer algorithm and resampler improvements/fixes. This is also the first release where libspeex can be built without any floating point support. To do this, the float compatibility API must be disabled (--disable-float-api or DISABLE_FLOAT_API) and the VBR feature must be disabled (--disable-vbr or DISABLE_VBR).</p> </div> </li> </ul> <!--#include virtual="/ssi/pagebottom.include" -->