まず最初に、私は Python の初心者であり、オブジェクト指向の典型的な C++/Java のバックグラウンドを持っています。
私は、現在取り組んでいるこの取り組みのために Python を試してみようと確信しました。今のところ気に入っています。私が抱えている問題の 1 つは、適切な mp3 モジュールを見つけることです。
私は TkSnack を試してみましたが、これはエラーなしでインストールされ、正常に実行されました (私のオーディオ デバイスがビジーでない限り) が、実際に音を出すことはできず、何もしませんでした...オンラインで助けを求めたところ、がっかりしましたドキュメントの量で。
というわけで乗り換えることにしました。Ubuntuの標準リポジトリにもあるので、PyMadを試しました。これに関するドキュメントはさらに少なかったのですが、音を鳴らすことができました。唯一の問題は、オーディオ バッファを常に書き込み/再生するためのループが必要なことです。これにより、再生制御を処理するのが特に面倒になります (私の意見では)。これを別のスレッドまたはプロセスで実行し、何らかの方法で一時停止などのシーク位置を制御する必要があります。これは、私が Python を使用している理由としては、少し低すぎるレベルです。ループを制御するのではなく、「mysound.play()」や「mysound.pause()」などの簡単なコマンドで、TkSnack のシンプルさが気に入りました。
ドキュメントが最新のように見えるpyMediaも調べましたが、自分のマシンにインストールできません。「python setup.py build」コマンドを実行すると、「gcc exited with value 1」エラーまたはそのようなエラーが発生します。
したがって、これらのモジュールのいずれか、または高レベルでmp3(およびできれば他のフォーマットも)で使いやすい完全に異なるモジュールの提案またはヘルプを探しています基本的な再生制御(一時停止、停止) 、スキップ、シーク)、最終的にはファイルもストリーミングする可能性があります(そこにたどり着いた場合)。
編集: Gstreamer の python バインディングが好きですが、これはクロスプラットフォーム ソリューションですか?? 要件としてそれを言うのを忘れていました。しかし、私は常に GStreamer を Linux に関連付けただけですが、これは他の OS でも機能しますか?
編集:ウィキペディアはそう言っています。