こんにちは。
先日、pythonでmp3をwavに変換したいということで色々戦いました。
ffmpegをインストールしてもうまく動かずに後先考えずにいろいろ試した結果タイトルのようなエラーが直せなくなりました。諦めても良かったのですがもともと動いてた学習用のプログラムすら動かなくなったのでこれはまずいと言うことでこれまた色々試した結果直りましたので、今回は最終的に直った方法を自分用にメモとして残します。
ここで言う"直った"は学習用コードを動くようにし、mp3->wavへの変換は動かない状態で、諦めるということです。
はじめに
はじめてのトラブルシューティングの記事なのでお手柔らかにお願いします。
本題
大まかな手順は
- 容疑者を全部アンインストール
- インストールし直す
環境
- windows10
- anaconda
- python3.7.7
消したパッケージ
audioread 2.1.8 py37hc8dfbb8_2 conda-forge ffmpeg-python 0.2.0 pypi_0 pypi librosa 0.8.0 pyh9f0ad1d_0 conda-forge libsndfile 1.0.29 ha925a31_0 conda-forge llvmlite 0.32.1 pypi_0 pypi numba 0.43.0 pypi_0 pypi pysoundfile 0.9.0.post1 pypi_0 pypi soundfile 0.10.2 py_0 bricew
いろいろな都合でcondaで入れたものやpipで入れたものが混在してたので、それに合わせてconda uninstall
やpip uninstall
で綺麗に掃除。
パッケージのインストール
pip install librosa
でlibrosaを入れたら色々必要なものは入ってきて結果的に直りました。
condaでlibrosaを入れようとするとnumbaやllvmliteが最新になっちゃうのでpipで入れましたが結局色々入っちゃうのでcondaでも同じかもしれない。メモが至らずaudioread
とsoundfile
が自分で入れたかついてきたかが不明
# Name Version Build Channel audioread 2.1.8 pypi_0 pypi librosa 0.8.0 pypi_0 pypi llvmlite 0.34.0 pypi_0 pypi numba 0.51.2 pypi_0 pypi soundfile 0.10.3.post1 pypi_0 pypi
おまけ
sndfileを公式サイトからインストールして、dllを置き換えるという解決方法が英語サイトであったので試してみたのですが、治らずでした。