이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

오디오 파일 읽기 및 쓰기

오디오 파일에 데이터를 쓰고 파일에 대한 정보를 가져온 다음 MATLAB® 작업 공간으로 데이터를 다시 읽어옵니다.

오디오 파일에 쓰기

파일 handel.mat에서 샘플 데이터를 불러옵니다.

load handel.mat

이제 작업 공간에 오디오 데이터로 구성된 행렬 y와 샘플 레이트 Fs가 생겼습니다.

audiowrite 함수를 사용하여 현재 폴더에 있는 handel.wav라는 WAVE 파일에 데이터를 씁니다.

audiowrite('handel.wav',y,Fs)
clear y Fs

audiowrite 함수는 또한 OGG, FLAC, MPEG-4 AAC 같은 다른 오디오 파일 형식에도 쓸 수 있습니다.

오디오 파일에 대한 정보 가져오기

audioinfo 함수를 사용하여 WAVE 파일 handel.wav에 대한 정보를 가져옵니다.

info = audioinfo('handel.wav')
info = 
             Filename: 'pwd\handel.wav'
    CompressionMethod: 'Uncompressed'
          NumChannels: 1
           SampleRate: 8192
         TotalSamples: 73113
             Duration: 8.9249
                Title: []
              Comment: []
               Artist: []
        BitsPerSample: 16

audioinfo는 1x1 구조체형 배열을 반환합니다. SampleRate 필드는 오디오 데이터의 샘플 레이트(단위: 헤르츠)를 나타냅니다. Duration 필드는 파일 재생 시간(단위: 초)을 나타냅니다.

오디오 파일 읽기

audioread 함수를 사용하여 파일 handel.wav를 읽습니다. audioread 함수는 WAVE, OGG, FLAC, AU, MP3, MPEG-4 AAC 파일을 지원할 수 있습니다.

[y,Fs] = audioread('handel.wav');

오디오를 재생합니다.

sound(y,Fs)

WAV, AU 또는 SND 파일을 대화형 방식으로 읽을 수도 있습니다. 데이터 가져오기(Import Data)를 선택하거나 현재 폴더 브라우저에서 파일 이름을 더블 클릭합니다.

오디오 데이터 플로팅하기

경과 시간을 나타내는 y와 길이가 같은 벡터 t를 만듭니다.

t = 0:seconds(1/Fs):seconds(info.Duration);
t = t(1:end-1);

오디오 데이터를 시간 함수로 플로팅합니다.

plot(t,y)
xlabel('Time')
ylabel('Audio Signal')

참고 항목

| |

관련 항목