Speex

From XiphWiki
Jump to navigation Jump to search


The Speex codec is deprecated! Xiph recommends you use the superior Opus codec instead.

Website

The Speex homepage has all the project info.

There is also a Speex FAQ.

Hardware

See Speex hardware for a partial list of supported hardware

Usefulness, Speex DSP

In 2009, the source code of Speex was split into Speex Codec and Speex DSP.

While the Codec part has been deprecated since 2013, the Speex DSP part is still useful and still under development.

It contains among others resampling code (written originally 2007 for the Speex codec) used by several other audio projects, including Opus Tools (actually OPUS TOOLS 0.1.9 from 2014 contains an outdated version of the resampling code from 2009 with minimal modifications).

Tasks

These are some improvements that could be made to Speex.

Let us know if you'd like to work on one of them.

  • Speech/signal processing (DSP design)
    • Improve noise suppression (get rid of musical noise) and residual echo suppression
    • Improve packet-loss concealment (PLC)
    • Re-write the built-in voice activity detector (VAD)
    • Improve the 2.15 kbps vocoder mode (there are even 4 unused bits left to use)
    • Algorithmic optimizations (see if some searches can be simplified/approximated)
  • Complete fixed-point (DSP development)
    • Wideband
    • VBR
    • Rest of the narrowband modes
    • Preprocessor (noise suppression, AGC)
    • Jitter buffer
    • Arch-specific optimization
    • More...
  • Tune (playing with parameters)
    • Noise weighting filter
    • Perceptual enhancement
  • Features (plain C programming)
    • Implement maximum VBR bit-rate
    • Implement peeling (write functions to strip some of the bits)
      • Peel high-band (wideband -> narrowband)
      • Transform 24.6 kbps mode to 15 kbps mode
  • Documentation
    • Use questions from the mailing list to create a better FAQ on this wiki
    • Update the Speex manual based on recent papers
    • Improve libspeex documentation
    • Write good example code
    • Split off the documentation of SpeexDSP ... the latest release "speexdsp-1.2rc3.tar.gz" from 2015 still contains "The Speex Codec Manual Version 1.2 Beta 3" from 2007 ... it documents the codec part, not the DSP part, further [1] contains some dead links, and it does not prominently document that only the codec is deprecated, but the DSP part is not

External links