Sound-command produces click-noise in a loop after each tone
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello,
I am trying to make my impedance curve audible. My procedure (in Matlab):
- normalize data (Z/mean(Z))
- normalized data * sound frequence (440 Hz)
- determine the time per tone with e.g. 0.1 s (here I need a "time-array", because later I want to add the capacitance as the time => every tone another time (same for the duration). Now I want to add all these single tones to one "song" (background: I am working with impedance curves and have to explain my work to non-professionals - perhaps it will be easier with audible support =) )
Now my problem: after every single tone there is a "click"-noise, like turning old speakers on and off. I also tried to stick the sound vectors first together and play then the "sound-total" at one piece - does not work, too =/
Does anybody have an idea, why this click-noise is present? I would really appreciate that =) Furthermore, the sound is not around 440 Hz. Does anybody have a good working code for a sinusoidal sound?
I have spent so much time for this and I do not figure it out.
Thanks in advance. Regards,
elchico
My Code:
%%config settings
filename = 'Z_data.dat';
delimiter = '\t';
sound_freq = 440; % in Hz, middle value to fluctuate around
fs = 20500; % Sampling frequency
dt = 1/fs; % time resolution
num_points = 10; % How many points of raw data to convert into sound?
for jj = 1:num_points
duration(jj,1) = 0.1; % duration per note in sec
amplitude_array(jj,1) = 1; % a.u., middle value to fluctuate around (=> volume)
end
%%calculate values (Z_norm) and refer to sound
M_raw = dlmread(filename,delimiter);
Z_values = M_raw(1:num_points,1);
Z_norm= Z_values /mean(Z_values );
sounds_freq_array = Z_norm*sound_freq,0;
%%play sound
for ii= 1:num_points
t = 0:dt:(duration(ii,1));
signal = amplitude_array(ii,1)*sin(2*pi*sounds_freq_array(ii,1)*t);
sound(signal, (fs));
pause (duration(ii,1));
end
And here are some example-data:
8406
8200
8000
8500
8365
8400
7999
8555
8336
8456
댓글 수: 0
답변 (1개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Audio and Video Data에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!