Skip to content

Latest commit

 

History

History
47 lines (29 loc) · 2.95 KB

README_jp.md

File metadata and controls

47 lines (29 loc) · 2.95 KB

rtsp2fmp4

English | 日本語 | 简体中文

h264とh265をサポートし、rtspをブラウザで再生できる高性能なストリーミングサービスです。 変換処理はデータのデカプセル化のみで、再トランスコードは行われません。

再生方法はhttpとwebsocketをサポートし、ストリーミングメディアは依存関係のないステートレス実行可能ファイルです。これはステートレスサービスの非常に重要な特徴であり、簡単にデプロイできることを意味します。

クイックスタート

実行ファイルをダウンロードするか、dockerを使う。

docker

docker run -it -d --name rtsp2fmp4 -p 6161:6161 yumexupanic/rtsp2fmp4

利用する

# fmp4 over http 
http://127.0.0.1:6161?url=rtsp://xxxx

# fmp4 over websocket
ws://127.0.0.1:6161?url=rtsp://xxxx

rtspアカウントのパスワードに特殊な記号が含まれている場合は、URLエンコーディングが必要です。

以上で、ストリーミングやネットワークの問題でプログラムが終了する心配はありません。

レイテンシー

低遅延低番組は、決してストリーミングメディアの処理だけではなく、ストリーミングメディア+クライアントの協力です。

ストリーミングメディア自体は最適化されており、データストリームの遅延は1秒程度に制御できます。 もし、httpで直接ストリームを引っ張ってきていて、クライアント・プレーヤーが最適化されていない場合、遅延は徐々に増加する可能性があります。 httpを使用してストリームを直接プルしており、クライアント・プレーヤーが最適化されていない場合、レイテンシは徐々に増加する可能性があり、プレーヤーはキャッシュ・ロジックに対処する必要があります。

ブラウザでは、http経由のfmp4は同時ストリーム数が6に制限されています。 そのため、 wsfmp4.js SDKを使用して、レイテンシを1秒前後に制御できる、ウェブソケットソリューションを使用することをお勧めします。

なぜflvではなくfmp4なのか

なぜなら、flv.jsはデータをfmp4にリパッケージし、それをMSEインターフェイスに渡すことで動作するからです。

ヒント

これはおそらく、ブラウザでrtspを再生するための現時点での最良のソリューションであり、軽量のストリーミングサービスである。 rtspプロトコルがflv.jsほどうまく動作しない主な理由は、rtspトランスポート・プロトコルにある。