Pydubで音声ファイルを無音部分で分割してみる

Pydubで音声ファイルを無音部分で分割してみる

以下をを参考に音声分割を実施しました.
西住工房

しかし、環境の違いなのか所々エラーを吐いてしまったので、その解決策を含めて備忘録としてまとめておこうと思います.

ちなみにOSはMacOS(Catalina)です.

エラー対処

参考サイトのサンプルプログラムを実行した際に以下のエラーが発生.

内容をみる限り、多分「ffmpeg」が足りないのだろうと思ったので以下でインストールしました.

するとXcodeのことでエラー吐いた.

Error: Xcode alone is not sufficient on Catalina.
Install the Command Line Tools:
  xcode-select –install

そういえばMacをCatalinaに上げて以降、Xcodeを触っていなかったため確認したところ別バージョンにインストールが必要だったため改めてXcodeをインストールしました.

xcodeインストール

また、上記エラーを見ると「Install the Command Line Tools:  xcode-select –install」って書いてあります.
こちらも入れましょう.

終わったら再度ffmpegをインストール

するとお次はこのエラー

「/usr/local/Frameworks」がないと言われてますね…
ディレクトリーを作って権限も与えました.

終わったら再度ffmpegをインストール

「success」という文字が見当たりませんでしたがエラーが出なければ多分大丈夫です.プログラムに戻り再度実行してみました.

すると今度は以下のようなエラーです…

anacodaを利用している際は以下のように別途ライブラリもインストールする必要があったみたいです…

再度プログラムを実行してみるとようやくうまくいきました.
ファイルが無音部分でちゃんと分割されています.

無音分割

終わりに

pydubで無音分割を行いました.
このライブラリでは基本的な音声読み込み(mp3,wav)の他にもサンプリングレートなどの情報取得やNumpyへの変換、また、ファイル出力時にフォーマットとビットレートの指定などもできるようです.