Each service, program, phone, gateway, etc typically supports several different codecs, and when talking to each other, negotiate which codec they will use.
As an example, a Cisco ATA-186 supports these codecs:
G.723.1, G.711a, G.711u, G.729a
As an example, a Cisco 7960 supports (Firmware P0S3-06-0-00):
G.711a, G.711u, G.729a
Some codecs require payment of royalities for their use in a product or program. See Codec Patents for more information.
- GIPS Family - 13.3 Kbps and up
- GSM - 13 Kbps (full rate), 20ms frame size
- iLBC - 15Kbps,20ms frame size: 13.3 Kbps, 30ms frame size
- ITU G.711 - 64 Kbps, sample-based Also known as alaw/ulaw
- ITU G.722 - 48/56/64 Kbps ADPCM 7Khz audio bandwidth
- ITU G.722.1 - 24/32 Kbps 7Khz audio bandwidth (based on Polycom's SIREN codec)
- ITU G.722.1C - 32 Kbps, a Polycom extension, 14Khz audio bandwidth
- ITU G.722.2 - 6.6Kbps to 23.85Kbps. Also known as AMR-WB. CELP 7Khz audio bandwidth
- ITU G.723.1 - 5.3/6.3 Kbps, 30ms frame size
- ITU G.726 - 16/24/32/40 Kbps
- ITU G.728 - 16 Kbps
- ITU G.729 - 8 Kbps, 10ms frame size
- Speex - 2.15 to 44.2 Kbps
- LPC10 - 2.5 Kbps
- DoD CELP - 4.8 Kbps
Some tables comparing different codecs:
- Cisco.com: Voice Over IP - Per Call Bandwidth Consumption
- http://www.cs.columbia.edu/~hgs/audio/codecs.html
- http://www.speex.org/comparison/
- http://www.terracall.com/FAQs_white_1.aspx
- http://www.signalogic.com/index.pl?page=codec_samples
- http://ozvoip.com/codecs.php Page containing codec information and codec comparison
Tables showing which VoIP clients support which codecs
- http://compare.ozvoip.com/codecsupport.php (please email corrections and additions to webmaster at ozvoip dot com)
Audio Examples of different Codecs
A Portal for all types of Software codecs (Audio, Video, Image & Speech)
News
- 2004-12-07 - SPIRIT Offers Ip-Multi Rate - Next Generation VoIP Codec; Dedicated IP-Multi Rate Codec Provides FM-Radio Speech Quality in IP Networks Businesswire
- 2005-05-09 - Free online codec conversion tool available at asteriskguru.com.
Some potentially useful info:
Keep in mind the link layer framing that is used as well. ATM (what most of the internet backbones use) has 53 byte fixed cells. There are 5 bytes of headers. Only one packet can exist in a group of cells (a group is 1 or more cell until the whole packet is sent). This means that if you try to send a 80 byte IP packet over an ATM link it will be chopped into 2 ATM cells with 16 bytes of padding. This is only 83% efficient. By adjusing your sample size you may find that your throughput can be increased because you transfer more useful data and less padding. Make your sample size too small and you have a lot of IP overhead, make it too large and it can cause problems with call quality (think of a 30ms jitter buffer and 30ms sample sizes, in effect you have no jitter buffer because packets cant be reordered, jitter cant be controlled, etc). Its a fine balance, but something to consider. Even if you dont use ATM the internet backbones often do, so this is something that may make slightly faster transfers and better network efficiency. DSL, E1, T1, SMDS, OC1, OC3, OC12 etc generally all use ATM, so its quite common.See also
- Bandwidth consumption
- Asterisk codecs
- A complete list of ITU G series recommendations
- The Basics: Cisco.com: Waveform coding techniques
- Open Source Codecs
- Codec Software
- Wideband VoIP
- Voip-info.org Home Page | VoIP Phones | Open source Voip Software |VoIP Debugging | VoIP Service Providers | VoIP Sites | VoIP Gateways
Page Changes
I am so new to Linux its not even funny
1. How to download, install and configure the system to see the codecs.
I am down to a hand full of hair on my head, if some one does not rescue me I might start pulling other peoples hair out !! :-)
Thanks
David
Which Codec for which network?
I'd like to see a table or graph of different codec performance versus Mean Opinion Score (MOS) score for different values of:
minimum link bandwidth
network latency
jitter
packet loss
Then you could predict whether it is interesting to run voip to a particular location on a quality versus the cost decision.
Anyone?
What CODEC
How can I know if I am using
g.726 - 40
g.726 - 32
g.726 - 16
etc.
or ASTERISK only support g.726 - 32
Codec support by VoIP clients