NICAM

Near Instantaneously Companded Audio Multiplex
251.0 次下载
更新时间 2013/5/24

查看许可证

Although NICAM is now defunct technology, it is still an interesting and compact method of audio bit rate reduction, that may provide an introduction to more advanced bit rate reduction strategies such as those found in MPEG.

y = NICAM(x,fs)
[y,x14] = NICAM(...)

y = NICAM(x,fs) applies the NICAM audio bit-rate reduction algorithm to the input column vector or matrix x sampled at fs Hz. If x is a matrix, then the NICAM algorithm is applied down the columns of x. The input x should be in the range [-1,1]. The NICAM algorithm has the following steps:

1. Convert samples to 14-bit accuracy.
2. Divide the signal into 1 ms frames.
3. Define the "coding range" for each frame from the largest (absolute) sample in the frame.
4. Remove a number of LSBs for each sample in a frame according to the coding range for the frame. The number of LSBs is:
- 4 if coding range 1 (max abs amplitude is 1XXXXXXXXXXXXX);
- 3 if coding range 2 (max abs amplitude is 01XXXXXXXXXXXX);
- 2 if coding range 3 (max abs amplitude is 001XXXXXXXXXXX);
- 1 if coding range 4 (max abs amplitude is 0001XXXXXXXXXX);
- 0 if coding range 5 (max abs amplitude is 00001XXXXXXXXX).
(Note that this notation uses binary integer rather than twos complement)
5. Removed bits are replaces with intermediate values and samples are converted back to 14-bit.

[y,x14] = NICAM(...) returns the 14-bit version of the input. The algorithm re-dithers the audio, using TPDF dither, before it is companded to 14-bit resolution.

引用格式

Christopher Hummersone (2024). NICAM (https://www.mathworks.com/matlabcentral/fileexchange/41913-nicam), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2012b
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Simulation, Tuning, and Visualization 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.0.0.0