DCC Day Two - Codec 2:
Bruce Perens, K6BP - Codec2: An Open Future for Digital Voice
Bruce outlines his plans for an open non-propriatery voice codec for amateur radio applications.Bruce started with a quick demo of a male and female voice recorded at 8khz 16bits. Comparing a 3.75 second sample of 48kbyte size to a 1050 byte codec2 encoding of the same audio most in the audience could not tall ANY difference.
Bruce discusses the various legal issues involving patents and trade secrets making the use of most codecs, including the AMBE codec used by D-STAR.
OGG Theora is threatened by patents, but we aren't being told what they are.
Speex was proposed but it isn't really what we want.
David Rowe, VK5DGR, an Australian Open Source developer with a Ph.D. in Speech Coding was recommended by the author of the speex codec as someone who could help. Bruce planned on trying to find financing to help pay David to help develop a viable speech codec. But in the depths of the financial problems that became impossible.
Fortunately David became re-interested in Amateur Radio and decided to do the work of expanding some of his previous work and producing a viable speech encoder for free. Visit his site and toss him a few shekels.
Bruce has a number of slides from David showing some of the details of the process of speech modeling. Very detailed and if the slides show up on the TAPR site they are well worth looking at.
Alpha V0.1 codec - subject to rapid change
- 51 bits per 20ms frame or 2550 bits/sec
Everything in the codec so far have prio art that is either patent expired, or published and never pattented by David himself.
Desired improvements include:
- getting Toll quality audio at 2000 bits/second, lower bit rates
- Better background noise performance
- FEC and non-redundant error correction
- integration with modem and test over radio
- convert the code from floating point to fixed point
- convert the code to a library that matches the speex library?
- Find a way to replace the AMBE codec in D-STAR with the Codec2
- Lots of others...
Bruce's initial project details at: http://codec2.org/
Code at: http://www.rowetel.com - look for the link for Codec2