CELT Codec, Blackfin
The Constrained Energy Lapped Transform (CELT) coder/decoder library for the Blackfin processor implements the CELT audio codec, which is one of the components of the Opus codec.
- Conformance Standard: Opus audio codec reference code.
- Reference Code Revision: v. 0.9.8, 31 Oct. 2011.
- Target Processor: Code compatible across the Blackfin Processor Family ADSP-BF5xx.
- Framework dependencies: None.
- Release format: Object code module with C source wrapper.
- Audio format: 16-bit signed-integer little-endian PCM samples, 1 or 2 channels, interleaved or individual channel buffers.
- Compressed format: Byte stream.
- Sample Rate: 8 to 96 kHz 1.
- Audio samples per block: Even values between 40 and 1024 samples 1.
- Compressed packet size: 2 to 1275 bytes per packet.
- Bit Rate: 0.9 to 1536 kbit/s 2.
- Audio block (“frame”) duration: 1 to 26.7 ms.
- Algorithmic Delay: 1 to 3.3 ms
- Multi-channel Fully re-entrant and multi-instancing capable.
The ADI Constrained Energy Lapped Transform (CELT) CODEC library implements the CELT codec as defined in release 0.9.8 of the Opus codec, configured to enable “custom modes”. The CELT codec provides high-quality audio compression comparable with Vorbis and AAC.
| CELT Library, Both Encoder and Decoder In Use
| Code RAM (KiB)
||Data RAM (KiB)||Constant Data Tables (KiB)|| MIPS
||Peak Average|| Average
| Mode Creation Functions and Mode Table
| Code RAM (KiB)
||Data RAM (KiB)||Constant Data Tables (KiB)
- Figures in this table represent a usage scenario example where both encoder and decoder are configured as follows: 48 kHz sample rate, 192 samples per frame, 36 bytes per encoded packet, encoder complexity 5, 1 audio channel.
- "MIPS" figures represent worst case over a number of test vectors and were measured using an optimal memory layout.
- "Data RAM" figures refer to a single encoder and decoder instance and includes stack, instance state, input and output single buffers. “Data RAM” requirements depend on the choice of sample rate and frame size.
- "Averaged Peak" indicates the maximum achieved by a moving average of the MIPS measurements calculated over four consecutive audio frames.
- The size and contents of a “mode” table are a function of sample rate and frame size. All instances of encoder and decoder can share a single “mode” table when they operate with the same frame size and sample rate.
- When the encoded bitstream contains errors, decoder peak MIPS can increase by 10-15% and decoder stack requirements by 24%.
- The CELT decoder features a packet-loss concealment mode. Use of this mode is meant to be sporadic, but it causes a substantial increase in decoder peak MIPS and stack usage.
- 1 KiB = 1024 bytes.
- Windows XP Professional SP3 (32-bit only).
- Windows Vista Business/Enterprise/Ultimate SP2 (32-bit only). It is recommended to install the software in a non-UAC-protected location.
- Windows 7 Professional/Enterprise/Ultimate (32 and 64-bit). It is recommended to install the software in a non-UAC-protected location.
- Minimum of 2 GHz single core processor, 3.3 GHz dual core is recommended.
- Minimum of 1 GB memory (RAM), 4 GB is recommended.
- Minimum of 2 GB hard disk (HDD) space is required.
- CrossCore® Embedded Studio for Analog Devices Processors.