Click in the beginning and end of pure tone

조회 수: 9 (최근 30일)
Dominik Deml
Dominik Deml 2023년 5월 15일
댓글: Les Beckham 2023년 5월 21일
I am wondering why there is a kind of clicking sound in the beginning
but especially in the end of a pure tone.
What I am doing:
spl_rms = 60;
spl_p0 = 20e-6;
spl_max = spl_p0 * 10^(60/20) * sqrt(2);
fs = 20000;
fsig = 1000;
n = 0:1*fs - 1;
t = n/fs;
sig = spl_max*sin(2*pi*fsig*t);
sound(sig, fs);
What is the reason for this clicking sound in the end?
What can I do against it, so how can I modify `sig` to improve this?
  댓글 수: 2
Rik
Rik 2023년 5월 15일
I don't see any reason why that would be the case. Are you sure the problem is in Matlab and not your audio device?
You could try to add a low amplitude signal (essentially 0) at the end of sig, to see whether the click is at the end of any sound() call, or whether is is in your signal.
Dominik Deml
Dominik Deml 2023년 5월 18일
Sorry, my fault. It is not because of Matlab, it is because of my audio device BUT I want to use Matlab to fix this problem.

댓글을 달려면 로그인하십시오.

채택된 답변

Les Beckham
Les Beckham 2023년 5월 15일
편집: Les Beckham 2023년 5월 15일
Try adding ramps at the beginning and end to avoid the discontinuities of starting and stopping the tone.
spl_rms = 60;
spl_p0 = 20e-6;
spl_max = spl_p0 * 10^(60/20) * sqrt(2);
fs = 20000;
fsig = 1000;
n = 0:1*fs - 1;
t = n/fs;
sig = spl_max*sin(2*pi*fsig*t);
ramp = linspace(0, 1, 200);
sig(1:200) = sig(1:200) .* ramp;
sig(end-199:end) = sig(end-199:end) .* flip(ramp);
tiledlayout('Horizontal', 'TileSpacing', 'compact')
nexttile
plot(sig)
xlim([1 500])
grid on
nexttile
plot(sig)
xlim([19500 20000])
grid on
% sound(sig, fs);
  댓글 수: 4
Dominik Deml
Dominik Deml 2023년 5월 19일
Wow, thank you so much!
Les Beckham
Les Beckham 2023년 5월 21일
You are quite welcome.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by