live555ソースとシンク

Source&Sink
SourceとSinkは、live555の2つの非常に重要な概念です。
ストリームの開始点であるソース送信側は、ファイルまたはネットワークストリームの情報の読み取りを担当するプロデューサーとして直感的に理解できます。
シンク受信側、ストリームの終わり、それは文字通りシンクとして翻訳された消費者として理解することができます。
ソースからファイルまたはディスプレイへの最終的な保存までのビデオおよびオーディオデータのプロセス全体は、から流れる水の流れのようなものです。ソースは、すべてのパスを通過し、最終的にシンクに流れ込みます。
ソースとシンク

ソース:RTPはファイルまたはカメラデバイスからデータを読み取る場合があります。
シンク:データストリームは最終的にファイルに保存したり、画面に表示したりできます
。MediaSession:RTPセッションを表すために使用され、MediaSessionには複数の子セッションが含まれる場合があります。 (MediaSubSession)、サブセッションは、オーディオサブセッション、ビデオサブセッションなどにすることができます。

ソースとシンクはRTPサブセッション(MediaSubSession)を介して接続されます。

MediaSource-ストリーム
MediaSouceのソースは、すべてのSourcesの基本クラスです。

ここに画像の説明を挿入

MediaSource

上の図と組み合わせて、例としてH264を取り上げます。

ここに画像の説明を挿入

H264VideoStreamFramer

H264VideoStreamFramerは実際のソースであり、H264ファイルからデータを読み取り、それらをフレームにアセンブルするために使用されます。

MediaSink-ストリームの
終わりMediaSinkは、すべてのシンクの基本クラスです。

ここに画像の説明を挿入

MediaSink

上の図と組み合わせて、例としてH264を取り上げます。

ここに画像の説明を挿入

H264VideoFileSinkクラスの継承関係

H264VideoFileSinkは、データをファイルに保存する実際のシンクです。

ここに画像の説明を挿入

H264VideoRTPSinkクラスの継承関係

H264VideoRTPSinkは、データの送信を完了する実際のシンクです。

H264コードストリームの場合、データストリームの流れの方向は次のとおりです。

服务器端:
H264VideoStreamFramer ->H264Or5Fragmenter (Filter)r->H264VideoRTPSink
客户端:
H264RTPSouce -> Sink

著者:FlyingPenguin
リンク:https://www.jianshu.com/p/0bdf07f7a5d5
出典:ジェーンブック
ジェーンブックの著作権は著者によって予約されており、任意の形式で複製されています。許可を得て出典を示すには、著者に連絡してください。

おすすめ

転載: blog.csdn.net/hyl999/article/details/109090221