ブラウザーに組み込まれているストリーミング メカニズムがフォールト トレラントではないことがわかっているため、または WebSocket を介して独自のカスタム メソッドを実装するのが好きなため、Javascript で独自のプログレッシブ ストリーミング メカニズムを作成したいとします。連続メディア ファイルの既にダウンロードされたセグメントを保持するバッファーを作成したいと思います (たとえば、配列バッファーなど)。このファイルを最初から最後までダウンロードしていなくても再生できますか?
私の唯一のアイデアは、各セグメントの開始を正確に計るための noteOn() 関数を持つ Web Audio APIでした。ただし、これがどれほどギャップレスになるかはわかりません。また、サーバー側で音声ファイルを安全にカットできる場所を正確に把握して、次の部分を損失やギャップなしでデコードできるようにする必要があるという問題も発生します。たとえば、mp3 のビット リザーバーは、CBR モードでもオーディオ データを隣接するオーディオ フレームに格納するため、処理が困難になります。