G.723.1
Real-time implementation of the ITU G.723.1 voice coder
Dual rate speech coder for multimedia communications.
Features List
Fixed bit rate (5.3 kbit/s with 20 byte 30 ms frames, 6.3 kbit/s with 24 byte 30 ms frames)
eXpress DSP™ Compliant.
Functions are C-callable.
Capable of in-band synchronization.
Can be integrated with echo cancellers, and tone detection/regeneration.
C64x xDM Compliant: easy codec implementation and integration for DaVinci™ Technology
Coding Rate: 5.3 or 6.3 kbps
Sampling Rate: 8 kHz
Delay: 37.5 msec
Availability
Platforms |
Arm ® Devices – Armv7-A / Armv8-A || Armv9-A || Armv7-M / Armv8-M |
Texas Instruments – TI TMS320C7000 C7x, TMS320C6000 C64x/C64x+, C674x, TMS320C5000 C55x / Legacy C54x |
Windows x86 (32-bit) / x64 (64-bit) |
Linux 32-bit / 64-bit |
ADT G723.1 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.
Armv7-A G.723.1 Cortex-A8/A9/A15 | Armv8-A, Armv9-A
CPU Utilization & Memory RequirementsMemory usage is given in units of byte
Function | MIPS (6300 sampling rate) | MIPS (5300 sampling rate) | Program Memory | Data Memory | Per-Channel Data Memory | Scratch |
Encode | 55.3 | 50.6 | 166K | 18,980 | 1600 | 8 |
Decode | 6 | 6 | 504 | 8 |
G.723.1 Cortex-M4/M7 | ARM9e/ARM11
CPU Utilization & Memory RequirementsMemory usage is given in units of byte
Function | MIPS (Peak) | Program Memory | Data Memory | Per-Channel Data Memory | Scratch |
Encode | 224 | 193K | 18,980 | 1600 | 8 |
Decode | 13 | 504 | 8 |
G.723.1 Armv8-M Cortex-M33/M35 – Preliminary
CPU Utilization & Memory RequirementsMemory usage is given in units of byte
Function | MIPS (Peak) | Program Memory | Data Memory | Per-Channel Data Memory | Scratch |
Encode | 314 | 193K | 18,980 | 1600 | 8 |
Decode | 18.2 | 504 | 8 |
G.723.1 C64x+
Memory usage is given in units of byteFunction | Program Memory | Data Memory | Per-Channel Data Memory | Stack | |
Encode | Common 10208 | 35232 | 23880 | 1420 | 444 |
Decode | 9152 | 21432 | 400 | 260 |
G.723.1 C64x
Memory usage is given in units of byteFunction | Program Memory | Data Memory | Per-Channel Data Memory | Stack | |
Encode | Common 10112 | 40128 | 23812 | 1420 | 444 |
Decode | 8920 | 21364 | 400 | 260 |
MIPS | MIPS | MIPS | |
Rate | C62x | C64x* | C64x+ |
5.3 Encode | 6.1 | 7.8 | 7.2 |
5.3 Decode | 0.57 | 0.7 | 0.62 |
6.3 Encode | 5.7 | 7.3 | 7 |
6.3 Decode | 0.57 | 0.7 | 0.62 |
Note: Please contact us for C62x specifications.
*G.723.1 Annex A , which specifies silence suppression, voice activity detection (VAD), discontinuous transmission (DTX), and comfort noise generation (CNG), is included.
Rate | Function | MIPS | Program Memory | Data Memory | Stack | Per Channel Data Memory |
5.3 Encode | 11.2 | 21502 | 21716 | 80 | 1480 |
5.3 Decode | 1.3 | 424 | |||
6.3 Encode | 11.2 | 21502 | 21716 | 80 | 1480 |
6.3 Decode | 1.4 | 424 |
*G.723.1 Annex A , which specifies silence suppression, voice activity detection (VAD), discontinuous transmission (DTX), and comfort noise generation (CNG), is included.
Rate | Function | MIPS** | Program Memory | Data Memory | Stack | Per Channel Data Memory |
5.3 Encode | 11.2 | 21620 | 20744 | 80 | 1480 |
5.3 Decode | 1.3 | 424 | |||
6.3 Encode | 11.2 | 21620 | 20744 | 80 | 1480 |
6.3 Decode | 1.4 | 424 |
**Note: The MIPS is measured when the program placed internally, and channel and tables are placed in the DARAM. For the low memory version build, the total MIPS usage increases by 0.5 MIPS
G.723.1 C54x
CPU Utilization & Memory RequirementsMemory usage is given in units of 16 bit word.
Coding Rate | MIPS | Program Memory | Table Memory | Data Memory | Per-Channel Data Memory |
5.3 | 16.5 | 13.03 K | 4465 | 2K | 1.3K |
6.3 | 16.9 | 13.03 K | 4465 | 2K | 1.3K |
G.723.1 C54x Annex A*
CPU Utilization & Memory RequirementsMemory usage is given in units of 16 bit word.
Coding Rate | MIPS | Program Memory | Table Memory | Data Memory | Per-Channel Data Memory |
5.3 | 22.6 | 14 K | 10 K | 1 K | 1 K |
6.3 | 20.56 | 14 K | 10 K | 1 K | 1 K |
*G.723.1 Annex A , which specifies silence suppression, voice activity detection (VAD), discontinuous transmission (DTX), and comfort noise generation (CNG), is included.
G.723.1 Linux PC-Windows
CPU Utilization & Memory RequirementsMemory usage is given in units of byte
Function | MIPS (Peak) | Program Memory | Data Memory | Per-Channel Data Memory | Stack | Scratch |
Encode | 95 | 70K | 19K | 2100 | <20 KB | 16 |
Decode | 8 |
G.723.1 Linux 32 Bit*
CPU Utilization & Memory RequirementsMemory usage is given in units of byte
*Contact sales for 64 Bit numbers
Function | MIPS (Peak) | Program Memory | Data Memory | Per-Channel Data Memory | Scratch |
Encode | 145 | 160K | 19,176 | 1600 | 8 |
Decode | 8 | 504 | 8 |
Description
The Adaptive Digital Technologies’ G.723 voice coder is a real-time implementation of the ITU G.723.1 voice coder. It is used with many applications that require high quality, robust speech reproduction. G.723.1 compresses voice audio in 30 ms frames. An algorithmic look-ahead of 7.5 ms duration means that total algorithmic delay is 37.5 ms.
G.723.1 Annex A , which specifies silence suppression, voice activity detection (VAD), discontinuous transmission (DTX), and comfort noise generation (CNG), is included.