[python] 파이썬으로 오디오 파일의 BPM을 자동으로 계산하는 방법

오디오 파일의 BPM(Beat per Minute)은 음악의 리듬을 나타내는 중요한 지표입니다. BPM을 계산하는 것은 음악 편집, DJ 믹싱 등 다양한 분야에서 유용하게 사용됩니다. 이번 글에서는 파이썬을 사용해 오디오 파일의 BPM을 자동으로 계산하는 방법에 대해 알아보겠습니다.

1. Librosa 라이브러리 설치

BPM을 계산하기 위해 먼저 Librosa 라이브러리를 설치해야 합니다. Librosa는 음악과 오디오 신호 처리를 위한 파이썬 라이브러리로, 다양한 기능을 제공합니다.

pip install librosa

2. 오디오 파일 로딩

BPM을 계산할 오디오 파일을 로딩합니다. Librosa는 다양한 오디오 파일 형식을 지원하며, 아래 예시는 WAV 파일을 사용하는 것입니다.

import librosa

audio_path = 'audio.wav'
y, sr = librosa.load(audio_path)

3. 오디오 스펙트럼 분석

로딩한 오디오 파일을 이용해 오디오 스펙트럼을 분석합니다. 스펙트럼 분석은 시간 대비 주파수 영역의 에너지를 계산하는 과정으로, BPM 계산에 중요한 역할을 합니다.

tempo, beat_frames = librosa.beat.beat_track(y=y, sr=sr)

4. BPM 출력

계산된 BPM 값을 출력합니다.

print(f"BPM: {tempo}")

위의 코드를 실행하면 오디오 파일의 BPM을 자동으로 계산할 수 있습니다.

참고 자료