質問: "absolute-path"` と、指示通りにパスを打って、実行してみました。 しかし、結果は相変わらずでした。 どなたか解決法をご存じありませんか?
回答: 解決したので、ここに記します。 質問文にも書きましたが、手続きに従って、`ffmpeg`ファイルをダウンロードします。 そして、インストールを行います。 その後、システム環境変数を指定します。私はわかりやすいところに置いた方が良いと思ったので、Cドライブ直下に置きました。 `AudioSegment.converter = "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"` と入力しておきます。 システム環境変数に対しても、`C:¥ffmpeg¥ffmpeg¥bin` と入力しました。 ``` (RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work",RuntimeWarning) ``` のエラーについても、`ffmpeg`をダウンロード、インストールでき、`PATH`を正確に通せば、発生しなくなりました。 結果、`Hallo.mp3`は、`Hallo.wav`になっていました。(`Hallo.mp3`がまだ残っているので、消去するコードを書く予定です。) ~~システム環境変数に、正しい`PATH`が設定されていさえすれば、`converter`の変数を書き換えなくても、エラーは発生しませんでした。~~ ~~しばらく時間がたった後で試したら、エラーが復活していました。どうしてなのか確認したところ、`from pydub import AudioSegment`の直下に、`import pygame` `import time`と、セットして、その後に~~~~`AudioSegment.converter "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"` と記したため、エラーが再発生しました。(`pygame`と`time`を後で、`import` 系列として列記しようと思ったのです。)不思議な現象ですが、ここに書き留めておきます。~~ ~~そのため、`AudioSegment.converter`を、`from pydub import AudioSegment`のコードの直下に置けば、エラーは発生しなくなりました。~~ カーネルを再起動して、試したら、一番最初の実行では、エラーが帰り、2回目以降の実行からは、エラーが帰りませんでした。何度もすいませんが、なぜかこのようになります。(これは、`ffmpeg`のインストールを行い、正確な`PATH`を通した後、再起動する必要があり、カーネルの再起動では足りないようです。`ffmpeg`という外部アプリケーションに依存しているためかなと推測します。) `converter`に変数を登録するタイプでは、`ffmpeg.exe`まで書ききるのがポイントかもしれません。 **インストールとシステム環境変数設定直後に再起動が必要です。** 別のパソコンで、同様の手続きを行ったのにも関わらず、何度も同じエラーが再発したため、 何故だろうと思いました。そこで、パソコンを再起動したところ、最初からエラー無く行うことができました。 `ffmpeg`にかなり依存しているように思えるため、`pydub`はその場所に到達するためにあるもので、こうした外部依存のアプリケーションを利用する事じゃなしに、`ffmpeg`的な機能さえも`python`のモジュールの範囲で行えるようになってほしいと言えばほしいのですが、こういうのは無理なんでしょうかね。そういえば、`python-vlc`ビデオライブラリも同じでした。いちいち絶対パスを指定するなんてことは、開発者の目が届いているうちはいいですが、第三者からすると、特にスマートな方法じゃない気がします。