Difference between revisions of "Codecs"
From Kolmisoft Wiki
Jump to navigationJump to search
(17 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
Codecs are used to convert an analog voice signal to digitally encoded version. Codecs vary in the sound quality, the bandwidth required, the computational requirements, etc | Codecs are used to convert an analog voice signal to digitally encoded version. Codecs vary in the sound quality, the bandwidth required, the computational requirements, etc | ||
<br><br> | <br><br> | ||
List of codecs supported by MOR can be found [[MOR_Features#Codec_Support_.28Audio.2FVideo_Compression.29 | here]]. | |||
<br><br> | |||
= Per Call Bandwidth requirements for various codecs = | = Per Call Bandwidth requirements for various codecs = | ||
Line 35: | Line 39: | ||
|} | |} | ||
<br><br> | <br><br> | ||
= Transcoding = | |||
Transcoding is a conversion from one codec to another. It is performed by Asterisk (MOR) / RTPEngine (M4) when LegA and LegB (user's and provider's) codecs do not match. Transcoding uses a lot of system resources, so it should be avoided to get better server performance. | |||
<br><br> | |||
= Internal code in M4 DB = | |||
ulaw = 1 | |||
gsm = 3 | |||
g723 = 4 | |||
alaw = 8 | |||
g722 = 9 | |||
g729 = 18 | |||
opus = 97 | |||
speex = 98 | |||
g726 = 99 | |||
= | <br><br> | ||
= See also = | |||
* A more detailed guide about bandwidth calculations | * A more detailed guide about bandwidth calculations and related [http://www.cisco.com/en/US/tech/tk652/tk698/technologies_tech_note09186a0080094ae2.shtml metrics] | ||
* Also [http://www.voip-info.org/wiki/view/Codecs here] | * Also [http://www.voip-info.org/wiki/view/Codecs here] | ||
* A simple bandwidth calculator can be found [http://www. | * A simple bandwidth calculator can be found [http://www.bandcalc.com/ here] | ||
* [[Speex codec install]] | * [[Speex codec install]] | ||
* [[I want to use codec G.729r8 | G729r8]] | |||
* [[Which codecs should I choose for devices]] | |||
* https://www.rfc-editor.org/rfc/rfc3551.html |
Revision as of 07:42, 19 January 2023
Description
Codecs are used to convert an analog voice signal to digitally encoded version. Codecs vary in the sound quality, the bandwidth required, the computational requirements, etc
List of codecs supported by MOR can be found here.
Per Call Bandwidth requirements for various codecs
Codec & Bit Rate (Kbps) | Codec Sample Size (Bytes) | Codec Sample Interval (ms) | Voice Payload Size (Bytes) | Voice Payload Size (ms) | Bandwidth Ethernet (Kbps) |
G.711 (64 Kbps) | 80 Bytes | 10ms | 160 bytes | 20ms | 87.2Kbps |
G.729 (8 Kbps) | 10 Bytes | 10ms | 20 bytes | 20ms | 31.2Kbps |
G.723.1 (6.3 Kbps) | 24 Bytes | 30ms | 24 bytes | 30ms | 21.9Kbps |
G.723.1 (5.3 Kbps) | 20 Bytes | 30ms | 20 bytes | 30ms | 20.8Kbps |
G.726 (32 Kbps) | 20 Bytes | 5ms | 80 bytes | 20ms | 55.2Kbps |
G.726 (24 Kbps) | 15 Bytes | 5ms | 60 bytes | 20ms | 47.2Kbps |
G.728 (16 Kbps) | 10 Bytes | 5ms | 60 bytes | 30ms | 31.5Kbps |
G722_64k(64 Kbps) | 80 Bytes | 10ms | 160 bytes | 20ms | 87.2Kbps |
ilbc_mode_20(15.2Kbps) | 38 Bytes | 20ms | 38 bytes | 20ms | 38.4Kbps |
ilbc_mode_30(13.33Kbps) | 50 Bytes | 30ms | 50 bytes | 30ms | 28.8Kbps |
speex(24.6 Kbps) | 66 Bytes | 20ms | 56 bytes | 25ms | 42.4 Kbps |
speex(18.2 Kbps) | 46 Bytes | 20ms | 56 bytes | 20ms | 42.4 Kbps |
Transcoding
Transcoding is a conversion from one codec to another. It is performed by Asterisk (MOR) / RTPEngine (M4) when LegA and LegB (user's and provider's) codecs do not match. Transcoding uses a lot of system resources, so it should be avoided to get better server performance.
Internal code in M4 DB
ulaw = 1 gsm = 3 g723 = 4 alaw = 8 g722 = 9 g729 = 18 opus = 97 speex = 98 g726 = 99
See also
- A more detailed guide about bandwidth calculations and related metrics
- Also here
- A simple bandwidth calculator can be found here
- Speex codec install
- G729r8
- Which codecs should I choose for devices
- https://www.rfc-editor.org/rfc/rfc3551.html