0
訪問者がリンク(ライブストリームではなく、ストリームを使用するラジオアーカイブからのリンク)をクリックしてオーディオストリームを保存できるWebページを作成したいと思います。ブラウザで純粋なJavaScriptを使用してサーバーバックエンドなしでこれを行いたい。 私はFFMpegのJavaScriptポートについて読んでいます。これは、いわゆるBLOBを利用してビデオ/オーディオをブラウザでエンコードして保存することができます。しかし、私が17 MBを覚えている限り、ダウンロードライブラリは巨大です。実際には、実際のエンコード処理ではなく、オーディオストリームのストリームのみをストリームする必要があります。それだけで本当に必要なストリームのコピーを提供するJavaScriptにFFMPEGのサブセットをコンパイルすることが可能である、純粋なJavaScriptを使用してオーディオストリームをブラウザに保存することはできますか?
ffmpeg -i http://stream.example.com/stream_20160518_0630.mp3 -c copy -t 3600 programme.mp3
私は疑問に思う: は、私は通常、プログラムを保存するために同様のコマンドを使用できますか?
残念ながら、ラジオストリームは無限であるため、残念ながらこの場合は機能しません。どういうわけか私はある時点でダウンロードを中断しなければなりません。 – Konstantin
私は、他の2つの選択肢があります。 1)そのURLへのajax呼び出しを行い、チャンク(**読み込み可能なストリーム**から)を保存する - それらのチャンクからブロブを作成し、それを保存します。 2)私が作成したばかりの素晴らしい[StreamSaver.js](https://github.com/jimmywarting/StreamSaver.js)を使用する - Chrome v52で動作するつもりはありません。まだリリースされていません – Endless
Thx、1番目のメソッドが動作しています。ここでのソースコードhttp://pastebin.com/dfitDqBs 唯一の問題は、CORSヘッダー(Access-Control-Allow-Origin:*)を送信するサーバーからのオーディオを録音するときに完全に機能することです。そのヘッダーを提供していないサーバーでは、Cross Origin Policyエラーが発生します。私はこれを解決する方法を知りません。 – Konstantin