[python] 파이썬으로 오디오 파일의 이퀄라이저를 적용하는 방법
오디오 파일에 이퀄라이저를 적용하는 것은 음악이나 오디오 신호를 조절해서 원하는 사운드를 얻기 위한 방법 중 하나입니다. 이퀄라이저는 주파수 범위마다 음량을 조절하여 원하는 음향 효과를 만들어 줄 수 있습니다. 이번 글에서는 파이썬을 사용하여 오디오 파일에 이퀄라이저를 적용하는 방법에 대해 알아보겠습니다.
필요한 라이브러리 설치
이 예제에서는 pydub
과 numpy
라이브러리를 사용합니다. 아래의 명령어를 사용하여 라이브러리를 설치하세요.
pip install pydub numpy
코드 예제
from pydub import AudioSegment
import numpy as np
# 오디오 파일 불러오기
audio = AudioSegment.from_file("input.wav")
# 이퀄라이저 설정하기
equalizer = np.array([1, 0.8, 1.2, 0.9, 1.1]) # 이퀄라이저 각 주파수 대역별 음향 조절 비율
# 이퀄라이저 적용하기
for i in range(len(equalizer)):
audio = audio.apply_gain_stereo(equalizer[i])
# 결과 오디오 파일 저장하기
audio.export("output.wav", format="wav")
위의 코드는 pydub
라이브러리를 사용하여 오디오 파일을 불러오고, 주파수 대역별로 음향을 조절하는 이퀄라이저를 적용한 뒤 결과 오디오 파일을 저장하는 예제입니다.
코드 설명
pydub
라이브러리를AudioSegment
클래스로부터audio
객체를 생성합니다.- 이퀄라이저를 설정합니다.
equalizer
배열은 주파수 대역별 음향 조절 비율을 나타냅니다. - 주파수 대역별로 이퀄라이저를 적용합니다.
apply_gain_stereo
함수를 사용하여 주파수 대역마다 음향 조절을 수행합니다. - 결과 오디오 파일을
export
함수를 사용하여 저장합니다.
실행 예제
위의 코드를 실행하면 input.wav
파일을 불러와서 이퀄라이저를 적용한 후 output.wav
파일로 저장합니다. 이때 equalizer
배열에 주파수 대역별 음향 조절 비율을 적절히 설정하여 원하는 사운드를 얻을 수 있습니다.
결론
파이썬을 사용하여 오디오 파일에 이퀄라이저를 적용하는 방법을 알아보았습니다. 이를 활용하여 음향 조절이 필요한 프로젝트나 음악 편집 작업에 유용하게 사용할 수 있습니다. 더 자세한 내용은 pydub
공식 문서를 참조하세요.
참고 자료
pydub
공식 문서: https://github.com/jiaaro/pydubnumpy
공식 문서: https://numpy.org/doc/