RTPとは
音声やをリアルタイムに送信するためのデータ送信プロトコルです。
遅延による音質低下の懸念などがありUDPで転送されるケースが多いです
パケットヘッダー
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| synchronization source (SSRC) identifier |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| contributing source (CSRC) identifiers |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
バージョン:バージョンのこと、現在だとV=2が一般的ですが、1,0も過去にありました。RFC3550だと2固定です。
パディング:パディングバイトがあるかどうか。
拡張:固定ヘッダのあとに拡張データがつきます。CSRCのあとに付きます。
CSRCカウント:固定ヘッダのあとにつく識別子の数です。
マーカー:重要なイベントを示すビットです。
ペイロードタイプ:メディアタイプの識別に使用します。
シーケンス番号:パケットが送信されるたびに1ずつ増えます。
タイムスタンプ:ペイロードデータの先頭が散布りんごされた時間を指します。メディアの再生に使用されます。
SSRC:同期ソースです。
パケットの最初の12バイトは必須です。
拡張ヘッダ
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| defined by profile | length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| header extension |
| .... |