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

오디오 파일의 BPM(박자)은 음악의 리듬을 나타내는 중요한 요소입니다. 파이썬과 몇 가지 라이브러리를 사용하여 오디오 파일의 BPM을 계산하는 방법을 알아보겠습니다.

1. 의존성 설치

오디오 파일을 처리하기 위해 다음과 같은 라이브러리를 설치해야 합니다:

pip install librosa numpy

2. BPM 계산하기

import librosa

# 오디오 파일 로드
audio_file = 'audio.wav'
y, sr = librosa.load(audio_file)

# 파일에서 템포 및 비트 추출
tempo, beat_frames = librosa.beat.beat_track(y=y, sr=sr)

# BPM으로 변환
bpm = round(tempo)

print(f"오디오 파일의 BPM은 {bpm}입니다.")

위의 코드는 librosa 라이브러리를 사용하여 오디오 파일의 BPM을 계산하는 간단한 예제입니다.

파일 경로를 audio_file 변수에 지정하고 librosa.load 함수를 사용하여 오디오 파일을 로드합니다. 로드된 오디오 데이터를 librosa.beat.beat_track 함수에 전달하여 템포 및 비트를 추출합니다. 추출된 템포를 round 함수를 사용하여 반올림하고, 계산된 BPM을 출력합니다.

3. 실행

위의 코드를 실행하면 해당 오디오 파일의 BPM이 출력됩니다.


이렇게 파이썬과 librosa 라이브러리를 활용하여 오디오 파일의 BPM을 계산하는 방법을 알아보았습니다. BPM은 음악 분석, DJ 믹싱 등 다양한 분야에서 유용하게 활용될 수 있습니다.