matlab中 sound函数怎么用

matlab中 sound函数怎么用,第1张

1、sound(y):以默认采样率 8192 赫兹向扬声器发送音频信号 y。y为音频信号矩阵。

2、sound(y, Fs):以采样率 Fs 向扬声器发送音频信号 y。Fs为采样率,即单位时间的样本个数(Hz)。

3、sound(y, Fs, nBits):对音频信号 y 使用 nBits 的采样位数。nBits表示每个样本点用几个比特表示,即分辨率。

sound():将信号数据矩阵转换为声音。

扩展资料:

示例:

1、加载示例文件 gongmat,其中包含样本数据 y 和采样率 Fs,然后收听音频。

load gongmat;

sound(y);

2、以录制的采样率的两倍播放 Handel 的片段“Hallelujah Chorus”。

load handelmat;

sound(y, 2Fs);

3、以特定位深度播放样本数据。

load handelmat;

nBits = 16;

sound(y,Fs,nBits);

%你好,该程序读mywavwav文件,然后显示频谱以及波形。注意,mywavwav文件不要太长,否则运算会很慢。

[y,Fs,bits]=wavread('mywavwav');%读出信号,采样率和采样位数。

y=y(:,1);%我这里假设你的声音是双声道,我只取单声道作分析,如果你想分析另外一个声道,请改成y=y(:,2)

sigLength=length(y);

Y = fft(y,sigLength);

Pyy = Y conj(Y) / sigLength;

halflength=floor(sigLength/2);

f=Fs(0:halflength)/sigLength;

figure;plot(f,Pyy(1:halflength+1));xlabel('Frequency(Hz)');

t=(0:sigLength-1)/Fs;

figure;plot(t,y);xlabel('Time(s)');

比如我的wav文件名字叫做beepwav

wavdata = wavread('beepwav');

x = 1:1:length(wavdata);

% 这一句是找到数据的长度,以便于建立一个横轴的数组

plot(x,wavdata);

[data,fs,bits] =wavread('123wav');

x = data(:,1);

t=((0:length(x1)-1)/fs);

plot(t,x);

X =abs(fft(x));

plot(X)

可以用matlab函数sound实现。该函数的输入参量是音频数据向量、采样频率和转换位数。

可以自己写些声音数据。下面的声音声调和频率有关,长度和数据长度有关:

例如:

sound(sin(2pi25(1:4000)/100));

响两声就是:

sound(sin(2pi25(1:4000)/100));

sleep(1);

sound(sin(2pi25(1:4000)/100));

MATLAB也自带了很多声音:

%鸟声

load chirp

sound(y,Fs)

%锣声

load gong

sound(y,Fs)

%哈里路亚

load handel

sound(y,Fs)

%笑声

load laughter

sound(y,Fs)

%啪哒声

load splat

sound(y,Fs)

%火车

load train

sound(y,Fs)

用int16是16 位,整型数,同数据存储的方式有关;

最后一行中读入x中的只读了长为LENGTH的数据;如果用wavread是全部读取wav的所有数据。如果要进行分帧处理,还是逐段读入会更好一点。

以上就是关于matlab中 sound函数怎么用全部的内容,包括:matlab中 sound函数怎么用、matlab 做音频文件(WAV格式)的频谱图程序 以及做时域波形图的程序、求用MATLAB分析音频文件的频谱等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9621614.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存