Pythonを使って音楽ファイルのスペクトログラムを作成する方法を紹介します。スペクトログラムは、音楽ファイルの周波数スペクトルを時間の経過に沿ってプロットしたもので、音楽の特徴を可視化するのに役立ちます。
必要なライブラリ
Pythonでスペクトログラムを作成するには、以下のライブラリを使用します。
- numpy
- matplotlib
- scipy
- librosa
これらのライブラリをインストールするには、pipを使用します。
pip install numpy matplotlib scipy librosa
スペクトログラムの作成方法
まず、音楽ファイルを読み込みます。
import librosa
y, sr = librosa.load('music.wav')
次に、短時間フーリエ変換(STFT)を実行します。STFTは、音楽ファイルの周波数スペクトルを時間の経過に沿って計算するために使用されます。
import numpy as np
D = np.abs(librosa.stft(y))
最後に、スペクトログラムを表示します。
import matplotlib.pyplot as plt
plt.specgram(y, NFFT=2048, Fs=2, Fc=0, noverlap=128, cmap='inferno', sides='default', mode='default', scale='dB')
plt.show()
これで、音楽ファイルのスペクトログラムが表示されます。
おわりに
Pythonを使って音楽ファイルのスペクトログラムを作成する方法を紹介しました。スペクトログラムは、音楽の周波数スペクトルを可視化するのに役立つ強力なツールです。