MELP - Mixed Excitation Linear Predictive
Department of Defense (DoD) Speech Coding Standard
Suitable for band limited or efficiency limited communication systems such as satellite links and military applications.
Features List
Functions are C-callable
Multiple channel capable
NATO standard codec
- Efficient in computational requirements
MELP DoD standard specifies a 2400 bps mode of operation.
MELPe is a triple-rate low codec that supports rates of 600 bps, 1200 bps, and 2400 bps.
Coding Rate: 2.4 kbps
Sampling Rate: 8 kHz
Availability
Platforms |
Arm ® Devices Armv7-A || Armv7-M / Armv8-M || Legacy Cortex-M3, ARM9E |
Texas Instruments – TI TMS320C6000 C64x/C64x+/C66x, C674x, C62/C67 | TMS320C5000 C55x |
ADT MELP is available on the above Platforms: Other configurations are available upon request.
Specifications
TMS320C6000
MELP C6x- C62x, C64x, C67x
CPU UTILIZATION & MEMORY REQUIREMENTSAll Memory usage is given in units of byte
Function | MIPS | Program Memory | Data Memory | Scratch Memory | Per-Channel Data Memory |
Encode | 21.2 | 53312 | 19280 | 3080 | 2480 |
Decode | 14.7 | 57632 | 904 | ||
Encode / Decode | 35.8 | 61248 | 3384 |
MELP C64x+ / C66x / C674x
CPU UTILIZATION & MEMORY REQUIREMENTSAll Memory usage is given in units of byte
Function | MIPS | Program Memory | Data Memory | Scratch Memory | Per-Channel Data Memory |
Encode | 21.2 | 59056 | 40281 | 3080 | 2480 |
Decode | 9.3 | 58329 | 39005 | 904 | |
Encode / Decode | 30.5 | 654897 | 40297 | 3384 |
TMS320C5000
MELP C55x
CPU UTILIZATION & MEMORY REQUIREMENTSAll Memory usage is given in units of byte
Function | MIPS | Program Memory | Data Memory | Scratch Memory | Per-Channel Data Memory |
Encoder | 24.3 | 21372 | 19456 | 3080 | 2480 |
Decoder | 15.1 | 1376 | 896 |
MELP ARM Cortex-A – ARMv7 | ARMv8
CPU UTILIZATIONMIPS | MIPS (600bps) | MIPS (1200bps) | MIPS (2400bps) |
Encoder | 46 | 44 | 27 |
Decoder | 17 | 17 | 17 |
MELP ARM Cortex-M4 | M7
CPU UTILIZATIONMIPS | MIPS (600bps) | MIPS (1200bps) | MIPS (2400bps) |
Encoder | < 60 | < 50 | < 50 |
Decoder | < 30 | < 30 | < 25 |
MEMORY REQUIREMENTS
All Memory usage is given in units of byte
Cortex-M4 Function | Program | Channel | Scratch | Tables | Data |
Encoder | 100 k | 6560 | 6984 | 148 k | 63 k |
Decoder | 1376 |
Description
MELP Speech Coder was developed by the US military based upon the LPC-based CELP standard vocoder for low-bitrate communications. It is very efficient in its computational requirements. This translates into relatively low power consumption, an important consideration for portable systems.
MELP codec is robust in difficult background noise environments such as found in military communications.
MELP is used mainly in military applications and satellite communications, secure voice, and secure radio devices.
Function API's
API function call summary
InitializeMelpEncoderChannel (. . .) Initializes the MELP encoder
InitializeMelpDecoderChannel (. . .) Initializes the MELP decoder
EncodeMelp (. . .) Executes the MELP encoder
DecodeMelp (. . .) Executes the MELP decoder