1

1 か月に 1 回、mp3 ストリームがめちゃくちゃになります。特定の URL でライブ ストリームを監視し、破損したときに何らかのフラグを送信するために使用できるスクリプト、プログラム、またはツールはありますか?

通常、たとえば曲や音楽を再生しますが、月に1回、毎月、ランダムにストリームが破損し、ゴミのオーディオのようにランダムなチンパンクを開始します。これに関するアイデアはありますか?私はこれを始めたばかりで、まったくわかりません。

4

1 に答える 1

1

通常、これは、間違ったサンプルレートのトラックを再生したときに発生します。

ほとんどの(私が見たすべての)SHOUTcast / Icecastエンコーダー(ファイルから直接)はMP3で問題なく圧縮されますが、構成されているものはすべて固定サンプルレートを想定しています。通常、これは44.1kHzになります。48kHzトラックまたは22.05kHzトラックにドロップすると、ストリームであらゆる種類のランダムな問題が発生する一方で、さまざまな速度で再生されます。

問題は簡単に確認できます。異なるサンプルレートのファイルを作成してテストするだけです。問題を再現できると思います。その場合、私の知る限り、ストリームは実際には破損していないため、それを検出する方法はありません...それは単に正しくないように聞こえます。サンプルレートについては、すべてのファイルをスキャンする必要があります。 スクリプト内のFFMPEGは、それを支援できるはずです。


ここで、問題が実際に破損したMP3ストリームである場合は、エンコーディング側に問題があります。使用しているDLLまたはモジュールを最近の安定バージョンのLAMEと交換するだけで役立つと思います。

破損したMP3ストリームを検出するには、エンコーダがCRCを使用している必要があります。これを有効にすると、各フレームのヘッダーを読み取ってCRCを見つけ、オーディオデータに対して実行できるようになります。エラー(またはエラーのある複数のフレーム)が発生した場合は、警告をトリガーできます。

MP3ストリームヘッダーに関する情報は、次の場所にあります。

http://www.mp3-tech.org/programmer/frame_header.html

于 2011-11-22T14:25:41.850 に答える