matlab中sound函数中取样频率变化了为什么声音也变了?
发布网友
发布时间:2022-04-25 12:24
我来回答
共2个回答
热心网友
时间:2024-01-28 04:28
y相当于是你在0.25s录好的声音,在调用sound函数时你要用Fs作为参数,相当于正常速度录正常速度放,若改成Fs1相当于正常速度录而快速播放,反之当选择比Fs小的数时,相当于慢放,因此录放速度不同都会产生变调,它们直接控制声卡的输出速度。追问
是不是这样理解,Fs增大,则图上取到的离散的点变密了。但是还想问问取Fs1的时候,这个图会变成什么样?为什么会造成快速播放的效果?
追答1、快播是因为声卡每秒输出的数据点数多了,你可以在命令窗口依次执行sound(y,Fs*2) sound(y,Fs) sound(y,Fs/2) sound(y,Fs/20)测试一下声音持续的时间和声效。
当然声卡在输出声音时已经做了DAC,即其中包含数据内插和滤波,变调有滤波的影响。
2、若对一个已知波形进行采样,提高采样率,单位时间内得到的样点数肯定会增加,所以黑点会加密
clc
clear all
Fs=32768;%取样频率
Fs1=55000;%取样频率测试1
t=0:1/Fs:0.25;
fr=697;
y=sin(2*pi*fr*t);
t1=0:1/Fs1:0.25;
fr=697;
y1=sin(2*pi*fr*t1);
figure
subplot(211)
stem(t,y,'.')
hold on
plot(t,y,'r-.')
subplot(212)
stem(t1,y1,'.')
hold on
plot(t1,y1,'r-.')
执行完上述代码后,在执行下面的代码
subplot(211)
axis([0 0.0015 -1 1])
subplot(212)
axis([0 0.0015 -1 1])
热心网友
时间:2024-01-28 04:29
声音是一种波,不同的频率组成的波不一样,体现出来就是声音会不一样