音频信号的正常化,恢复到原来的MATLAB [英] normalisation of audio signal and reverting to original matlab
问题描述
我做音频速记的项目。我需要嵌入在音频信号(.wav文件)一些文本。
所以,我转换范围从-1到1(双)的音频信号-32767至+32767(INT16),所以我冷LSB系数的嵌入的数据。
现在的问题是,我不知道如何从INT16到各自的双等值得到的值。
I am doing a project in audio stenography. I need to embed some text in an audio signal(.wav file) . So i converted the audio signal ranging from -1 to 1(double) to -32767 to +32767(int16) so i cold embed the data in the LSB of the coefficients. The problem now is that i don't know how to get the values from int16 to their respective double equivalents.
我用下面的code正常化:
I have used the following code for normalization:
[y, fs, nBits,opts]=wavread('one.wav');
y2=y-(min(y));
y2=y2/max(y2);
y2=y2* (2^16 - 1) - 2^15;
y2b=int16(y2);
任何人都可以指导我一下这个过程相反?
can anyone guide me about the reverse process of this?
推荐答案
elomage逆转正常化,我看不出有任何理由这样做,因为LSB的丢失。
elomage reversed the normalisation, I don't see any reason to do so because the lsb gets lost.
double(x)/intmax(class(x))
这篇关于音频信号的正常化,恢复到原来的MATLAB的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!