728x90
들어가며
음성 인식(STT), 음성 합성(TTS), 음성 스타일 변환(STS) 같은 딥러닝 음성 처리 작업을 하려면 가장 먼저 해야 할 일은 ‘오디오 데이터를 불러오고 다루는 법’을 익히는 것입니다. 오늘은 Python 라이브러리인 Librosa를 사용해 오디오를 로드하고, 직접 재생하거나 파형을 시각화하는 과정을 소개합니다.
Librosa로 오디오 불러오기
import librosa
train_audio_path = 'input/'
file_path = 'pop.wav'
y, sr = librosa.load(str(train_audio_path)+file_path, sr=22050)
print(y.shape, sr)
- y: 오디오의 amplitude 신호 배열
- sr: sampling rate
주피터에서 바로 듣기
Jupyter Notebook에서 음성을 바로 들어볼 수 있습니다.
import IPython.display as ipd
ipd.Audio(y, rate=sr)
파형 시각화하기
오디오 신호를 파형으로 시각화하면 데이터 전처리나 이상 탐지에 매우 유용합니다.
import matplotlib.pyplot as plt
import numpy as np
import librosa.display
%matplotlib inline
fig = plt.figure(figsize=(14, 5))
librosa.display.waveplot(y, sr=sr)
plt.show()
활용 예시
이렇게 전처리한 오디오 데이터는:
- STT (Speech to Text): HMM, RNN, Attention 모델 등에 입력
- TTS (Text to Speech): 음성 합성 파이프라인에 활용
- STS (Speech Style Transfer): 스타일 변환, 목소리 변조 등에 사용
앞으로 음성 데이터를 다룰 계획이라면 반드시 거쳐야 하는 기본 과정이니 꼭 익혀두시길 권합니다.
마무리
오늘은 Librosa로 오디오를 불러오고, 재생하고, 파형으로 시각화하는 법을 정리했습니다. 다음에는 MFCC 추출이나 Spectrogram 변환 등 더 심화된 전처리로 이어가겠습니다.
728x90