MATLAB에는 웬만한건 다 있다
역시 사운드 파일 읽고 재생하는건 기본
file = 'beep-1.wav';
[y, Fs, nbits] = wavread(file);
file2 = 'button-11.wav';
[y2, Fs2, nbits2] = wavread(file2);
sound(y,Fs);
sound(y2,Fs2);
이렇게 하면 되는데, y는 사운드데이터가 들은 벡터, Fs 는 데이터가 encode된 Hz. nbits는 encode bit수 이다.
matlab help 에 나와있듯
Number of Bits | MATLAB Data Type | Data Range |
---|---|---|
8 | uint8 (unsigned integer) | 0 <= y <= 255 |
16 | int16 (signed integer) | -32768 <= y <= +32767 |
24 | int32 (signed integer) | -2^23 <= y <= 2^23-1 |
32 | single (floating point) | -1.0 <= y < +1.0 |
이렇게 된다. 24비트 음질이라고 하니까 요즘 인기몰이 하고 있는 아이리버의 회심작 LINK: Astell & Kern 100 제품이 생각난다.. 나도 HIFI관심은 있지만 사실 곰곰히 생각해보면 의미없는 매니악질 인것을.. 박쥐도 아니고 사람귀에 2^15 와 2^24가 구분이 될까..-_-
waveread로 파일을 읽어 놓고
sound 로 재생하면 된다. 재생은 간편하게 sound(재생할 벡터, 소리의 Hz ) 이러면 재생되는데
아쉽게도 역시 재생하는 process 는 matlab의 background 에서 되지 않고 순차적으로 재생된다. 즉, y가 다 재생되는 동안에 matlab은 busy다.
반응형
'Programming' 카테고리의 다른 글
matlab, nargin, nargout 주의점. (0) | 2014.01.22 |
---|---|
qtCreator build error : error: explicit instantiation of ‘std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const ... since updating to Mountain Lion (0) | 2013.05.27 |
VTK in c++ undefined reference to ~~~~ 라이브러리를 찾지 못할때. (0) | 2012.08.09 |
리눅스 C 에서 파일 다루기 (0) | 2012.05.03 |
fopen 의 segmentation fault. (0) | 2012.05.03 |