Прайграванне масіва ў якасці гуку і запіс яго выхаду паралельна

Я ведаю, што актава/MATLAB можа гуляць масівы як гук, але мне было цікава, калі Актаем можа зрабіць гэта: Я хацеў бы, каб перабраць у дыяпазоне частот і маюць Актаем прайграваць іх праз дынамік на маім кампутары, і ў Актава таксама запісаць гук з выкарыстаннем мікрафонавага ўваходу, каб атрымаць значэнне макс. Я спрабую аўтаматызаваць спосаб мець актаву цыкл праз частоты і запісваць дадзеныя, атрыманыя такім чынам, я магу вярнуцца пазней і паглядзець на рэзанансных частотах. Можа Актаем зрабіць гэты тып аперацыі паралельна?

Я выкарыстоўваю Ubuntu Linux 10.04 64bit з поўнай дуплекснай гукавой картай

прыклад:

clear all
t=linspace(0,1,44100);
A = 1; % amplitude
Fs = 44100

for ii=1:1:10
     freq=ii; %how many in 1 sec
     T = 1/freq; % period of the signal
     vertoffset=0.5;
     % square
     square = mod(t * A/T, A) > A/2;
     square = square - vertoffset;
     sound(square,Fs);
end;
3

1 адказы

This can be done with SOX http://sox.sourceforge.net/

Прыклад кода актава/SOX, што робіць гэта Сістэма ( 'гуляць /home/a_playback.wav | здымка Эскорт -с 1 -r 8000 -b 16 /home/a_record.wav падрэзаць 0 00:01')

1
дададзена