why does the sound with different sampling frequency sounds the same ?
5 views (last 30 days)
Show older comments
Dear people,
I am trying to write an audio with the following lines. However, every after I write an audio into a file and play it, they sound the same no matter what the sampling frequency is.
clear all
clc
FrequencySampling = 2500; % 2500 for safe 10000 for shock
duration =17;
repeats=1;
t = linspace(0, duration, FrequencySampling*duration+1); % Time Vector + 1 sample
t(end) = []; % remove extra sample
w = 2*pi*1000; % Radian Value To Create 1kHz Tone
for i=1:repeats
s = sin(w*t);
sound(s,FrequencySampling);
pause(5) %ITI 60 sec
end
audiowrite('shock.wav',s,FrequencySampling);
Please recommend me any possible reasons or let me know if I have done sth wrong.
0 Comments
Accepted Answer
Akira Agata
on 7 Jul 2020
That's the basic of the 'Sampling theorem'. As long as frequency component of the signal is less than Nyquist frequency ( = sampling frequency * 0.5), the original signal can be re-generated.
Looking at your code, the signal frequency is 1 [kHz] and both sampling frequencies (2.5 [kHz] and 10 [kHz]) satisfy the Nyquist condition. So the regeneratd signal sounds the same.
2 Comments
Akira Agata
on 7 Jul 2020
Then you need to compare one re-generated signal with sufficient sampling frequency (= satisfies Nyquist condition) and another signal with insufficient sampling frequency.
The following is an example. (please compare the two .wav files with different sampling frequency)
load handel.mat
% Sufficient sampling frequency (8192 [Hz])
audiowrite('handel_8192.wav',y,Fs);
% Insufficient sampling frequency (4096 [Hz])
audiowrite('handel_4096.wav',y(1:2:end),Fs/2);
More Answers (0)
See Also
Categories
Find more on Audio and Video Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!