matlab画出语音波形,【语音信号处理】执行一个语音读入和波形绘制的Matlab程序...

.

使用wavread函数读入声音文件;注意:读入的语音数据是一个n

x 1的列向量。

.

对于波形的绘制主要使用下列几个函数:

使用plot画出读入的语音数据的波形;

使用subplot划分绘图子窗口;

使用title为绘制出的图形加入标题;

使用xlabel、ylabel对x轴和y轴加入说明。

二 . 将两个或多个声音数据混合为一个声音数据(混音),可以调整每个声音成份的大小。

可以使用length(本实验中用来获取声音矢量的长度)、max

(本实验中用来获取待混合的声音中,较长的声音的长度) 、zeros

(用来新建一个全零矢量或矩阵)等函数;

. 画出混合前以及混合后的声音波形,并使用title、xlabel、ylabel等函数标注坐标系图形信息;

三.

使用wavplay函数播放声音数据,并通过调整播放时的采样率改变播放速率(可以用耳机听不同采样率时的播放效果.

使用wavwrite函数将一个声音数据保存为一个wav格式的声音文件。

[y1,fs1,Nbits1]=wavread('e:\F2515.wav');

[y2,fs2,Nbits2]=wavread('e:\F2518.wav');

n1=length(y1);

n2=length(y2);

maxlength=max(n1,n2);

z=zeros(maxlength,1);

z(1:n1)=z(1:n1)+y1;

z(1:n2)=z(1:n2)+y2;

wavwrite(z,'e:\00mahui\test2.wav');

wavplay(z,1.5*fs2);

figure;

subplot(3,1,1)

,plot(y1),xlabel('时间'),ylabel('语音值'),title('语音波形1');

subplot(3,1,2)

,plot(y2),xlabel('时间'),ylabel('语音值'),title('语音波形2');

subplot(3,1,3)

,plot(z),xlabel('时间'),ylabel('语音值'),title('混合后得语音波形');

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值