EVRC-B
Enhanced Variable Rate Coder Speech Codec B
EVRC-B was designed for use in wideband spread spectrum (CDMA) systems.
Features List
- Functions are C-callable.
- Multi–Channel capable.
- Can be integrated with echo cancellers, and tone detection/regeneration.
- Encodes frames of 20 ms sampled at 8KHz (160 samples) using above algorithms.
- Bit-exact with all EVRCB 3GPP2 test sequences
- The implementation support run time table relocation
- Fully interruptible Code
- Efficient scratch memory management with reduced stack requirements
- The C55x implementation is xDAIS/xDM1.0 complaint
Coding Rate: 8.5, 4.0, 2.0, and 0. 8 kbits
Sampling Rate: 8 kHz
Delay: 20 milliseconds
Availability
Platforms |
Texas Instruments – TI TMS320C7000 C7x || TMS320C6000 C64x / C64x+ / C66x || TMS320C5000 C55x |
Win32 Static Lib / DLL |
ADT EVRC is available on the above Platforms: Other configurations are available upon request.
Specifications
NOTE: We specify MIPS (Millions of Instructions Per Second) as MCPS (Millions of Instruction Cycles Per Second). Unless otherwise specified, peak MIPS are indicated.
↓ Click on links below to view specification tables.
EVRC-B C64x
CPU Utilization & Memory RequirementsAll Memory usage is given in units of byte.
Software | MIPS – Peak Loading | Program Memory | Data Memory | Scratch | Per Channel Data Memory |
EVRC-B | 28 | 1201.8KB | 7.46KB | 3004 | 2176 |
EVRC-B C55x
CPU Utilization & Memory RequirementsAll Memory usage is given in units of byte.
Software | MEGACYCLES /SEC* | Program Memory | Data Memory |
Encode | 23.1 | 83.94 | 45.81 |
Decode | 8.1 | 53.09 | 44.46 |
Encode/Decode | 31.2 | 118.7 | 48.19 |
*Measured with all program, constant tables, instance and CDP in SARAM, scratch in DARAM. All performance statistics with DTMF and TTY flags turned off.
EVRC-B Win32
CPU Utilization & Memory Requirements
All Memory usage is given in units of byte.
Software MIPS – Peak Loading Program Memory Data Memory Scratch Per Channel Data Memory Encode 229 — — 2280 7244 Decode 57 — — 3004 2180 Encode/Decode 306 357KB 41KB — —
Description
Enhanced Variable Rate Coder B (EVRC-B) is a speech codec used by CDMA (Code Division Multiple Access) networks. EVRC-B is an extension to EVRC and compresses each 20 millisecond FRAMES of 8000 Hz, 16-bit sampled speech input into output frames of one of the four different sizes: Rate 1 – 171 bits/frame, Rate 1/2 – 80 bits/frame, Rate 1/4 – 40 bits/frame, Rate 1/8 – 16 bits/frame.
One significant enhancement in EVRC-B vocoder is the use of 1/4-rate frames that were not used in EVRC. The EVRC-B makes use of the intermediate coding rates through increased awareness of the nature of the individual speech samples. This provides lower average data rates compared to EVRC, for a given voice quality.
The EVRC-B decoder works on various rate packets, performs FEC and generates 20msec speech data frames. With a sampling frequency of 8000Hz the decoder output frame contains 160 input samples. The format of the output samples is assumed to be 16 bit uniformly quantized (linear).
Function APIs
API function call summary
InitializeEVRC_BEncoderChannel (. . .) Initializes the EVRC-B encoder
InitializeEVRC_BDecoderChannel (. . .) Initializes the EVRC-B decoder
EncodeEVRC_B (. . .) Executes the EVRC-B encoder
DecodeEVRC_B (. . .) Executes the EVRC-B decoder
Applications
Wireless/Mobile/Personal Communications (base-stations and handset)