• 検索結果がありません。

‹

Title

‹ Codec Control Messages with the RTP Audio-Visual Profile with Feedback (AVPF)

‹

Author

‹ S. Wenger, U. Chandra (Nokia)

‹ M. Westerlund, B. Burman (Ericsson)

‹

Date

‹ February 2008

‹

Category

‹ Proposed Standard

3 3

標準の概要

‹ RFC4585で定義されているAudio-Visual Profile with Feedback (AVPF)に、コーデック制御のため のメッセージを追加

‹ Temporary Maximum Media Stream Bit Rate (Request/Notification)

‹ Full Intra Request (FIR)

‹ Temporal-Spatial Trade-off (Request/Notification)

‹ ITU-T Rec. H.271 Video Back Channel Message (VBCM)

‹ RTCPの送信タイミングについては、RFC4585に準拠

‹ Immediate Feedback mode

‹ Early RTCP mode

‹ Regular RTCP mode (RFC3550)

‹ 本コーデック制御を利用する場合のSDP記述を定義

‹ RFC4585に追加 (rtcp-fbの値として“ccm”を追加)

‹ Offer/Answerの基本規則

‹ 本標準が想定しているRTPトポロジ

‹ Point to Point

‹ Point to Multipoint using Multicast

‹ Point to Multipoint using the RFC3550 Translator

‹ Point to Multipoint using the RFC3550 Mixer Model

4 4

フィードバックメッセージの種類

‹

Request

‹ 応答を必要とするメッセージ

‹

Command

‹ 受信側に何らかのアクションを取らせるメッセージ

‹

Indication

‹ 現在の状況を報告するメッセージ

‹

Notification

‹ イベントが発生したことを通知するメッセージ

‹ 通常、Requestの応答メッセージ

5 5

追加されたフィードバックメッセージ

‹

Transport layer Feedback Messages

・・・トランスポート層(RTP)に関連したフィードバックメッセージ

‹ Temporary Maximum Media Stream Bit Rate Request (TMMBR)

‹メディアの送信側に最大メディアストリームビットレートを要求

‹ Temporary Maximum Media Stream Bit Rate Notification (TMMBN)

‹TMMBRの応答として変更後の最大メディアストリームビットレートを通知

‹

Payload-Specific Feedback Messages

・・・ペイロードに依存したフィードバックメッセージ

‹ Full Intra Request (FIR)

‹メディアの送信側にIntraピクチャやIDRピクチャなどの送信を要求

‹ Temporal-Spatial Trade-off Request (TSTR)

‹メディアの送信側に時間解像度と空間解像度のトレードオフ値の変更を要求

‹ Temporal-Spatial Trade-off Notification (TSTN)

‹TSTRの応答として変更後の時間解像度と空間解像度のトレードオフ値を通知

‹ H.271 Video Back Channel Message (VBCM)

‹ITU-T Rec. H.271で定義されたVideo Back Channelに対応するメッセージ

6 6

RFC4585に規定されているフィードバックモード(参考)

RTP session

参加者数

(Group Size)

に応じてモードを切替

モード切替の閾値は、ネットワーク環境、伝送データによって変更

ACK feedback

V

:<- - - - NACK feedback - - - ->//

:

: Immediate ||

: Feedback mode ||Early RTCP mode Regular RTCP mode :<=============>||<=============>//<=================>

: ||

-+---||---//---> group size 2 ||

Application-specific FB Threshold

= f (data rate, packet loss, codec, ...)

7 7

RTCPフィードバックメッセージの共通フォーマット

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| FMT | PT | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC of packet sender | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC of media source | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

: Feedback Control Information (FCI) :

Feedback message type (FMT): 5 bits FBメッセージのタイプをセット。

Payload type (PT): 8 bits

RTCP packet typeをセット. 下記2種類はIANAよりに定義ずみ Name | Value | Brief Description

---+---+---RTPFB | 205 | Transport layer FB message

PSFB | 206 | Payload-specific FB message

8 8

RFC5104で新たに追加されたPTとFMTの値

PT FMT メッセージの種類 RFC

1 Generic NACK RFC4585

31 Reserved for future expansion of the identifier number space RFC4585

1 Picture Loss Indication (PLI) RFC4585

2 Slice Lost Indication (SLI) RFC4585

15 Application layer FB message RFC4585

7 Video Back Channel Message (VBCM) RFC5104

3 Reference Picture Selection Indication (RPSI) RFC4585

2 Reserved (*) RFC5104

3 Temporary Maximum Media Stream Bit Request (TMMBR) RFC5104

4 Temporary Maximum Media Stream Bit Notification (TMMBN) RFC5104

Full Intra Request (FIR) Command

Temporal-Spatial Trade-off Request (TSTR) Temporal-Spatial Trade-off Notification (TSTN)

Reserved for future expansion of the identifier number space 205 (RTPFB)

4 RFC5104

5 RFC5104

6 RFC5104

206 (PSFB)

31 RFC4585

(*)RFC4585の初期のバージョンでFMT=2が予約されていたが 最終版では削除された

9 9

Temporary Maximum Media Stream Bit Rate Request

‹

Temporary Maximum Media Stream Bit Rate Request (TMMBR)

‹ 基本動作

‹受信可能な最大ビットレートの変更をメディア送信側へ要求

‹ 送信タイミング

‹最初のIMMBRはImmediate Feedback modeまたはEarly RTCP modeで送信 [MAY]

‹IMMBRが連続するときはRegular RTCP modeで送信[SHOULD]

‹

Temporary Maximum Media Stream Bit Rate Notification (TMMBN)

‹ 基本動作

‹TMMBRの応答としてメディア送信側が使用する最大ビットレートを送信

‹ 送信タイミング

‹許されるタイミングの範囲で出来るだけ早く送信 [SHOULD]

‹Immediate Feedback modeまたはEarly RTCP mode [SHOULD]

10 10

FCIフォーマット: TMMBR

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| MxTBR Exp | MxTBR Mantissa |Measured Overhead|

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア送信側のSSRC値 MxTBR Exp: 6bits

最大メディアビットレート値のための仮数の指数スケーリング MxTBR Mantissa: 17bits

最大メディアビットレート値の仮数 Measured Overhed: 9bits

平均パケットオーバヘッドの計測値

MxTBR = Mentissa * 2^Exp [bps]

avg_OH (new) = 15/16 * avg_OH(old) + 1/16 packet_OH

11 11

FCIフォーマット: TMMBN

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| MxTBR Exp | MxTBR Mantissa |Measured Overhead|

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア受信側のSSRC値 MxTBR Exp: 6bits

最大メディアビットレート値のための仮数の指数スケーリング MxTBR Mantissa: 17bits

最大メディアビットレート値の仮数 Measured Overhed: 9bits

平均パケットオーバヘッドの計測値

12 12

Full Intra Request (FIR) Command

‹

基本動作

‹ メディア受信側がIntra PictureやIDR Pictureがなければメディアをデコードできないとき に送信

‹IntraピクチャやIDRピクチャがなければ画像が表示できないときのみ送信 [SHOULD]

‹Picture Lossなどエラーが発生した場合の動作としてFIRは送信禁止[SHALL NOT]

‹エラーなどはRFC4585で規定されているPLI (Picture Loss Indication)を送信 [RECOMMENDED]

‹

送信タイミング

‹ Immediate Feedback modeまたはEarly RTCP modeにて送信 [MAY]

‹ Immediate Feedback modeの場合には、少なくてもRTT待ってから次のFIR Commandを送信 [SHOULD]

13 13

FCIフォーマット: FIR

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Seq nr. | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア送信側のSSRC値 Seq nr: 8bits

コマンドのシーケンス番号 Reserved: 24bits

0をセットする

14 14

Temporal-Spatial Trade-off Request

‹

Temporal-Spatial Trade-off Request (TSTR)

‹ 基本動作

‹メディアの受信側がメディアの送信側に対して、画像の空間解像度と時間解像度のトレード オフのレベル(0~31の値)で提案するときに送信(0: 最も空間解像度が高い、 31: 最も 時間解像度が高い)

‹ 送信タイミング

‹Regular RTCP mode [SHOULD]

‹ただし、ユーザインタフェース的に迅速なフィードバックが必要な場合は、Immediate Feedback modeまたはEarly RTCP modeにて送信 [MAY]

‹

Temporal-Spatial Trade-off Notification (TSTN)

‹ 基本動作

‹TSTRの応答としてメディア送信側が使用するレベルを送信

‹ 送信タイミング

‹Regular RTCP modeにて送信 [SHOULD]

15 15

FCIフォーマット: TSTR

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Seq nr. | Reserved | Index | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア送信側のSSRC値 Seq nr: 8bits

要求のシーケンス番号 Reserved: 19bits

0をセットする Index: 5bits

要求されたトレードオフの値。0が空間解像度優先、31が時間解像度優先

16 16

FCIフォーマット: TSTN

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Seq nr. | Reserved | Index | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア送信側のSSRC値 Seq nr: 8bits

要求のシーケンス番号 Reserved: 19bits

0をセットする Index: 5bits

メディア送信側が使っているトレードオフ値

17 17

Video Back Channel Messages

‹

基本動作

‹ メディア送信側にITU-T Rec. H.271 Video Back Channel Messageを送信したいと きに使用

‹

送信タイミング

‹ Sub-messageタイプによって異なる

‹

H.271メッセージタイプとフィードバックメッセージの関係

H.271 msg type AVPF/CCM msg type multicast-safe

---0 (when used for

reference picture

selection) AVPF RPSI No (positive ACK of pictures) 1 picture loss AVPF PLI Yes

2 partial loss AVPF SLI Yes

3 one parameter CRC N/A Yes (no required sender action) 4 all parameter CRC N/A Yes (no required sender action) 5 refresh point CCM FIR Yes

18 18

FCIフォーマット: VBCM

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Seq nr. |0| Payload Type| Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| VBCM Octet String.... | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

SSRC: 32bits

メディア送信側のSSRC値 Seq nr: 8bits

コマンドのシーケンス番号 0 : 1bits

使用しない Payload Type: 7bits

VBCMビットストリームを解釈しなければならないRTPペイロードタイプ Length: 16bits

VBCM文字列の長さ VBCM Octet String: 可変長

フィードバックサブメッセージを運ぶためにデコーダによって生成された文字列 Padding: 可変長

パディング

19 19

SDP記述

rtcp-fb-val =/ "ccm" rtcp-fb-ccm-param

rtcp-fb-ccm-param = SP "fir" ; Full Intra Request

/ SP "tmmbr" [SP "smaxpr=" MaxPacketRateValue]

; Temporary max media bit rate / SP "tstr" ; Temporal-Spatial Trade-Off

/ SP "vbcm" *(SP subMessageType) ; H.271 VBCMs / SP token [SP byte-string]

; for future commands/indications subMessageType = 1*8DIGIT

byte-string = <as defined in section 4.2 of [RFC4585] >

MaxPacketRateValue = 1*15DIGIT

RFC4585 の SDP 記述に追加

20 20

SDPの記述例

v=0

o=alice 3203093520 3203093520 IN IP4 host.example.com s=Offer/Answer

c=IN IP4 192.0.2.124

m=audio 49170 RTP/AVP 0 a=rtpmap:0 PCMU/8000

m=video 51372 RTP/AVPF 98 a=rtpmap:98 H263-1998/90000

a=rtcp-fb:98 ccm tstr

a=rtcp-fb:98 ccm fir

a=rtcp-fb:* ccm tmmbr smaxpr=120

TSTR/TSTN、FIR、TMMBR/TMMBNを使用する場合

21 21

参考資料

関連したドキュメント