Skip to content

Simple CELP voice codec implementation in Python

License

Notifications You must be signed in to change notification settings

spiccinini/celp_codec

Repository files navigation

celp_codec

This is a simple CELP voice codec implementation. http://en.wikipedia.org/wiki/Code-excited_linear_prediction

Features

  • Encoding and decoding from multiple WAV and AIFF formats.
  • Support file or stdin/stdout
  • Real time processing, encode and decode from streams.
  • Configurable
    • LPC order
    • Frame length
    • Number of subframes
    • Adaptive codebook size
    • Multiple frame windows ('hanning', 'boxcar', etc)
    • Weighting coefficients

Dependencies

Future improvements

  • Implement fixed codebooks of different sizes
  • Support more sample rates (currently only 8 kHz)
  • Preprocesing filter (high pass, and equalization)
  • Convert LPC (linear prediction coefs) to LSP (linear spectral pairs)
    • Quantize LSP
    • Convert LSP to LPC

About

Simple CELP voice codec implementation in Python

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages