iLBC (internet Low Bitrate Codec) is designed for narrow band speech and has two supported bit rates. The payload bit rate of 13.33 kbit/s has an encoding frame length of 30 milliseconds while the payload bit rate of 15.20 kbit/s has an encoding frame length of 20 milliseconds. iLBC uses a block-independent linear-predictive coding (LPC) algorithm. When the codec operates at block lengths of 20 ms, it produces 304 bits per block. Similarly, for block lengths of 30 ms it produces 400 bits per block. The two modes for the different frame sizes operate in a very similar way. Where they differ, it is usually explicitly noted by x/y, where x refers to the 20 ms mode and y refers to the 30 ms mode.
The iLBC speech codec is eminently suitable for robust voice communication over IP. The codec smoothly handles the case of lost frames through graceful speech quality degradation; lost frames may often occur in connection with lost or delayed IP packets. Standard low bit rate codecs exploit dependencies between speech frames, which unfortunately result in error propagation when packets are lost or delayed. In contrast, iLBC encoded speech frames are independent and so this problem will not occur. This unique technology gives iLBC robustness against packet loss and delay.
The iLBC algorithm results in a speech coding system with a controlled response to packet loss similar to what is known from pulse code modulation (PCM) with packet loss concealment (PLC), such as the ITU-T G.711 standard which operates at a fixed bit rate of 64 kbit/s. At the same time, the algorithm enables fixed bit rate coding with a quality-versus-bit rate tradeoff close to state-of-the-art. For example, in comparison to G.729A, iLBC yields slightly better voice quality for about the same complexity of algorithms yet also has a higher robustness in dealing with packet loss. Some of the applications for which this coder is suitable are: real time communications such as telephony and videoconferencing, streaming audio, archival, and messaging.
Features
- MIPS/memory requirements for various platforms are available
- PSQM/PSQM+ values under different network conditions are also available.
- Bitrate 13.33 kbps (399 bits, packetized in 50 bytes) for the frame size of 30 ms and 15.2 kbps (303 bits, packetized in 38 bytes) for the frame size of 20 ms
- Basic quality higher then G.729A, high robustness to packet loss
- Computational complexity in a range of G.729A
- Speech quality better than G.729A and G.723.1.
- Better packet loss robustness compared to other low-bit rate codecs,including G.729A,G.729E,G.723.1 and G.728.
- iLBC supports multiple frame sizes giving increased flexibility to meet the needs of different applications and/or VoIP equipment.
- Provide low delay and high packet loss robustness for low-bit rate codecs.
- iLBC delivers the same basic quality as G.729E and exceeds G.729E under packet loss conditions
- Gain-shape waveform matching forward in time
- Gain-shape waveform matching backward in time
- Start state encoding
- Pitch enhancement
- Packet loss concealment
- Optimized for high performance on leading edge DSP architectures
- Multichannel implementation
Configurations
- DAA interface using linear codec at 8.0 kHz sample rate
- Direct interface to 8.0 kHz PCM data stream (A-law or μ-law)
- North American/International Telephony (including caller ID) support available
- Simultaneous DTMF detector operation available - (less than 10 talkoff hits on Bellcore test tape set)
- MF tone detectors, general purpose programmable tone detectors/generators available
- Data/Facsimile/Voice Distinction available
- Common compressed speech frame stream interface to support systems with multiple speech coders
- Dynamic speech coders selection if multiple speech codecs available
- Can be integrated with G.168 Echo Canceller and Tone Detection/Regeneration modules
-
Multiple ports can be executed on a single DSP