您的位置:首页 > 其它

1. 读取WAV声音文件

2012-11-18 09:05 344 查看
1. 读取WAV声音文件

[plain] view plaincopy

% wavread(filename) 读取一个WAVE文件,并返回采样数据到向量y中,Fs表示采样频率, bits表示采样位数  

[y, Fs, bits] = wavread('drum.wav');  

 

%假设声音文件有两个声道,我们只分析第一个声道,如果要分析第二个声道可以改为:ft=y(:,2);  

ft = y(:,1);  

sigLength = length(ft); %获取声音长度  

 

%可以使用sound函数来播放声音  

sound(y, Fs, bits)  

>> left = y(:,1);

>> leftSigLength = length(left)

leftSigLength =

      106764

>> sound(y, Fs, bits)

>> ydown10=y./10;

>> sound(ydown10, Fs, bits)

>> yup10=y.*10;

>> sound(yup10, Fs, bits)

>> sound(ydown10, Fs, bits)

>> sound(y, Fs, bits)

>> sound(yup10, Fs, bits)

>> sound(y, Fs, bits)

>> sound(ydown10, Fs, bits)

>> yleftHirightLow=[yup10(:,1);ydown10(:,1)];

>> yleftHirightLow=[yup10(:,1),ydown10(:,1)];

>> sound(yleftHirightLow, Fs, bits)

>> sound(yleftHirightLow, Fs, bits)

>> yleftLowrightHi=[ydown10(:,1),yup10(:,1)];

>> sound(yleftLowrightHi, Fs, bits)

>>

>> wavwrite(ydown10,Fs,'ydown10.wav');

>> wavwrite(yup10,Fs,'yup10.wav');

Warning: Data clipped during write to file:yup10.wav

> In wavwrite>PCM_Quantize at 248

  In wavwrite>write_wavedat at 272

  In wavwrite at 114

>> wavwrite(yleftHirightLow,Fs,'yleftHirightLow.wav');

Warning: Data clipped during write to file:yleftHirightLow.wav

> In wavwrite>PCM_Quantize at 248

  In wavwrite>write_wavedat at 272

  In wavwrite at 114

>> wavwrite(yleftLowrightHi,Fs,'yleftLowrightHi.wav');

Warning: Data clipped during write to file:yleftLowrightHi.wav

> In wavwrite>PCM_Quantize at 248

  In wavwrite>write_wavedat at 272

  In wavwrite at 114

>>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: