pythonでwavファイルのサンプリング周波数を変換する
00
はじめに

pythonでwavファイルのサンプリング周波数を変換する方法を記述します。

必要なライブラリ

使うライブラリは「librosa」と「PySoundFile」なのでインストールします。

この記事は以下のバージョンでの実装を記述しています。

$ pip install librosa==0.8.0
$ pip install PySoundFile==0.9.0.post1
コード

以下のように記述すると、48kHzのinput.wavを24kHzのoutput.wavとして出力できます。down samplingでもup samplingでも大丈夫です。

import librosa
import soundfile as sf

orig_sr = 48000
target_sr = 24000

wav, _ = librosa.load('input.wav', sr=orig_sr)
resampled_wav = librosa.resample(wav, orig_sr, target_sr)
sf.write('output.wav', resampled_wav, target_sr, 'PCM_16')
TOP
プロフィール
icon
シロワニさん
twitter
@shirowanisan
ソフトウェア