Pythonモジュール「pydub」でmp3とwavファイルを無音部分で区切る方法についてソースコード付きでまとめました。
mp3、wavファイルの分割(無音部分で区切る)
Pythonモジュール「pydub」では、split_on_silenceメソッドで無音部分で音声データを分割できます。
書式
split_on_silence(sound, min_silence_len=2000, silence_thresh=-40, keep_silence=600)
パラメータ | 説明 |
---|---|
sound | 入力音声データ |
min_silence_len=2000 | 2000ms以上無音なら分割 |
silence_thresh=-40 | -40dBFS以下で無音と判定 |
keep_silence=600 | 分割後500msは無音を残す |
サンプルコード
サンプルプログラムのソースコードです。
# -*- coding: utf-8 -*- from pydub import AudioSegment from pydub.silence import split_on_silence # wavファイルのデータ取得 sound = AudioSegment.from_file("input.wav", format="wav") # wavデータの分割(無音部分で区切る) chunks = split_on_silence(sound, min_silence_len=2000, silence_thresh=-40, keep_silence=600) # 分割したデータ毎にファイルに出力 for i, chunk in enumerate(chunks): chunk.export("output" + str(i) +".wav", format="wav")
– | 関連記事 |
---|---|
1 | ■【Python/pydub】音声ファイル処理 ■Python入門 基本文法 |
コメント