Internet Engineering Task Force (IETF)                         R. Gilman
Request for Comments: 6871                                   Independent
Updates: 5939                                                    R. Even
Category: Standards Track                            Huawei Technologies
ISSN: 2070-1721                                             F. Andreasen
                                                           Cisco Systems
                                                           February 2013

Session Description Protocol (SDP) Media Capabilities Negotiation




Session Description Protocol (SDP) capability negotiation provides a general framework for indicating and negotiating capabilities in SDP. The base framework defines only capabilities for negotiating transport protocols and attributes. This documents extends the framework by defining media capabilities that can be used to negotiate media types and their associated parameters.


This document updates the IANA Considerations of RFC 5939.

このドキュメントは、RFC 5939のIANA考慮事項を更新します。

Status of This Memo


This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 5741のセクション2をご覧ください。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at


Copyright Notice


Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.

Copyright(c)2013 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents ( in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

この文書は、BCP 78およびこの文書の発行日に有効なIETF文書に関するIETFトラストの法的規定(の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.

このドキュメントには、2008年11月10日より前に公開または公開されたIETFドキュメントまたはIETFコントリビューションの素材が含まれている場合があります。この素材の一部で著作権を管理している人が、IETFトラストにそのような素材の変更を許可する権利を付与していない可能性がありますIETF標準プロセス外。このような資料の著作権を管理する人から適切なライセンスを取得せずに、このドキュメントをIETF標準プロセス外で変更したり、その派生物をIETF標準プロセス外で作成したりすることはできません。 RFCとして、またはそれを英語以外の言語に翻訳するための出版物。

Table of Contents


   1. Introduction ....................................................4
   2. Terminology .....................................................4
   3. SDP Media Capabilities ..........................................6
      3.1. Requirements ...............................................6
      3.2. Solution Overview ..........................................7
      3.3. New Capability Attributes .................................13
           3.3.1. The Media Format Capability Attributes .............13
           3.3.2. The Media Format Parameter Capability Attribute ....16
           3.3.3. The Media-Specific Capability Attribute ............19
           3.3.4. New Configuration Parameters .......................21
           3.3.5. The Latent Configuration Attribute .................23
           3.3.6. Enhanced Potential Configuration Attribute .........25
           3.3.7. Substitution of Media Payload Type Numbers
                  in Capability ......................................29
           3.3.8. The Session Capability Attribute ...................30
      3.4. Offer/Answer Model Extensions .............................35
           3.4.1. Generating the Initial Offer .......................35
           3.4.2. Generating the Answer ..............................39
           3.4.3. Offerer Processing of the Answer ...................43
           3.4.4. Modifying the Session ..............................43
   4. Examples .......................................................44
      4.1. Alternative Codecs ........................................44
      4.2. Alternative Combinations of Codecs (Session
           Configurations) ...........................................47
      4.3. Latent Media Streams ......................................47
   5. IANA Considerations ............................................49
      5.1. New SDP Attributes ........................................49
      5.2. New SDP Capability Negotiation Option Tag .................50
      5.3. SDP Capability Negotiation Configuration
           Parameters Registry .......................................50
      5.4. SDP Capability Negotiation Configuration Parameter
           Registrations .............................................52
   6. Security Considerations ........................................52
   7. Acknowledgements ...............................................53
   8. References .....................................................54
      8.1. Normative References ......................................54
      8.2. Informative References ....................................54
1. Introduction
1. はじめに

"Session Description Protocol (SDP) Capability Negotiation" [RFC5939] provides a general framework for indicating and negotiating capabilities in SDP [RFC4566]. The base framework defines only capabilities for negotiating transport protocols and attributes.

「セッション記述プロトコル(SDP)機能ネゴシエーション」[RFC5939]は、SDP [RFC4566]で機能を示し、ネゴシエートするための一般的なフレームワークを提供します。基本フレームワークは、トランスポートプロトコルと属性をネゴシエートする機能のみを定義します。

RFC 5939 [RFC5939] lists some of the issues with the current SDP capability negotiation process. An additional real-life problem is to be able to offer one media stream (e.g., audio) but list the capability to support another media stream (e.g., video) without actually offering it concurrently.

RFC 5939 [RFC5939]には、現在のSDP機能ネゴシエーションプロセスに関するいくつかの問題がリストされています。追加の現実的な問題は、1つのメディアストリーム(たとえば、オーディオ)を提供できるが、実際に同時に提供することなく、別のメディアストリーム(たとえば、ビデオ)をサポートする機能をリストすることです。

In this document, we extend the framework by defining media capabilities that can be used to indicate and negotiate media types and their associated format parameters. This document also adds the ability to declare support for media streams, the use of which can be offered and negotiated later, and the ability to specify session configurations as combinations of media stream configurations. The definitions of new attributes for media capability negotiation are chosen to make the translation from these attributes to "conventional" SDP [RFC4566] media attributes as straightforward as possible in order to simplify implementation. This goal is intended to reduce processing in two ways: each proposed configuration in an offer may be easily translated into a conventional SDP media stream record for processing by the receiver and the construction of an answer based on a selected proposed configuration would be straightforward.

このドキュメントでは、メディアタイプとそれらに関連するフォーマットパラメータを示し、交渉するために使用できるメディア機能を定義することで、フレームワークを拡張します。このドキュメントは、メディアストリームのサポートを宣言する機能、その使用を後で提供して交渉できる機能、およびメディアストリーム構成の組み合わせとしてセッション構成を指定する機能も追加します。メディア機能ネゴシエーションの新しい属性の定義は、実装を簡素化するために、これらの属性から「従来の」SDP [RFC4566]メディア属性への変換をできるだけ簡単にするために選択されています。この目標は、2つの方法で処理を削減することを目的としています。オファーの各提案構成は、受信者による処理のために従来のSDPメディアストリームレコードに簡単に変換でき、選択された提案構成に基づく回答の構築は簡単です。

This document updates RFC 5939 [RFC5939] by updating the IANA considerations. All other extensions defined in this document are considered extensions above and beyond RFC 5939 [RFC5939].

このドキュメントは、IANAの考慮事項を更新することにより、RFC 5939 [RFC5939]を更新します。このドキュメントで定義されている他のすべての拡張機能は、RFC 5939 [RFC5939]以上の拡張機能と見なされます。

2. Terminology
2. 用語

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119] and indicate requirement levels for compliant implementations.

このドキュメントのキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、 RFC 2119 [RFC2119]で説明されているように解釈され、準拠した実装の要件レベルを示します。

Actual Configuration: An actual configuration specifies which combinations of SDP session parameters and media stream components can be used in the current offer/answer exchange and with what parameters. Use of an actual configuration does not require any further negotiation in the offer/answer exchange. See RFC 5939 [RFC5939] for further details.

実際の構成:実際の構成では、現在のオファー/アンサー交換で使用できるSDPセッションパラメータとメディアストリームコンポーネントの組み合わせと、そのパラメータを指定します。実際の構成を使用する場合、オファー/アンサー交換でのさらなる交渉は必要ありません。詳細については、RFC 5939 [RFC5939]を参照してください。

Base Attributes: Conventional SDP attributes appearing in the base configuration of a media block.


Base Configuration: The media configuration represented by a media block exclusive of all the capability negotiation attributes defined in this document, the base capability negotiation document [RFC5939], or any other capability negotiation document. In an offer SDP, the base configuration corresponds to the actual configuration as defined in RFC 5939 [RFC5939].

基本構成:このドキュメントで定義されているすべての機能ネゴシエーション属性、基本機能ネゴシエーションドキュメント[RFC5939]、またはその他の機能ネゴシエーションドキュメントを除くメディアブロックによって表されるメディア構成。オファーSDPでは、基本構成はRFC 5939 [RFC5939]で定義されている実際の構成に対応しています。

Conventional Attribute: Any SDP attribute other than those defined by the series of capability negotiation specifications.


Conventional SDP: An SDP record devoid of capability negotiation attributes.


Media Format Capability: A media format, typically a media subtype such as PCMU, H263-1998, or T38, expressed in the form of a capability.


Media Format Parameter Capability: A media format parameter ("a=fmtp" in conventional SDP) expressed in the form of a capability. The media format parameter capability is associated with a media format capability.

メディアフォーマットパラメーター機能:機能の形式で表現されたメディアフォーマットパラメーター(従来のSDPでは "a = fmtp")。メディアフォーマットパラメータ機能は、メディアフォーマット機能に関連付けられています。

Media Capability: The combined set of capabilities associated with expressing a media format and its relevant parameters (e.g., media format parameters and media specific parameters).


Potential Configuration: A potential configuration indicates which combinations of capabilities can be used for the session and its associated media stream components. Potential configurations are not ready for use; however, they are offered for potential use in the current offer/answer exchange. They provide an alternative that may be used instead of the actual configuration, subject to negotiation in the current offer/answer exchange. See RFC 5939 [RFC5939] for further details.

潜在的な構成:潜在的な構成は、セッションとそれに関連付けられたメディアストリームコンポーネントに使用できる機能の組み合わせを示します。潜在的な構成は使用できる状態ではありません。ただし、現在のオファー/アンサー交換で使用できる可能性があります。これらは、現在のオファー/アンサー交換でのネゴシエーションに従って、実際の構成の代わりに使用できる代替手段を提供します。詳細については、RFC 5939 [RFC5939]を参照してください。

Latent Configuration: A latent configuration indicates which combinations of capabilities could be used in a future negotiation for the session and its associated media stream components. Latent configurations are neither ready for use nor offered for actual or potential use in the current offer/answer exchange. Latent configurations merely inform the other side of possible configurations supported by the entity. Those latent configurations may be used to guide subsequent offer/answer exchanges, but they are not offered for use as part of the current offer/answer exchange.


3. SDP Media Capabilities
3. SDPメディア機能

The SDP capability negotiation [RFC5939] discusses the use of any SDP [RFC4566] attribute (a=) under the attribute capability "acap". The limitations of using "acap" for "fmtp" and "rtpmap" in a potential configuration are described in RFC 5939 [RFC5939]; for example, they can be used only at the media level since they are media-level attributes. RFC 5939 [RFC5939] does not provide a way to exchange media-level capabilities prior to the actual offer of the associated media stream. This section provides an overview of extensions providing an SDP media capability negotiation solution offering more robust capabilities negotiation. This is followed by definitions of new SDP attributes for the solution and its associated updated offer/answer procedures [RFC3264].

SDP機能ネゴシエーション[RFC5939]では、属性機能「acap」の下でのSDP [RFC4566]属性(a =)の使用について説明しています。潜在的な構成で「fmtp」と「rtpmap」に「acap」を使用する場合の制限は、RFC 5939 [RFC5939]で説明されています。たとえば、これらはメディアレベルの属性であるため、メディアレベルでのみ使用できます。 RFC 5939 [RFC5939]は、関連するメディアストリームが実際に提供される前にメディアレベルの機能を交換する方法を提供していません。このセクションでは、より堅牢な機能ネゴシエーションを提供するSDPメディア機能ネゴシエーションソリューションを提供する拡張機能の概要を説明します。その後に、ソリューションの新しいSDP属性の定義とそれに関連する更新されたオファー/アンサー手順[RFC3264]が続きます。

3.1. Requirements
3.1. 必要条件

The capability negotiation extensions requirements considered herein are as follows.


REQ-01: Support the specification of alternative (combinations of) media formats (codecs) in a single media block.


REQ-02: Support the specification of alternative media format parameters for each media format.


REQ-03: Retain backward compatibility with conventional SDP. Ensure that each and every offered configuration can be easily translated into a corresponding SDP media block expressed with conventional SDP lines.


REQ-04: Ensure that the scheme operates within the offer/answer model in such a way that media formats and parameters can be agreed upon with a single exchange.


REQ-05: Provide the ability to express offers in such a way that the offerer can receive media as soon as the offer is sent. (Note that the offerer may not be able to render received media prior to exchange of keying material.)

REQ-05:オファーが送信されるとすぐにオファーをメディアが受信できるようにオファーを表現する機能を提供します。 (提供者は、キー情報の交換前に受信したメディアをレンダリングできない場合があることに注意してください。)

REQ-06: Provide the ability to offer latent media configurations for future negotiation.


REQ-07: Provide reasonable efficiency in the expression of alternative media formats and/or format parameters, especially in those cases in which many combinations of options are offered.


REQ-08: Retain the extensibility of the base capability negotiation mechanism.


REQ-09: Provide the ability to specify acceptable combinations of media streams and media formats. For example, offer a PCMU audio stream with an H264 video stream or a G729 audio stream with an H263 video stream. This ability would give the offerer a means to limit processing requirements for simultaneous streams. This would also permit an offer to include the choice of an audio/T38 stream or an image/T38 stream, but not both.

REQ-09:メディアストリームとメディアフォーマットの許容可能な組み合わせを指定する機能を提供します。たとえば、H264ビデオストリームを含むPCMUオーディオストリーム、またはH263ビデオストリームを含むG729オーディオストリームを提供します。この機能により、オファーは、同時ストリームの処理要件を制限する手段を提供します。これにより、オファーにオーディオ/ T38ストリームまたはイメージ/ T38ストリームの選択を含めることもできますが、両方を含めることはできません。

Other possible extensions have been discussed, but have not been treated in this document. They may be considered in the future. Three such extensions are:


FUT-01: Provide the ability to mix, or change, media types within a single media block. Conventional SDP does not support this capability explicitly; the usual technique is to define a media subtype that represents the actual format within the nominal media type. For example, T.38 FAX as an alternative to audio/PCMU within an audio stream is identified as audio/T38; a separate FAX stream would use image/T38.

FUT-01:単一のメディアブロック内でメディアタイプを混合または変更する機能を提供します。従来のSDPはこの機能を明示的にサポートしていません。通常の手法は、公称メディアタイプ内の実際のフォーマットを表すメディアサブタイプを定義することです。たとえば、オーディオストリーム内のオーディオ/ PCMUの代替としてのT.38 FAXは、オーディオ/ T38として識別されます。別のFAXストリームはimage / T38を使用します。

FUT-02: Provide the ability to support multiple transport protocols within an active media stream without reconfiguration. This is not explicitly supported by conventional SDP.


FUT-03: Provide capability negotiation attributes for all media-level SDP line types in the same manner as already done for the attribute type, with the exception of the media line type itself. The media line type is handled in a special way to permit compact expression of media coding/format options. The line types are bandwidth ("b="), information ("i="), connection data ("c="), and, possibly, the deprecated encryption key ("k=").

FUT-03:メディアラインタイプ自体を除いて、属性タイプに対してすでに行われたのと同じ方法で、すべてのメディアレベルSDPラインタイプに機能ネゴシエーション属性を提供します。メディアラインタイプは、メディアコーディング/フォーマットオプションのコンパクトな表現を可能にする特別な方法で処理されます。回線タイプは、帯域幅( "b =")、情報( "i =")、接続データ( "c =")、およびおそらく非推奨の暗号化キー( "k =")です。

3.2. Solution Overview
3.2. ソリューションの概要

The solution consists of new capability attributes corresponding to conventional SDP line types, new parameters for the "pcfg", "acfg", and the new "lcfg" attributes extending the base attributes from RFC 5939 [RFC5939], and a use of the "pcfg" attribute to return capability information in the SDP answer.

ソリューションは、従来のSDP回線タイプに対応する新しい機能属性、「pcfg」、「acfg」の新しいパラメーター、およびRFC 5939 [RFC5939]の基本属性を拡張する新しい「lcfg」属性、および「 SDP回答で機能情報を返すpcfg "属性。

Several new attributes are defined in a manner that can be related to the capabilities specified in a media line, and its corresponding "rtpmap" and "fmtp" attributes.


o A new attribute ("a=rmcap") defines RTP-based media format capabilities in the form of a media subtype (e.g., "PCMU"), and its encoding parameters (e.g., "/8000/2"). Each resulting media format type/subtype capability has an associated handle called a media capability number. The encoding parameters are as specified for the "rtpmap" attribute defined in SDP [RFC4566], without the payload type number part.

o 新しい属性(「a = rmcap」)は、RTPベースのメディアフォーマット機能をメディアサブタイプ(「PCMU」など)の形式で定義し、そのエンコードパラメーター(「/ 8000/2」など)を定義します。結果の各メディアフォーマットタイプ/サブタイプ機能には、メディア機能番号と呼ばれる関連付けられたハンドルがあります。エンコーディングパラメータは、SDP [RFC4566]で定義されている「rtpmap」属性に指定されているとおりで、ペイロードタイプ番号の部分はありません。

o A new attribute ("a=omcap") defines other (non-RTP-based) media format capabilities in the form of a media subtype only (e.g., "T38"). Each resulting media format type/subtype capability has an associated handle called a media capability number.

o 新しい属性( "a = omcap")は、他の(RTPベースではない)メディアフォーマット機能をメディアサブタイプのみの形式(たとえば、「T38」)で定義します。結果の各メディアフォーマットタイプ/サブタイプ機能には、メディア機能番号と呼ばれる関連付けられたハンドルがあります。

o A new attribute ("a=mfcap") specifies media format parameters associated with one or more media format capabilities. The "mfcap" attribute is used primarily to associate the media format parameters normally carried in the "fmtp" attribute. Note that media format parameters can be used with RTP and non-RTP-based media formats.

o 新しい属性( "a = mfcap")は、1つ以上のメディアフォーマット機能に関連付けられたメディアフォーマットパラメータを指定します。 「mfcap」属性は主に、通常「fmtp」属性で伝送されるメディアフォーマットパラメータを関連付けるために使用されます。メディアフォーマットパラメータは、RTPおよび非RTPベースのメディアフォーマットで使用できることに注意してください。

o A new attribute ("a=mscap") specifies media parameters associated with one or more media format capabilities. The "mscap" attribute is used to associate capabilities with attributes other than "fmtp" or "rtpmap", for example, the "rtcp-fb" attribute defined in RFC 4585 [RFC4585].

o 新しい属性( "a = mscap")は、1つ以上のメディアフォーマット機能に関連付けられたメディアパラメータを指定します。 「mscap」属性は、機能を「fmtp」または「rtpmap」以外の属性に関連付けるために使用されます。たとえば、RFC 4585 [RFC4585]で定義されている「rtcp-fb」属性です。

o A new attribute ("a=lcfg") specifies latent media stream configurations when no corresponding media line ("m=") is offered. An example is the offer of latent configurations for video even though no video is currently offered. If the peer indicates support for one or more offered latent configurations, the corresponding media stream(s) may be added via a new offer/answer exchange.

o 新しい属性( "a = lcfg")は、対応するメディアライン( "m =")が提供されていない場合の潜在的なメディアストリーム構成を指定します。例としては、現在ビデオが提供されていなくても、ビデオの潜在的な構成の提供があります。ピアが1つ以上の提供された潜在構成のサポートを示している場合、対応するメディアストリームが新しいオファー/アンサー交換を介して追加されます。

o A new attribute ("a=sescap") is used to specify an acceptable combination of simultaneous media streams and their configurations as a list of potential and/or latent configurations.

o 新しい属性( "a = sescap")を使用して、同時メディアストリームとその構成の許容可能な組み合わせを、潜在的な構成または潜在的な構成のリストとして指定します。

New parameters are defined for the potential configuration ("pcfg"), latent configuration ("lcfg"), and accepted configuration ("acfg") attributes to associate the new attributes with particular configurations.

潜在的な構成( "pcfg")、潜在的な構成( "lcfg")、および受け入れられた構成( "acfg")の属性に対して新しいパラメーターが定義され、新しい属性を特定の構成に関連付けます。

o A new parameter type ("m=") is added to the potential configuration ("a=pcfg:") attribute and the actual configuration ("a=acfg:") attribute defined in RFC 5939 [RFC5939] and to the new latent configuration ("a=lcfg:") attribute. This permits specification of media capabilities (including their associated parameters) and combinations thereof for the configuration. For example, the "a=pcfg:" line might specify PCMU and telephone events [RFC4733] or G.729B and telephone events as acceptable configurations. The "a=acfg:" line in the answer would specify the configuration chosen.

o新しいパラメータータイプ( "m =")が、RFC 5939 [RFC5939]で定義されている潜在的な構成( "a = pcfg:")属性と実際の構成( "a = acfg:")属性および新しい潜在構成( "a = lcfg:")属性。これにより、メディア機能(関連するパラメーターを含む)とその構成の組み合わせを構成に指定できます。たとえば、「a = pcfg:」行は、PCMUと電話イベント[RFC4733]またはG.729Bと電話イベントを許容可能な構成として指定します。回答の「a = acfg:」行は、選択された構成を指定します。

o A new parameter type ("pt=") is added to the potential configuration, actual configuration, and latent configuration attributes. This parameter associates RTP payload type numbers with the referenced RTP-based media format capabilities and is appropriate only when the transport protocol uses RTP.

o 新しいパラメータータイプ( "pt =")が、潜在的な構成、実際の構成、および潜在的な構成属性に追加されます。このパラメータは、RTPペイロードタイプ番号を参照されるRTPベースのメディアフォーマット機能に関連付け、トランスポートプロトコルがRTPを使用する場合にのみ適切です。

o A new parameter type ("mt=") is used to specify the media type for latent configurations.

o 新しいパラメータータイプ( "mt =")を使用して、潜在的な構成のメディアタイプを指定します。

Special processing rules are defined for capability attribute arguments in order to reduce the need to replicate essentially identical attribute lines for the base configuration and potential configurations.


o A substitution rule is defined for any capability attribute to permit the replacement of the (escaped) media capability number with the media format identifier (e.g., the payload type number in audio/video profiles).

o (エスケープされた)メディア機能番号をメディア形式識別子(オーディオ/ビデオプロファイルのペイロードタイプ番号など)で置き換えることができるように、機能属性に対して置換ルールが定義されています。

o Replacement rules are defined for the conventional SDP equivalents of the "mfcap" and "mscap" capability attributes. This reduces the necessity to use the deletion qualifier in the "a=pcfg" parameter in order to ignore "rtpmap", "fmtp", and certain other attributes in the base configuration.

o 置換ルールは、「mfcap」および「mscap」機能属性の同等の従来のSDPに対して定義されています。これにより、基本構成の「rtpmap」、「fmtp」、およびその他の特定の属性を無視するために、「a = pcfg」パラメーターで削除修飾子を使用する必要性が減ります。

o An argument concatenation rule is defined for "mfcap" attributes that refer to the same media capability number. This makes it convenient to combine format options concisely by associating multiple mfcap lines with multiple media format capabilities.

o 引数の連結規則は、同じメディア機能番号を参照する「mfcap」属性に対して定義されます。これにより、複数のmfcap行を複数のメディアフォーマット機能に関連付けることで、フォーマットオプションを簡潔に組み合わせることができます。

This document extends the base protocol extensions to the offer/answer model that allow for capabilities and potential configurations to be included in an offer. Media capabilities constitute capabilities that can be used in potential and latent configurations. Whereas potential configurations constitute alternative offers that may be accepted by the answerer instead of the actual configuration(s) included in the "m=" line(s) and associated parameters, latent configurations merely inform the other side of possible configurations supported by the entity. Those latent configurations may be used to guide subsequent offer/answer exchanges, but they are not part of the current offer/answer exchange.

このドキュメントでは、基本プロトコル拡張をオファー/アンサーモデルに拡張し、オファーに機能と潜在的な構成を含めることができるようにします。メディア機能は、潜在的および潜在的な構成で使用できる機能を構成します。潜在的な構成は、「m =」行に含まれる実際の構成および関連するパラメータの代わりに、回答者が受け入れる可能性のある代替オファーを構成しますが、潜在的な構成は、エンティティがサポートする可能な構成の反対側に通知する。これらの潜在的な構成は、後続のオファー/アンサー交換のガイドとして使用できますが、現在のオファー/アンサー交換の一部ではありません。

The mechanism is illustrated by the offer/answer exchange below, where Alice sends an offer to Bob:


                   Alice                            Bob
                  | (1) Offer (SRTP and RTP)         |
                  |                                  |
                  | (2) Answer (RTP)                 |
                  |                                  |

Alice's offer includes RTP and Secure Real-time Transport Protocol (SRTP) as alternatives. RTP is the default, but SRTP is the preferred one (long lines are folded to fit the margins):

Aliceの提案には、代替としてRTPおよびSecure Real-time Transport Protocol(SRTP)が含まれています。デフォルトはRTPですが、SRTPが推奨されます(長い行はマージンに合わせて折り返されます)。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      m=audio 3456 RTP/AVP 0 18
      a=tcap:1 RTP/SAVP RTP/AVP
      a=rtpmap:0 PCMU/8000/1
      a=rtpmap:18 G729/8000/1
      a=fmtp:18 annexb=yes
      a=rmcap:1,4 G729/8000/1
      a=rmcap:2 PCMU/8000/1
      a=rmcap:5 telephone-event/8000
      a=mfcap:1 annexb=no
      a=mfcap:4 annexb=yes
      a=mfcap:5 0-11
      a=acap:1 crypto:1 AES_CM_128_HMAC_SHA1_32 \
      a=pcfg:1 m=4,5|1,5 t=1 a=1 pt=1:100,4:101,5:102
      a=pcfg:2 m=2 t=1 a=1 pt=2:103
      a=pcfg:3 m=4 t=2 pt=4:18

The required base and extensions are provided by the "a=creq" attribute defined in RFC 5939 [RFC5939], with the option tag "med-v0", which indicates that the extension framework defined here must be supported. The base-level capability negotiation support ("cap-v0" [RFC5939]) is implied since it is required for the extensions.

必要なベースと拡張は、RFC 5939 [RFC5939]で定義されている「a = creq」属性と、ここで定義されている拡張フレームワークをサポートする必要があることを示すオプションタグ「med-v0」で提供されます。基本レベルの機能ネゴシエーションサポート( "cap-v0" [RFC5939])は、拡張に必要であるため、暗黙的に含まれています。

The "m=" line indicates that Alice is offering to use plain RTP with PCMU or G.729B. The media line implicitly defines the default transport protocol (RTP/AVP in this case) and the default actual configuration.

「m =」行は、AliceがPCMUまたはG.729BでプレーンRTPを使用することを提案していることを示しています。メディア行は、デフォルトのトランスポートプロトコル(この場合はRTP / AVP)とデフォルトの実際の構成を暗黙的に定義します。

The "a=tcap:1" line, specified in the SDP capability negotiation base protocol [RFC5939], defines transport protocol capabilities, in this case Secure RTP (SAVP profile) as the first option and RTP (AVP profile) as the second option.

SDP機能ネゴシエーションベースプロトコル[RFC5939]で指定されている "a = tcap:1"行は、トランスポートプロトコル機能を定義します。この場合、最初のオプションとしてSecure RTP(SAVPプロファイル)、2番目のオプションとしてRTP(AVPプロファイル)を定義します。

The "a=rmcap:1,4" line defines two G.729 RTP-based media format capabilities, numbered 1 and 4, and their encoding rate. The capabilities are of media type "audio" and subtype G729. Note that the media subtype is explicitly specified here, rather than RTP payload type numbers. This permits the assignment of payload type numbers in the media stream configuration specification. In this example, two G.729 subtype capabilities are defined. This permits the declaration of two sets of formatting parameters for G.729.

「a = rmcap:1,4」の行は、1と4の番号が付けられた2つのG.729 RTPベースのメディアフォーマット機能と、それらのエンコーディングレートを定義しています。機能は、メディアタイプ「オーディオ」とサブタイプG729です。ここでは、RTPペイロードタイプ番号ではなく、メディアサブタイプが明示的に指定されていることに注意してください。これにより、メディアストリーム構成仕様でペイロードタイプ番号を割り当てることができます。この例では、2つのG.729サブタイプ機能が定義されています。これにより、G.729の2セットのフォーマットパラメータを宣言できます。

The "a=rmcap:2" line defines a G.711 mu-law capability, numbered 2.

「a = rmcap:2」行は、G.711 mu-law機能を定義し、番号は2です。

The "a=rmcap:5" line defines an audio telephone-event capability, numbered 5.

「a = rmcap:5」行は、5と番号付けされたオーディオ電話イベント機能を定義します。

The "a=mfcap:1" line specifies the "fmtp" formatting parameters for capability 1 (offerer will not accept G.729 Annex B packets).

「a = mfcap:1」行は、機能1の「fmtp」フォーマットパラメータを指定します(オファーはG.729 Annex Bパケットを受け入れません)。

The "a=mfcap:4" line specifies the "fmtp" formatting parameters for capability 4 (offerer will accept G.729 Annex B packets).

「a = mfcap:4」行は、機能4の「fmtp」フォーマットパラメータを指定します(オファーはG.729 Annex Bパケットを受け入れます)。

The "a=mfcap:5" line specifies the "fmtp" formatting parameters for capability 5 (the dual-tone multi-frequency (DTMF) touchtones 0-9,*,#).

"a = mfcap:5"行は、機能5(デュアルトーンマルチ周波数(DTMF)タッチトーン0-9、*、#)の "fmtp"フォーマットパラメータを指定します。

The "a=acap:1" line specified in the base protocol provides the "crypto" attribute that provides the keying material for SRTP using SDP security descriptions.

基本プロトコルで指定された「a = acap:1」行は、SDPセキュリティ記述を使用するSRTPのキー情報を提供する「crypto」属性を提供します。

The "a=pcfg:" attributes provide the potential configurations included in the offer by reference to the media capabilities, transport capabilities, attribute capabilities, and specified payload type number mappings. Three explicit alternatives are provided; the lowest-numbered one is the preferred one. The "a=pcfg:1 ..." line specifies media capabilities 4 and 5, i.e., G.729B and DTMF (including their associated media format parameters), or media capability 1 and 5, i.e., G.729 and DTMF (including their associated media format parameters). Furthermore, it specifies transport protocol capability 1 (i.e., the RTP/SAVP profile - secure RTP), and the attribute capability 1, i.e., the "crypto" attribute provided. Last, it specifies a payload type number mapping for (RTP-based) media capabilities 1, 4, and 5, thereby permitting the offerer to distinguish between encrypted media and unencrypted media received prior to receipt of the answer.

「a = pcfg:」属性は、メディア機能、トランスポート機能、属性機能、および指定されたペイロードタイプ番号のマッピングを参照して、オファーに含まれる潜在的な構成を提供します。 3つの明示的な代替手段が提供されています。最も小さい番号のものが優先されます。 「a = pcfg:1 ...」行は、メディア機能4および5、つまりG.729BおよびDTMF(関連するメディアフォーマットパラメータを含む)、またはメディア機能1および5、すなわちG.729およびDTMF(関連するメディアフォーマットパラメータを含む)。さらに、トランスポートプロトコル機能1(つまり、RTP / SAVPプロファイル-セキュアRTP)、および属性機能1、つまり提供される「クリプト」属性を指定します。最後に、(RTPベースの)メディア機能1、4、および5のペイロードタイプ番号のマッピングを指定します。これにより、提供者は、暗号化されたメディアと、応答の受信前に受信した非暗号化メディアを区別できます。

Use of unique payload type numbers in alternative configurations is not required; codecs such as Adaptive Multi-Rate Wideband (AMR-WB) [RFC4867] have the potential for so many combinations of options that it may be impractical to define unique payload type numbers for all supported combinations. If unique payload type numbers cannot be specified, then the offerer will be obliged to wait for the SDP answer before rendering received media. For SRTP using Security Descriptions (SDES) inline keying [RFC4568], the offerer will still need to receive the answer before being able to decrypt the stream.

代替構成で一意のペイロードタイプ番号を使用する必要はありません。アダプティブマルチレートワイドバンド(AMR-WB)[RFC4867]などのコーデックは、オプションの組み合わせが多すぎる可能性があるため、サポートされているすべての組み合わせに対して一意のペイロードタイプ番号を定義することは非現実的です。一意のペイロードタイプ番号を指定できない場合、提供者は受信したメディアをレンダリングする前にSDPの応答を待つ必要があります。 Security Descriptions(SDES)インラインキーイング[RFC4568]を使用するSRTPの場合、オファーを提供するユーザーは、ストリームを解読する前に回答を受信する必要があります。

The second alternative ("a=pcfg:2 ...") specifies media capability 2, i.e., PCMU, under the RTP/SAVP profile, with the same SRTP key material.

2番目の選択肢( "a = pcfg:2 ...")は、RTP / SAVPプロファイルの下で、同じSRTPキーマテリアルを使用して、メディア機能2、つまりPCMUを指定します。

The third alternative ("a=pcfg:3 ...") offers G.729B unsecured; its only purpose in this example is to show a preference for G.729B over PCMU.

3番目の選択肢( "a = pcfg:3 ...")は、G.729Bをセキュリティで保護せずに提供します。この例での唯一の目的は、PCMUよりもG.729Bの優先度を示すことです。

Per RFC 5939 [RFC5939], the media line, with any qualifying attributes such as "fmtp" or "rtpmap", is itself considered a valid configuration (the current actual configuration); it has the lowest preference (per RFC 5939 [RFC5939]).

RFC 5939 [RFC5939]によると、「fmtp」や「rtpmap」などの修飾属性を持つメディア行は、それ自体が有効な構成(現在の実際の構成)と見なされます。最も優先度が低い(RFC 5939 [RFC5939]による)。

Bob receives the SDP offer from Alice. Bob supports G.729B, PCMU, and telephone events over RTP, but not SRTP, hence he accepts the potential configuration 3 for RTP provided by Alice. Bob generates the following answer:


      o=- 24351 621814 IN IP4
      c=IN IP4
      t=0 0
      m=audio 4567 RTP/AVP 18
      a=rtpmap:18 G729/8000
      a=fmtp:18 annexb=yes
      a=acfg:3 m=4 t=2 pt=4:18

Bob includes the "a=csup" and "a=acfg" attributes in the answer to inform Alice that he can support the med-v0 level of capability negotiations. Note that in this particular example, the answerer supported the capability extensions defined here; however, had he not, he would simply have processed the offer based on the offered PCMU and G.729 codecs under the RTP/AVP profile only. Consequently, the answer would have omitted the "a=csup" attribute line and chosen one or both of the PCMU and G.729 codecs instead. The answer carries the accepted configuration in the "m=" line along with corresponding "rtpmap" and/or "fmtp" parameters, as appropriate.

Bobは、回答に「a = csup」および「a = acfg」属性を含めて、機能ネゴシエーションのmed-v0レベルをサポートできることをアリスに通知します。この特定の例では、回答者がここで定義された機能拡張をサポートしていることに注意してください。ただし、そうでない場合は、RTP / AVPプロファイルでのみ、提供されたPCMUおよびG.729コーデックに基づいてオファーを処理しただけです。その結果、答えは「a = csup」属性行を省略し、代わりにPCMUおよびG.729コーデックの一方または両方を選択したことになります。回答には、「m =」行で受け入れられた構成と、対応する「rtpmap」または「fmtp」パラメータ、あるいはその両方が含まれています。

Note that per the base protocol, after the above, Alice MAY generate a new offer with an actual configuration ("m=" line, etc.) corresponding to the actual configuration referenced in Bob's answer (not shown here).

ベースプロトコルごとに、上記の後、アリスはボブの回答で参照されている実際の構成に対応する実際の構成( "m ="行など)で新しいオファーを生成できます(ここには表示されていません)。

3.3. New Capability Attributes
3.3. 新しい機能属性

In this section, we present the new attributes associated with indicating the media capabilities for use by the SDP capability negotiation. The approach taken is to keep things similar to the existing media capabilities defined by the existing media descriptions ("m=" lines) and the associated "rtpmap" and "fmtp" attributes. We use media subtypes and "media capability numbers" to link the relevant media capability parameters. This permits the capabilities to be defined at the session level and be used for multiple streams, if desired. For RTP-based media formats, payload types are then specified at the media level (see Section

このセクションでは、SDP機能ネゴシエーションで使用するメディア機能の指定に関連する新しい属性を示します。取られたアプローチは、既存のメディア記述( "m ="行)および関連する "rtpmap"および "fmtp"属性によって定義された既存のメディア機能と同様のものを維持することです。メディアサブタイプと「メディア機能番号」を使用して、関連するメディア機能パラメータをリンクします。これにより、必要に応じて、機能をセッションレベルで定義し、複数のストリームに使用できるようになります。 RTPベースのメディア形式の場合、ペイロードタイプはメディアレベルで指定されます(セクション3.3.4.2を参照)。

A media capability merely indicates possible support for the media type and media format(s) and parameters in question. In order to actually use a media capability in an offer/answer exchange, it MUST be referenced in a potential configuration.


Media capabilities, i.e., the attributes associated with expressing media capability formats, parameters, etc., can be provided at the session level and/or the media level. Media capabilities provided at the session level may be referenced in any "pcfg" or "lcfg" attribute at the media level (consistent with the media type), whereas media capabilities provided at the media level may be referenced only by the "pcfg" or "lcfg" attribute within that media stream. In either case, the scope of the <med-cap-num> is the entire session description. This enables each media capability to be uniquely referenced across the entire session description (e.g., in a potential configuration).


3.3.1. The Media Format Capability Attributes
3.3.1. メディアフォーマット機能の属性
   Media subtypes can be expressed as media format capabilities by use
   of the "a=rmcap" and "a=omcap" attributes.  The "a=rmcap" attribute
   MUST be used for RTP-based media, whereas the "a=omcap" attribute
   MUST be used for non-RTP-based (other) media formats.  The two
   attributes are defined as follows:
   a=rmcap:<media-cap-num-list> <encoding-name>/<clock-rate>
   a=omcap:<media-cap-num-list> <format-name>

where <media-cap-num-list> is a (list of) media capability number(s) used to number a media format capability, the <encoding name> or <format-name> is the media subtype, e.g., H263-1998, PCMU, or T38, <clock rate> is the encoding rate, and <encoding parms> are the media encoding parameters for the media subtype. All media format capabilities in the list are assigned to the same media type/subtype. Each occurrence of the "rmcap" and "omcap" attribute MUST use unique values in their <media-cap-num-list>; the media capability numbers are shared between the two attributes and the numbers MUST be unique across the entire SDP session. In short, the "rmcap" and "omcap" attributes define media format capabilities and associate them with a media capability number in the same manner as the "rtpmap" attribute defines them and associates them with a payload type number. Additionally, the attributes allow multiple capability numbers to be defined for the media format in question by specifying a range of media capability numbers. This permits the media format to be associated with different media parameters in different configurations. When a range of capability numbers is specified, the first (leftmost) capability number MUST be strictly smaller than the second (rightmost), i.e., the range increases and covers at least two numbers.

ここで、<media-cap-num-list>は、メディアフォーマット機能に番号を付けるために使用されるメディア機能番号(のリスト)です。<encoding name>または<format-name>は、H263-などのメディアサブタイプです。 1998、PCMU、またはT38、<clock rate>はエンコーディングレート、<encoding parms>はメディアサブタイプのメディアエンコーディングパラメータです。リスト内のすべてのメディアフォーマット機能は、同じメディアタイプ/サブタイプに割り当てられています。 「rmcap」および「omcap」属性の各出現は、<media-cap-num-list>で一意の値を使用する必要があります。メディア機能番号は2つの属性間で共有され、番号はSDPセッション全体で一意である必要があります。つまり、「rmcap」属性と「omcap」属性はメディアフォーマット機能を定義し、「rtpmap」属性が定義してペイロードタイプ番号に関連付けるのと同じ方法で、それらをメディア機能番号に関連付けます。さらに、属性は、メディア機能番号の範囲を指定することにより、問題のメディアフォーマットに対して複数の機能番号を定義できるようにします。これにより、メディアフォーマットをさまざまな構成のさまざまなメディアパラメータに関連付けることができます。機能番号の範囲が指定されている場合、最初の(左端の)機能番号は2番目の(右端の)番号よりも厳密に小さい必要があります。つまり、範囲は増加し、少なくとも2つの番号をカバーします。

In ABNF [RFC5234], we have:

ABNF [RFC5234]では、次のようになっています。

   media-capability-line = rtp-mcap / non-rtp-mcap
   rtp-mcap           = "a=rmcap:" media-cap-num-list
                           1*WSP encoding-name "/" clock-rate
                           ["/" encoding-parms]
   non-rtp-mcap       = "a=omcap:" media-cap-num-list 1*WSP format-name
   media-cap-num-list = media-cap-num-element
                        *("," media-cap-num-element)
   media-cap-num-element = media-cap-num
                                / media-cap-num-range
   media-cap-num-range = media-cap-num "-" media-cap-num
   media-cap-num      = NonZeroDigit *9(DIGIT)
   encoding-name      = token ;defined in RFC 4566
   clock-rate         = NonZeroDigit *9(DIGIT)
   encoding-parms     = token
   format-name        = token ;defined in RFC 4566
   NonZeroDigit       = %x31-39    ; 1-9
   The encoding-name, clock-rate, and encoding-params are as defined to
   appear in an "rtpmap" attribute for each media type/subtype.  Thus,
   it is easy to convert an "rmcap" attribute line into one or more
   "rtpmap" attribute lines, once a payload type number is assigned to a
   media-cap-num (see Section 3.3.5).

The format-name is a media format description for non-RTP-based media as defined for the <fmt> part of the media description ("m=" line) in SDP [RFC4566]. In simple terms, it is the name of the media format, e.g., "t38". This form can also be used in cases such as Binary Floor Control Protocol (BFCP) [RFC4585] where the fmt list in the "m=" line is effectively ignored (BFCP uses "*").

format-nameは、SDP [RFC4566]のメディア記述( "m ="行)の<fmt>部分に定義されている非RTPベースのメディアのメディア形式記述です。簡単に言えば、「t38」などのメディア形式の名前です。このフォームは、Binary Floor Control Protocol(BFCP)[RFC4585]のような場合にも使用できます。この場合、「m =」行のfmtリストは事実上無視されます(BFCPは「*」を使用します)。

The "rmcap" and "omcap" attributes can be provided at the session level and/or the media level. There can be more than one "rmcap" and more than one "omcap" attribute at both the session and media levels (i.e., more than one of each at the session level and more than one of each in each media description). Media capability numbers cannot include leading zeroes, and each media-cap-num MUST be unique within the entire SDP record; it is used to identify that media capability in potential, latent, and actual configurations, and in other attribute lines as explained below. Note that the media-cap-num values are shared between the "rmcap" and "omcap" attributes; hence, the uniqueness requirement applies to the union of them. When the media capabilities are used in a potential, latent, or actual configuration, the media formats referred by those configurations apply at the media level, irrespective of whether the media capabilities themselves were specified at the session or media level. In other words, the media capability applies to the specific media description associated with the configuration that invokes it.

「rmcap」および「omcap」属性は、セッションレベルおよび/またはメディアレベルで提供できます。セッションレベルとメディアレベルの両方に複数の「rmcap」属性と複数の「omcap」属性が存在する可能性があります(つまり、セッションレベルにそれぞれ複数あり、各メディアの説明にそれぞれ複数あります)。メディア機能番号に先行ゼロを含めることはできません。各media-cap-numは、SDPレコード全体で一意である必要があります。潜在的な構成、潜在的な構成、実際の構成、および以下で説明するその他の属性行で、メディア機能を識別するために使用されます。 media-cap-num値は「rmcap」属性と「omcap」属性の間で共有されることに注意してください。したがって、一意性の要件はそれらの結合に適用されます。メディア機能が潜在的、潜在的、または実際の構成で使用される場合、それらの構成によって参照されるメディア形式は、メディア機能自体がセッションレベルで指定されたかメディアレベルで指定されたかに関係なく、メディアレベルで適用されます。つまり、メディア機能は、それを呼び出す構成に関連付けられた特定のメディア記述に適用されます。

For example:


      o=- 24351 621814 IN IP4
      c=IN IP4
      t=0 0
      a=rmcap:1 L16/8000/1
      a=rmcap:2 L16/16000/2
      a=rmcap:3 H263-1998/90000
      a=omcap:4 example
      m=audio 54320 RTP/AVP 0
      a=pcfg:1 m=1|2, pt=1:99,2:98
      m=video 66544 RTP/AVP 100
      a=rtpmap:100 H264/90000
      a=pcfg:10 m=3 pt=3:101
      a=tcap:1 TCP
      a=pcfg:11 m=4 t=1
3.3.2. The Media Format Parameter Capability Attribute
3.3.2. メディアフォーマットパラメータ機能属性

This attribute is used to associate media format specific parameters with one or more media format capabilities. The form of the attribute is


      a=mfcap:<media-caps> <list of parameters>

where <media-caps> permits the list of parameters to be associated with one or more media format capabilities and the format parameters are specific to the type of media format. The mfcap lines map to a single traditional SDP "fmtp" attribute line (one for each entry in <media-caps>) of the form

<media-caps>は、パラメータのリストを1つ以上のメディアフォーマット機能に関連付けることを許可し、フォーマットパラメータはメディアフォーマットのタイプに固有です。 mfcap行は、次の形式の単一の従来のSDP "fmtp"属性行(<media-caps>の各エントリに1つ)にマップします。

      a=fmtp:<fmt> <list of parameters>

where <fmt> is the media format parameter defined in RFC 4566 [RFC4566], as appropriate for the particular media stream. The "mfcap" attribute MUST be used to encode attributes for media capabilities, which would conventionally appear in an "fmtp" attribute. The existing "acap" attribute MUST NOT be used to encode "fmtp" attributes.

ここで、<fmt>は、RFC 4566 [RFC4566]で定義されているメディア形式パラメーターであり、特定のメディアストリームに適切です。 「mfcap」属性は、従来「fmtp」属性に表示されていたメディア機能の属性をエンコードするために使用する必要があります。既存の「acap」属性を使用して「fmtp」属性をエンコードすることはできません。

The "mfcap" attribute adheres to SDP [RFC4566] attribute production rules with

「mfcap」属性は、SDP [RFC4566]属性生成ルールに準拠しています。

      media-format-parameter-capability =
             "a=mfcap:" media-cap-num-list 1*WSP fmt-specific-param-list
      fmt-specific-param-list = text ; defined in RFC 4566

Note that media format parameters can be used with RTP-based and non-RTP-based media formats.

メディアフォーマットパラメータは、RTPベースおよびRTPベース以外のメディアフォーマットで使用できることに注意してください。 Media Format Parameter Concatenation Rule メディアフォーマットパラメータの連結規則

The appearance of media subtypes with a large number of formatting options (e.g., AMR-WB [RFC4867]), coupled with the restriction that only a single "fmtp" attribute can appear per media format, suggests that it is useful to create a combining rule for "mfcap" parameters that are associated with the same media capability number. Therefore, different mfcap lines MAY include the same media-cap-num in their media-cap-num-list. When a particular media capability is selected for processing, the parameters from each mfcap line that references the particular capability number in its media-cap-num-list are concatenated together via ";", in the order the "mfcap" attributes appear in the SDP record, to form the equivalent of a single "fmtp" attribute line. This permits one to define a separate mfcap line for a single parameter and value that is to be applied to each media capability designated in the media-cap-num-list. This provides a compact method to specify multiple combinations of format parameters when using codecs with multiple format options. Note that order-dependent parameters SHOULD be placed in a single mfcap line to avoid possible problems with line rearrangement by a middlebox.

多数のフォーマットオプション(たとえば、AMR-WB [RFC4867])を持つメディアサブタイプの出現は、メディアフォーマットごとに単一の「fmtp」属性しか出現できないという制限と相まって、組み合わせを作成することが有用であることを示唆しています。同じメディア機能番号に関連付けられている「mfcap」パラメーターのルール。したがって、異なるmfcap行のmedia-cap-num-listに同じmedia-cap-numが含まれる場合があります。特定のメディア機能が処理のために選択されると、media-cap-num-list内の特定の機能番号を参照する各mfcap行からのパラメーターは、「;」を介して連結され、「mfcap」属性がSDPレコード。単一の「fmtp」属性行に相当します。これにより、media-cap-num-listで指定された各メディア機能に適用される単一のパラメーターと値に対して個別のmfcap行を定義できます。これにより、複数のフォーマットオプションを持つコーデックを使用するときに、フォーマットパラメータの複数の組み合わせを指定するコンパクトな方法が提供されます。ミドルボックスによる行の再配置で起こり得る問題を回避するために、順序に依存するパラメーターは単一のmfcap行に配置する必要があることに注意してください。

Format parameters are not parsed by SDP; their content is specific to the media type/subtype. When format parameters for a specific media capability are combined from multiple "a=mfcap" lines that reference that media capability, the format-specific parameters are concatenated together and separated by ";" for construction of the corresponding format attribute ("a=fmtp"). The resulting format attribute will look something like the following (without line breaks):

フォーマットパラメータはSDPによって解析されません。それらのコンテンツはメディアタイプ/サブタイプに固有です。特定のメディア機能のフォーマットパラメータが、そのメディア機能を参照する複数の「a = mfcap」行から結合される場合、フォーマット固有のパラメータは連結され、「;」で区切られます。対応するフォーマット属性( "a = fmtp")の構築用。結果のフォーマット属性は、次のようになります(改行なし)。

        a=fmtp:<fmt> <fmt-specific-param-list1>;

where <fmt> depends on the transport protocol in the manner defined in RFC 4566 [RFC4566]. SDP cannot assess the legality of the resulting parameter list in the "a=fmtp" line; the user must take care to ensure that legal parameter lists are generated.

<fmt>は、RFC 4566 [RFC4566]で定義されている方法でトランスポートプロトコルに依存します。 SDPは、 "a = fmtp"行の結果のパラメーターリストの合法性を評価できません。ユーザーは、正当なパラメータリストが生成されるように注意する必要があります。

The "mfcap" attribute can be provided at the session level and the media level. There can be more than one "mfcap" attribute at the session or media level. The unique media-cap-num is used to associate the parameters with a media capability.


As a simple example, a G.729 capability is, by default, considered to support comfort noise as defined by Annex B. Capabilities for G.729 with and without comfort noise support may thus be defined by:

簡単な例として、G.729機能は、デフォルトで、Annex Bで定義されているようにコンフォートノイズをサポートすると見なされています。

      a=rmcap:1,2 G729/8000
      a=mfcap:2 annexb:no

Media capability 1 supports G.729 with Annex B, whereas media capability 2 supports G.729 without Annex B.

メディア機能1は、Annex Bを使用するG.729をサポートし、メディア機能2は、Annex Bを使用しないG.729をサポートします。

Example for H.263 video:


      a=rmcap:1 H263-1998/90000
      a=rmcap:2 H263-2000/90000
      a=mfcap:1 CIF=4;QCIF=2;F=1;K=1
      a=mfcap:2 profile=2;level=2.2

Finally, for six format combinations of the Adaptive Multi-Rate codec:


      a=rmcap:1-3 AMR/8000/1
      a=rmcap:4-6 AMR-WB/16000/1
      a=mfcap:1,2,3,4 mode-change-capability=1
      a=mfcap:5,6 mode-change-capability=2
      a=mfcap:1,2,3,5 max-red=220
      a=mfcap:3,4,5,6 octet-align=1
      a=mfcap:1,3,5 mode-set=0,2,4,7
      a=mfcap:2,4,6 mode-set=0,3,5,6

So that AMR codec #1, when specified in a "pcfg" attribute within an audio stream block (and assigned payload type number 98) as in:


      a=pcfg:1 m=1 pt=1:98

is essentially equivalent to the following:


      m=audio 49170 RTP/AVP 98
      a=rtpmap:98 AMR/8000/1
      a=fmtp:98 mode-change-capability=1; \
      max-red=220; mode-set=0,2,4,7

and AMR codec #4 with payload type number 99, depicted by the potential configuration:


      a=pcfg:4 m=4, pt=4:99

is equivalent to the following:


      m=audio 49170 RTP/AVP 99
      a=rtpmap:99 AMR-WB/16000/1
      a=fmtp:99 mode-change-capability=1; octet-align=1; \

and so on for the other four combinations. SDP could thus convert the media capabilities specifications into one or more alternative media stream specifications, one of which can be chosen for the answer.


3.3.3. The Media-Specific Capability Attribute
3.3.3. メディア固有の機能属性

Attributes and parameters associated with a media format are typically specified using the "rtpmap" and "fmtp" attributes in SDP, and the similar "rmcap" and "mfcap" attributes in SDP media capabilities. Some SDP extensions define other attributes that need to be associated with media formats, for example, the "rtcp-fb" attribute defined in RFC 4585 [RFC4585]. Such media-specific attributes, beyond the "rtpmap" and "fmtp" attributes, may be associated with media capability numbers via a new media-specific attribute, "mscap", of the following form:

メディア形式に関連付けられた属性とパラメーターは、通常、SDPの「rtpmap」属性と「fmtp」属性、およびSDPメディア機能の同様の「rmcap」属性と「mfcap」属性を使用して指定されます。一部のSDP拡張機能は、RFC 4585 [RFC4585]で定義されている「rtcp-fb」属性など、メディアフォーマットに関連付ける必要がある他の属性を定義します。このようなメディア固有の属性は、「rtpmap」および「fmtp」属性を超えて、次の形式の新しいメディア固有の属性「mscap」を介してメディア機能番号に関連付けることができます。

         a=mscap:<media caps star> <att field> <att value>

where <media caps star> is a (list of) media capability number(s), <att field> is the attribute name, and <att value> is the value field for the named attribute. Note that the media capability numbers refer to media format capabilities specified elsewhere in the SDP ("rmcap" and/or "omcap"). If a range of capability numbers is specified, the first (leftmost) capability number MUST be strictly smaller than the second (rightmost). The media capability numbers may include a wildcard ("*"), which will be used instead of any payload type mappings in the resulting SDP (see, e.g., RFC 4585 [RFC4585] and the example below). In ABNF, we have:

ここで、<media caps star>はメディア機能番号(のリスト)、<att field>は属性名、<att value>は名前付き属性の値フィールドです。メディア機能番号は、SDPの他の場所で指定されたメディアフォーマット機能(「rmcap」または「omcap」、あるいはその両方)を指すことに注意してください。機能番号の範囲が指定されている場合、最初(左端)の機能番号は2番目(右端)よりも厳密に小さくなければなりません(MUST)。メディア機能番号にはワイルドカード( "*")を含めることができます。ワイルドカードは、結果のSDPでペイロードタイプのマッピングの代わりに使用されます(たとえば、RFC 4585 [RFC4585]と以下の例を参照)。 ABNFには次のものが含まれます。

          media-specific-capability = "a=mscap:"
                                       1*WSP att-field ; from RFC 4566
                                       1*WSP att-value ; from RFC 4566
          media-caps-star           =  media-cap-star-element
                                         *("," media-cap-star-element)
          media-cap-star-element    = (media-cap-num [wildcard])
                                    / (media-cap-num-range [wildcard])
          wildcard                  = "*"

Given an association between a media capability and a payload type number as specified by the "pt=" parameters in a "pcfg" attribute line, a mscap line may be translated easily into a conventional SDP attribute line of the form:

メディア機能と「pcfg」属性行の「pt =」パラメータで指定されたペイロードタイプ番号との関連付けが与えられると、mscap行は次の形式の従来のSDP属性行に簡単に変換できます。

      a=<att field>":"<fmt> <att value> ; <fmt> defined in SDP [RFC4566]

A resulting attribute that is not a legal SDP attribute, as specified by RFC 4566, MUST be ignored by the receiver.

RFC 4566で指定されている、有効なSDP属性ではない結果の属性は、受信者によって無視される必要があります。

If a media capability number (or range) contains a wildcard character at the end, any payload type mapping specified for that media-specific capability (or range of capabilities) will use the wildcard character in the resulting SDP instead of the payload type specified in the payload type mapping ("pt" parameter) in the configuration attribute.


A single mscap line may refer to multiple media capabilities by use of a capability number range; this is equivalent to multiple mscap lines, each with the same attribute values (but different media capability numbers), one line per media capability.


Multiple mscap lines may refer to the same media capability, but, unlike the "mfcap" attribute, no concatenation operation is defined. Hence, multiple mscap lines applied to the same media capability are equivalent to multiple lines of the specified attribute in a conventional media record.


Here is an example with the "rtcp-fb" attribute, modified from an example in RFC 5104 [RFC5104] (with the session level and audio media omitted). If the offer contains a media block like the following (note the wildcard character),

これは、RFC 5104 [RFC5104]の例から変更された「rtcp-fb」属性の例です(セッションレベルとオーディオメディアは省略されています)。オファーに次のようなメディアブロックが含まれている場合(ワイルドカード文字に注意してください)、

      m=video 51372 RTP/AVP 98
      a=rtpmap:98 H263-1998/90000
      a=tcap:1 RTP/AVPF
      a=rmcap:1 H263-1998/90000
      a=mscap:1 rtcp-fb ccm tstr
      a=mscap:1 rtcp-fb ccm fir
      a=mscap:1* rtcp-fb ccm tmmbr smaxpr=120
      a=pcfg:1 t=1 m=1 pt=1:98

and if the proposed configuration is chosen, then the equivalent media block would look like the following


      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
3.3.4. New Configuration Parameters
3.3.4. 新しい構成パラメーター

Along with the new attributes for media capabilities, new extension parameters are defined for use in the potential configuration, the actual configuration, and/or the new latent configuration defined in Section 3.3.5.

メディア機能の新しい属性とともに、潜在的な構成、実際の構成、またはセクション3.3.5で定義された新しい潜在的な構成で使用するための新しい拡張パラメーターが定義されています。 The Media Configuration Parameter (m=) メディア構成パラメーター(m =)

The media configuration parameter is used to specify the media format(s) and related parameters for a potential, actual, or latent configuration. Adhering to the ABNF for extension-config-list in RFC 5939 [RFC5939] with

メディア構成パラメーターは、潜在的な、実際の、または潜在的な構成のメディア形式と関連パラメーターを指定するために使用されます。 RFC 5939 [RFC5939]のextension-config-listのABNFに準拠

ext-cap-name = "m" ext-cap-list = media-cap-num-list [*(BAR media-cap-num-list)]

ext-cap-name = "m" ext-cap-list = media-cap-num-list [*(BAR media-cap-num-list)]

we have


              media-config-list = ["+"] "m=" media-cap-num-list
                                             *(BAR media-cap-num-list)
                                   ;BAR is defined in RFC 5939
                                   ;media-cap-num-list is defined above

Alternative media configurations are separated by a vertical bar ("|"). The alternatives are ordered by preference, most-preferred first. When media capabilities are not included in a potential configuration at the media level, the media type and media format from the associated "m=" line will be used. The use of the plus sign ("+") is described in RFC 5939.

代替メディア構成は、縦棒( "|")で区切られています。選択肢は優先順に並べられ、最も優先されます。メディア機能がメディアレベルの潜在的な構成に含まれていない場合、関連付けられている「m =」行のメディアタイプとメディアフォーマットが使用されます。正符号( "+")の使用については、RFC 5939で説明されています。 The Payload Type Number Mapping Parameter (pt=) ペイロードタイプ番号マッピングパラメータ(pt =)
   The payload type number mapping parameter is used to specify the
   payload type number to be associated with each RTP-based media format
   in a potential, actual, or latent configuration.  We define the
   payload type number mapping parameter, payload-number-config-list, in
   accordance with the extension-config-list format defined in RFC 5939
   [RFC5939].  In ABNF:
   payload-number-config-list = ["+"] "pt=" media-map-list
   media-map-list      = media-map *("," media-map)
   media-map           = media-cap-num ":" payload-type-number
                            ; media-cap-num is defined in Section 3.3.1
   payload-type-number = NonZeroDigit *2(DIGIT) ; RTP payload
                                                ; type number

The example in Section 3.3.7 shows how the parameters from the rmcap line are mapped to payload type numbers from the "pcfg" "pt" parameter. The use of the plus sign ("+") is described in RFC 5939 [RFC5939].

セクション3.3.7の例は、rmcap行のパラメーターが「pcfg」「pt」パラメーターのペイロードタイプ番号にマップされる方法を示しています。プラス記号( "+")の使用は、RFC 5939 [RFC5939]で説明されています。

A latent configuration represents a future capability; hence, the "pt=" parameter is not directly meaningful in the "lcfg" attribute because no actual media session is being offered or accepted. It is permitted in order to tie any payload type number parameters within attributes to the proper media format. A primary example is the case of format parameters for the Redundant Audio Data (RED) [RFC2198] payload, which are payload type numbers. Specific payload type numbers used in a latent configuration MAY be interpreted as suggestions to be used in any future offer based on the latent configuration, but they are not binding; the offerer and/or answerer may use any payload type numbers each deems appropriate. The use of explicit payload type numbers for latent configurations can be avoided by use of the parameter substitution rule of Section 3.3.7. Future extensions are also permitted. Note that leading zeroes are not permitted.

潜在的な構成は、将来の機能を表しています。したがって、実際のメディアセッションが提供または受け入れられていないため、「pt =」パラメーターは「lcfg」属性では直接意味がありません。属性内のペイロードタイプ番号パラメーターを適切なメディアフォーマットに関連付けるために許可されます。主な例は、ペイロードタイプ番号であるRedundant Audio Data(RED)[RFC2198]ペイロードのフォーマットパラメータの場合です。潜在構成で使用される特定のペイロードタイプ番号は、潜在構成に基づく将来のオファーで使用される提案として解釈される場合がありますが、拘束力はありません。提案者および/または回答者は、それぞれが適切と見なすペイロードタイプ番号を使用できます。潜在的な構成に明示的なペイロードタイプ番号を使用することは、3.3.7項のパラメータ置換ルールを使用することで回避できます。将来の拡張も許可されています。先行ゼロは許可されないことに注意してください。 The Media Type Parameter メディアタイプパラメータ

When a latent configuration is specified (always at the media level), indicating the ability to support an additional media stream, it is necessary to specify the media type (audio, video, etc.) as well as the format and transport type. The media type parameter is defined in ABNF as


            media-type = ["+"] "mt=" media; media defined in RFC 4566

At present, the media-type parameter is used only in the latent configuration attribute, and the use of the "+" prefix to specify that the entire attribute line is to be ignored if the mt= parameter is not understood is unnecessary. However, if the media-type parameter is later added to an existing capability attribute such as "pcfg", then the "+" would be useful. The media format(s) and transport type(s) are specified using the media configuration parameter ("+m=") defined above, and the transport parameter ("t=") defined in RFC 5939 [RFC5939], respectively.

現在、media-typeパラメーターは潜在構成属性でのみ使用されており、mt =パラメーターが理解されない場合に属性行全体を無視することを指定するための「+」プレフィックスの使用は不要です。ただし、後でメディアタイプパラメータを「pcfg」などの既存の機能属性に追加する場合は、「+」が役立ちます。メディア形式とトランスポートタイプは、それぞれ上記で定義されたメディア構成パラメーター( "+ m =")とRFC 5939 [RFC5939]で定義されたトランスポートパラメーター( "t =")を使用して指定されます。

3.3.5. The Latent Configuration Attribute
3.3.5. 潜在構成属性

One of the goals of this work is to permit the exchange of supportable media configurations in addition to those offered or accepted for immediate use. Such configurations are referred to as "latent configurations". For example, a party may offer to establish a session with an audio stream, and, at the same time, announce its ability to support a video stream as part of the same session. The offerer can supply its video capabilities by offering one or more latent video configurations along with the media stream for audio; the responding party may indicate its ability and willingness to support such a video session by returning a corresponding latent configuration.


Latent configurations returned in SDP answers MUST match offered latent configurations (or parameter subsets thereof). Therefore, it is appropriate for the offering party to announce most, if not all, of its capabilities in the initial offer. This choice has been made in order to keep the size of the answer more compact by not requiring acap, rmcap, tcap, etc. lines in the answer.


Latent configurations may be announced by use of the latent configuration attribute, which is defined in a manner very similar to the potential configuration attribute. The latent configuration attribute combines the properties of a media line and a potential configuration. A latent configuration MUST include a media type (mt=) and a transport protocol configuration parameter since the latent configuration is independent of any media line present. In most cases, the media configuration (m=) parameter needs to be present as well (see Section 4 for examples). The "lcfg" attribute is a media-level attribute.

潜在構成は、潜在構成属性と非常によく似た方法で定義された潜在構成属性を使用してアナウンスされます。潜在的な構成属性は、メディアラインのプロパティと潜在的な構成を組み合わせたものです。潜在構成は存在するメディアラインとは独立しているため、潜在構成にはメディアタイプ(mt =)とトランスポートプロトコル構成パラメーターを含める必要があります。ほとんどの場合、メディア構成(m =)パラメータも存在する必要があります(例についてはセクション4を参照)。 「lcfg」属性はメディアレベルの属性です。

The "lcfg" attribute is defined as a media-level attribute since it specifies a possible future media stream. However, the "lcfg" attribute is not necessarily related to the media description within which it is provided. Session capability attributes ("a=sescap") may be used to indicate supported media stream configurations.

「lcfg」属性は、可能な将来のメディアストリームを指定するため、メディアレベルの属性として定義されます。ただし、「lcfg」属性は、それが提供されているメディアの説明に必ずしも関連しているわけではありません。セッション機能属性( "a = sescap")は、サポートされているメディアストリーム構成を示すために使用できます。

Each media line in an SDP description represents an offered simultaneous media stream, whereas each latent configuration represents an additional stream that may be negotiated in a future offer/answer exchange. Session capability attributes may be used to determine whether a latent configuration may be used to form an offer for an additional simultaneous stream or to reconfigure an existing stream in a subsequent offer/answer exchange.


The latent configuration attribute is of the form:


        a=lcfg:<config-number> <latent-cfg-list>

which adheres to the SDP [RFC4566] "attribute" production with att-field and att-value defined as:

これは、SDP [RFC4566]の「属性」プロダクションに準拠し、att-fieldとatt-valueは次のように定義されます。

      att-field  = "lcfg"
      att-value  = config-number 1*WSP lcfg-cfg-list
      config-number = NonZeroDigit *9(DIGIT)  ;DIGIT defined in RFC 5234
      lcfg-cfg-list = media-type 1*WSP pot-cfg-list
                                  ; as defined in RFC 5939
                                  ; and extended herein

The media-type (mt=) parameter identifies the media type (audio, video, etc.) to be associated with the latent media stream, and it MUST be present. The pot-cfg-list MUST contain a transport-protocol-config-list (t=) parameter and a media-config-list (m=) parameter. The pot-cfg-list MUST NOT contain more than one instance of each type of parameter list. As specified in RFC 5939 [RFC5939], the use of the "+" prefix with a parameter indicates that the entire configuration MUST be ignored if the parameter is not understood; otherwise, the parameter itself may be ignored.

media-type(mt =)パラメータは、潜在的なメディアストリームに関連付けるメディアタイプ(オーディオ、ビデオなど)を識別し、存在する必要があります。 pot-cfg-listには、transport-protocol-config-list(t =)パラメータとmedia-config-list(m =)パラメータが含まれている必要があります。 pot-cfg-listには、各タイプのパラメータリストの複数のインスタンスを含めることはできません。 RFC 5939 [RFC5939]で指定されているように、パラメーターで「+」接頭辞を使用すると、パラメーターが理解されない場合は構成全体を無視する必要があることを示します。それ以外の場合、パラメーター自体は無視されます。

Media stream payload numbers are not assigned by a latent configuration. Assignment will take place if and when the corresponding stream is actually offered via an "m=" line in a later exchange. The payload-number-config-list is included as a parameter to the "lcfg" attribute in case it is necessary to tie payload numbers in attribute capabilities to specific media capabilities.

メディアストリームのペイロード番号は、潜在構成では割り当てられません。割り当ては、対応するストリームが実際に後の交換で "m ="行を介して提供される場合に行われます。 payload-number-config-listは、属性機能のペイロード番号を特定のメディア機能に関連付ける必要がある場合に備えて、「lcfg」属性のパラメーターとして含まれています。

If an "lcfg" attribute invokes an "acap" attribute that appears at the session level, then that attribute will be expected to appear at the session level of a subsequent offer when and if a corresponding media stream is offered. Otherwise, "acap" attributes that appear at the media level represent media-level attributes. Note, however, that "rmcap", omcap, "mfcap", "mscap", and "tcap" attributes may appear at the session level because they always result in media-level attributes or "m=" line parameters.

「lcfg」属性がセッションレベルで表示される「acap」属性を呼び出す場合、対応するメディアストリームが提供される場合、その属性は後続のオファーのセッションレベルで表示されることが期待されます。それ以外の場合、メディアレベルで表示される「acap」属性は、メディアレベルの属性を表します。ただし、「rmcap」、omcap、「mfcap」、「mscap」、および「tcap」属性は、常にメディアレベルの属性または「m =」行パラメーターになるため、セッションレベルで表示される場合があることに注意してください。

The configuration numbers for latent configurations do not imply a preference; the offerer will imply a preference when actually offering potential configurations derived from latent configurations negotiated earlier. Note, however, that the offerer of latent configurations MAY specify preferences for combinations of potential and latent configurations by use of the "sescap" attribute defined in Section 3.3.8. For example, if an SDP offer contains, say, an audio


stream with "pcfg:1", and two latent video configurations, "lcfg:2" and "lcfg:3", then a session with one audio stream and one video stream could be specified by including "a=sescap:1 1,2|3". One audio stream and two video streams could be specified by including "a=sescap:2 1,2,3" in the offer. In order to permit combinations of latent and potential configurations in session capabilities, latent configuration numbers MUST be different from those used for potential configurations. This restriction is especially important if the offerer does not require cmed-v0 capability and the recipient of the offer doesn't support it. If the "lcfg" attribute is not recognized, the capability attributes intended to be associated with it may be confused with those associated with a potential configuration of some other media stream. Note also that leading zeroes are not permitted in configuration numbers.

「pcfg:1」のストリーム、および「lcfg:2」と「lcfg:3」の2つの潜在的なビデオ構成、1つのオーディオストリームと1つのビデオストリームのセッションは、「a = sescap:1 1 2 | 3 "。オファーに「a = sescap:2 1,2,3」を含めることで、1つのオーディオストリームと2つのビデオストリームを指定できます。セッション機能で潜在構成と潜在構成の組み合わせを許可するには、潜在構成に使用する番号と潜在構成番号を異なるものにする必要があります。この制限は、オファー提供者がcmed-v0機能を必要とせず、オファーの受信者がサポートしていない場合に特に重要です。 「lcfg」属性が認識されない場合、それに関連付けられることが意図されている機能属性は、他のいくつかのメディアストリームの潜在的な構成に関連付けられている属性と混同される可能性があります。また、構成番号では先行ゼロを使用できないことに注意してください。

If a cryptographic attribute, such as the SDES "a=crypto:" attribute [RFC4568], is referenced by a latent configuration through an "acap" attribute, any keying material required in the conventional attribute, such as the SDES key/salt string, MUST be included in order to satisfy formatting rules for the attribute. Since the keying material will be visible but not actually used at this stage (since it's a latent configuration), the value(s) of the keying material MUST NOT be a real value used for real exchange of media, and the receiver of the "lcfg" attribute MUST ignore the value(s).

SDESの「a = crypto:」属性[RFC4568]などの暗号化属性が「acap」属性を介した潜在構成によって参照される場合、SDES鍵/塩の文字列など、従来の属性で必要なすべての鍵情報、属性のフォーマットルールを満たすために含める必要があります。キーイングマテリアルは表示されますが、この段階では実際には使用されないため(潜在的な構成であるため)、キーイングマテリアルの値は、メディアの実際の交換に使用される実際の値であってはなりません。 lcfg "属性は値を無視する必要があります。

3.3.6. Enhanced Potential Configuration Attribute
3.3.6. 潜在的な構成属性の拡張

The present work requires new extensions (parameters) for the "pcfg" attribute defined in the SDP capability negotiation base protocol [RFC5939]. The parameters and their definitions are "borrowed" from the definitions provided for the latent configuration attribute in Section 3.3.5. The expanded ABNF definition of the "pcfg" attribute is

現在の作業では、SDP機能ネゴシエーションベースプロトコル[RFC5939]で定義されている「pcfg」属性の新しい拡張機能(パラメーター)が必要です。パラメータとその定義は、セクション3.3.5の潜在構成属性に提供される定義から「借用」されます。 「pcfg」属性の拡張されたABNF定義は

        a=pcfg: <config-number> [<pot-cfg-list>]



        config-number = 1*DIGIT ;defined in [RFC5234]
        pot-cfg-list  = pot-config *(1*WSP pot-config)
        pot-config    =  attribute-config-list / ;def in [RFC5939]
             transport-protocol-config-list / ;defined in [RFC5939]
             extension-config-list / ;[RFC5939]
             media-config-list / ; Section
             payload-number-config-list ; Section

Except for the extension-config-list, the pot-cfg-list MUST NOT contain more than one instance of each parameter list.

extension-config-listを除いて、pot-cfg-listには各パラメーターリストの複数のインスタンスを含めることはできません。 Returning Capabilities in the Answer 回答で機能を返す

Potential and/or latent configuration attributes may be returned within an answer SDP to indicate the ability of the answerer to support alternative configurations of the corresponding stream(s). For example, an offer may include multiple potential configurations for a media stream and/or latent configurations for additional streams. The corresponding answer will indicate (via an "acfg" attribute) the configuration accepted and used to construct the base configuration for each active media stream in the reply, but the reply MAY also contain potential and/or latent configuration attributes, with parameters, to indicate which other offered configurations would be acceptable. This information is useful if it becomes desirable to reconfigure a media stream, e.g., to reduce resource consumption.


When potential and/or latent configurations are returned in an answer, all numbering MUST refer to the configuration and capability attribute numbering of the offer. The offered capability attributes need not be returned in the answer. The answer MAY include additional capability attributes and/or configurations (with distinct numbering). The parameter values of any returned "pcfg" or "lcfg" attributes MUST be a subset of those included in the offered configurations and/or those added by the answerer; values MAY be omitted only if they were indicated as alternative sets, or optional, in the original offer. The parameter set indicated in the returned "acfg" attribute need not be repeated in a returned "pcfg" attribute. The answerer MAY return more than one "pcfg" attribute with the same configuration number if it is necessary to describe selected combinations of optional or alternative parameters.


Similarly, one or more session capability attributes ("a=sescap") MAY be returned to indicate which of the offered session capabilities is/are supportable by the answerer (see Section 3.3.8).

同様に、1つ以上のセッション機能属性( "a = sescap")が返されて、提供されたセッション機能のどれが回答者によってサポート可能であるかを示します(セクション3.3.8を参照)。

Note that, although the answerer MAY return capabilities beyond those included by the offerer, these capabilities MUST NOT be used to form any base level media description in the answer. For this reason, it is advisable for the offerer to include most, if not all, potential and latent configurations it can support in the initial offer, unless the size of the resulting SDP is a concern. Either party MAY later announce additional capabilities by renegotiating the session in a second offer/answer exchange.

回答者が提供者によって含まれるものを超えて機能を返す場合がありますが、これらの機能を使用して回答の基本レベルのメディア記述を形成することはできません。このため、提供されるSDPのサイズが問題にならない限り、提供者がサポートできる可能性のある構成と潜在的な構成のすべてを最初の提供に含めることをお勧めします。どちらの当事者も、2番目のオファー/アンサー交換でセッションを再ネゴシエートすることにより、追加の機能を後で通知する場合があります。 Payload Type Number Mapping ペイロードタイプ番号マッピング

When media format capabilities defined in "rmcap" attributes are used in potential configuration lines, the transport protocol uses RTP and it is necessary to assign payload type numbers. In some cases, it is desirable to assign different payload type numbers to the same media format capability when used in different potential configurations. One example is when configurations for AVP and SAVP are offered: the offerer would like the answerer to use different payload type numbers for encrypted and unencrypted media, so the offerer can decide whether or not to render early media that arrives before the answer is received.

「rmcap」属性で定義されたメディアフォーマット機能が潜在的な構成行で使用される場合、トランスポートプロトコルはRTPを使用し、ペイロードタイプ番号を割り当てる必要があります。場合によっては、異なる可能性のある構成で使用する場合、同じメディアフォーマット機能に異なるペイロードタイプ番号を割り当てることが望ましい場合があります。 1つの例は、AVPとSAVPの構成が提供される場合です。オファー側は、暗号化されたメディアと暗号化されていないメディアに異なるペイロードタイプ番号を使用することを提供者に求めます。これにより、提供者は、応答を受信する前に到着する早期メディアをレンダリングするかどうかを決定できます。

For example, if use of AVP was selected by the answerer, then media received by the offerer is not encrypted; hence, it can be played out prior to receiving the answer. Conversely, if SAVP was selected, cryptographic parameters and keying material present in the answer may be needed to decrypt received media. If the offer configuration indicated that AVP media uses one set of payload types and SAVP a different set, then the offerer will know whether media received prior to the answer is encrypted or not by simply looking at the RTP payload type number in the received packet.

たとえば、AVPの使用が回答者によって選択された場合、提供者が受信したメディアは暗号化されません。したがって、回答を受け取る前に再生できます。逆に、SAVPが選択された場合、受信したメディアを復号化するために、回答に含まれる暗号化パラメーターとキー情報が必要になる場合があります。 AVPメディアが1組のペイロードタイプを使用し、SAVPが別のセットを使用することをオファー構成が示している場合、オファー提供者は、受信パケットのRTPペイロードタイプ番号を調べるだけで、回答の前に受信したメディアが暗号化されているかどうかを知ることができます。

This association of distinct payload type number(s) with different transport protocols requires a separate pcfg line for each protocol. Clearly, this technique cannot be used if the number of potential configurations exceeds the number of possible payload type numbers.

この異なるペイロードタイプ番号と異なるトランスポートプロトコルの関連付けには、プロトコルごとに個別のpcfg行が必要です。明らかに、潜在的な構成の数が可能なペイロードタイプ番号の数を超える場合、この手法は使用できません。 Processing of Media-Format-Related Conventional Attributes for Potential Configurations 潜在的な構成のためのメディア形式関連の従来の属性の処理

When media capabilities negotiation is employed, SDP records are likely to contain conventional attributes such as "rtpmap", "fmtp", and other media-format-related lines, as well as capability attributes such as "rmcap", omcap, "mfcap", and "mscap" that map into those conventional attributes when invoked by a potential configuration. In such cases, it MAY be appropriate to employ the delete-attributes option [RFC5939] in the attribute configuration list parameter in order to avoid the generation of conflicting "fmtp" attributes for a particular configuration. Any media-specific attributes in the media block that refer to media formats not used by the potential configuration MUST be ignored.

メディア機能ネゴシエーションが採用されている場合、SDPレコードには、「rtpmap」、「fmtp」、およびその他のメディア形式関連の行などの従来の属性と、「rmcap」、omcap、「mfcap」などの機能属性が含まれる可能性があります。 、および「mscap」は、潜在的な構成によって呼び出されたときに、これらの従来の属性にマップされます。そのような場合、特定の構成で競合する「fmtp」属性の生成を回避するために、属性構成リストパラメータで削除属性オプション[RFC5939]を使用することが適切な場合があります。潜在的な構成で使用されていないメディアフォーマットを参照するメディアブロック内のメディア固有の属性はすべて無視する必要があります。

For example:


      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      m=audio 3456 RTP/AVP 0 18 100
      a=rtpmap:100 telephone-event
      a=fmtp:100 0-11
      a=rmcap:1 PCMU/8000
      a=rmcap:2 G729/8000
      a=rmcap:3 telephone-event/8000
      a=mfcap:3 0-15
      a=pcfg:1 m=2,3|1,3 a=-m pt=1:0,2:18,3:100

In this example, PCMU is media capability 1, G729 is media capability 2, and telephone-event is media capability 3. The a=pcfg:1 line specifies that the preferred configuration is G.729 with extended DTMF events, second is G.711 mu-law with extended DTMF events, and the base media-level attributes are to be deleted. Intermixing of G.729, G.711, and "commercial" DTMF events is least preferred (the base configuration provided by the "m=" line, which is, by default, the least preferred configuration). The "rtpmap" and "fmtp" attributes of the base configuration are replaced by the "rmcap" and "mfcap" attributes when invoked by the proposed configuration.

この例では、PCMUはメディア機能1、G729はメディア機能2、telephone-eventはメディア機能3です。a= pcfg:1行は、優先構成が拡張DTMFイベントを含むG.729、2番目がGであることを指定しています。拡張DTMFイベントを含む711 mu-law、および基本メディアレベル属性が削除されます。 G.729、G.711、および「商用」のDTMFイベントを混在させることは、最も優先されません(「m =」行によって提供される基本構成。デフォルトでは、これは最も優先されない構成です)。基本構成の「rtpmap」および「fmtp」属性は、提案された構成によって呼び出されると、「rmcap」および「mfcap」属性に置き換えられます。

If the preferred configuration is selected, the SDP answer will look like the following


      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      m=audio 3456 RTP/AVP 18 100
      a=rtpmap:100 telephone-event/8000
      a=fmtp:100 0-15
      a=acfg:1 m=2,3 pt=1:0,2:18,3:100

3.3.7. Substitution of Media Payload Type Numbers in Capability Attribute Parameters

3.3.7. 機能属性パラメーターでのメディアペイロードタイプ番号の置換

In some cases, for example, when an RFC 2198 [RFC2198] redundancy audio subtype (RED) capability is defined in an "mfcap" attribute, the parameters to an attribute may contain payload type numbers. Two options are available for specifying such payload type numbers. They may be expressed explicitly, in which case they are bound to actual payload types by means of the payload type number parameter (pt=) in the appropriate potential or latent configuration. For example, the following SDP fragment defines a potential configuration with redundant G.711 mu-law

たとえば、RFC 2198 [RFC2198]冗長オーディオサブタイプ(RED)機能が「mfcap」属性で定義されている場合、属性のパラメーターにペイロードタイプ番号が含まれることがあります。このようなペイロードタイプ番号を指定するには、2つのオプションを使用できます。それらは明示的に表すことができ、その場合、適切な潜在的または潜在的な構成のペイロードタイプ番号パラメーター(pt =)によって実際のペイロードタイプにバインドされます。たとえば、次のSDPフラグメントは、冗長なG.711 mu-lawを使用した潜在的な構成を定義しています

      m=audio 45678 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=rmcap:1 PCMU/8000
      a=rmcap:2 RED/8000
      a=mfcap:2 0/0
      a=pcfg:1 m=2,1 pt=2:98,1:0

The potential configuration is then equivalent to


      m=audio 45678 RTP/AVP 98 0
      a=rtpmap:0 PCMU/8000
      a=rtpmap:98 RED/8000
      a=fmtp:98 0/0

A more general mechanism is provided via the parameter substitution rule. When an "mfcap", "mscap", or "acap" attribute is processed, its arguments will be scanned for a payload type number escape sequence of the following form (in ABNF):

より一般的なメカニズムは、パラメータ置換ルールを介して提供されます。 「mfcap」、「mscap」、または「acap」属性が処理されると、その引数がスキャンされて、次の形式のペイロードタイプ番号のエスケープシーケンスが(ABNFで)スキャンされます。

      ptn-esc = "%m=" media-cap-num "%" ; defined in Section 3.3.1

If the sequence is found, the sequence is replaced by the payload type number assigned to the media capability number, as specified by the "pt=" parameter in the selected potential configuration; only actual payload type numbers are supported -- wildcards are excluded. The sequence "%%" (null digit string) is replaced by a single percent sign and processing continues with the next character, if any.

シーケンスが見つかった場合、シーケンスは、選択された潜在的な構成の「pt =」パラメーターで指定されているように、メディア機能番号に割り当てられたペイロードタイプ番号に置き換えられます。実際のペイロードタイプ番号のみがサポートされます。ワイルドカードは除外されます。シーケンス "%%"(ヌル数字ストリング)は単一のパーセント記号に置き換えられ、次の文字があれば処理が続行されます。

For example, the above offer sequence could have been written as


      m=audio 45678 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=rmcap:1 PCMU/8000
      a=rmcap:2 RED/8000
      a=mfcap:2 %m=1%/%m=1%
      a=pcfg:1 m=2,1 pt=2:98,1:0

and the equivalent SDP is the same as above.


3.3.8. The Session Capability Attribute
3.3.8. セッション機能属性

Potential and latent configurations enable offerers and answerers to express a wide range of alternative configurations for current and future negotiation. However, in practice, it may not be possible to support all combinations of these configurations.


The session capability attribute provides a means for the offerer and/or the answerer to specify combinations of specific media stream configurations that it is willing and able to support. Each session capability in an offer or answer MAY be expressed as a list of required potential configurations, and MAY include a list of optional potential and/or latent configurations.


The choices of session capabilities may be based on processing load, total bandwidth, or any other criteria of importance to the communicating parties. If the answerer supports media capabilities negotiation, and session configurations are offered, it MUST accept one of the offered configurations, or it MUST refuse the session. Therefore, if the offer includes any session capabilities, it SHOULD include all the session capabilities the offerer is willing to support.


The session capability attribute is a session-level attribute described by


       "a=sescap:" <session num> <list of configs>

which corresponds to the standard value attribute definition with


           att-field        = "sescap"
           att-value        = session-num 1*WSP list-of-configs
                              [1*WSP optional-configs]
           session-num      = NonZeroDigit *9(DIGIT)  ; DIGIT defined
                                                      ; in RFC 5234
           list-of-configs  = alt-config *("," alt-config)
           optional-configs = "[" list-of-configs "]"
           alt-config       = config-number *("|" config-number)

The session-num identifies the session: a lower-number session is preferred over a higher-number session, and leading zeroes are not permitted. Each alt-config list specifies alternative media configurations within the session; preference is based on config-num as specified in RFC 5939 [RFC5939]. Note that the session preference order, when present, takes precedence over the individual media stream configuration preference order.

session-numはセッションを識別します。小さい番号のセッションが大きい番号のセッションよりも優先され、先行ゼロは許可されません。各alt-configリストは、セッション内の代替メディア構成を指定します。設定はRFC 5939 [RFC5939]で指定されているconfig-numに基づいています。セッションの優先順位が存在する場合は、個々のメディアストリーム構成の優先順位よりも優先されることに注意してください。

Use of session capability attributes requires that configuration numbers assigned to potential and latent configurations MUST be unique across the entire session; RFC 5939 [RFC5939] requires only that "pcfg" configuration numbers be unique within a media description. Also, leading zeroes are not permitted.

セッション機能属性を使用するには、潜在的な構成と潜在的な構成に割り当てられた構成番号がセッション全体で一意である必要があります。 RFC 5939 [RFC5939]では、「pcfg」構成番号がメディア記述内で一意であることのみが必要です。また、先行ゼロは許可されていません。

As an example, consider an endpoint that is capable of supporting an audio stream with either one H.264 video stream or two H.263 video streams with a floor control stream. In the latter case, the second video stream is optional. The SDP offer might look like the following (offering audio, an H.263 video streams, BFCP and another optional H.263 video stream) -- the empty lines are added for readability only (not part of valid SDP):

例として、1つのH.264ビデオストリームまたは2つのH.263ビデオストリームを含むオーディオストリームと、フロアコントロールストリームをサポートできるエンドポイントを考えます。後者の場合、2番目のビデオストリームはオプションです。 SDPオファーは次のようになります(オーディオ、H.263ビデオストリーム、BFCPおよび別のオプションのH.263ビデオストリームを提供します)。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      a=sescap:2 1,2,5,[3]
      a=sescap:1 1,4
      m=audio 54322 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 22344 RTP/AVP 102
      a=rtpmap:102 H263-1998/90000
      a=fmtp:102 CIF=4;QCIF=2;F=1;K=1
      i=main video stream
      a=rmcap:1 H264/90000
      a=mfcap:1 profile-level-id=42A01E; packetization-mode=2
      a=acap:1 label:13
      a=pcfg:4 m=1 a=1 pt=1:104
      m=video 33444 RTP/AVP 103
      a=rtpmap:103 H263-1998/90000
      a=fmtp:103 CIF=4;QCIF=2;F=1;K=1
      i=secondary video (slides)
      m=application 33002 TCP/BFCP *
      a=floorid:1 m-stream:11 12

If the answerer understands MediaCapNeg, but cannot support the Binary Floor Control Protocol, then it would respond with (invalid empty lines in SDP included again for readability):

回答者がMediaCapNegを理解しているが、Binary Floor Control Protocolをサポートできない場合は、次のように応答します(読みやすくするために、SDPに無効な空行が含まれています)。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      a=sescap:1 1,4
      m=audio 23456 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 41234 RTP/AVP 104
      a=rtpmap:104 H264/90000
      a=fmtp:104 profile-level-id=42A01E; packetization-mode=2
      a=acfg:4 m=1 a=1 pt=1:104
      m=video 0 RTP/AVP 103
      m=application 0 TCP/BFCP *

An endpoint that doesn't support media capabilities negotiation, but does support H.263 video, would respond with one or two H.263 video streams. In the latter case, the answerer may issue a second offer to reconfigure the session to one audio and one video channel using H.264 or H.263.


Session capabilities can include latent capabilities as well. Here's a similar example in which the offerer wishes to initially establish an audio stream, and prefers to later establish two video streams with chair control. If the answerer doesn't understand Media CapNeg, or cannot support the dual video streams or flow control, then it may support a single H.264 video stream. Note that establishment of the most favored configuration will require two offer/answer exchanges.

セッション機能には、潜在機能も含めることができます。次に、同様の例を示します。ここでは、提供者が最初にオーディオストリームを確立し、後で椅子の制御で2つのビデオストリームを確立することを望んでいます。回答者がMedia CapNegを理解していない場合、またはデュアルビデオストリームまたはフロー制御をサポートできない場合は、単一のH.264ビデオストリームをサポートしている可能性があります。最も好ましい構成を確立するには、2つのオファー/アンサー交換が必要になることに注意してください。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      a=sescap:1 1,3,4,5
      a=sescap:2 1,2
      a=sescap:3 1
      a=rmcap:1 H263-1998/90000
      a=mfcap:1 CIF=4;QCIF=2;F=1;K=1
      a=tcap:1 RTP/AVP TCP/BFCP
      m=audio 54322 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 22344 RTP/AVP 102
      a=rtpmap:102 H264/90000
      a=fmtp:102 profile-level-id=42A01E; packetization-mode=2
      a=lcfg:3 mt=video t=1 m=1 a=31,32
      a=acap:31 label:12
      a=acap:32 content:main
      a=lcfg:4 mt=video t=1 m=1 a=41,42
      a=acap:41 label:13
      a=acap:42 content:slides
      a=lcfg:5 mt=application m=51 t=51
      a=tcap:51 TCP/BFCP
      a=omcap:51 *
      a=acap:51 setup:passive
      a=acap:52 connection:new
      a=acap:53 floorid:1 m-stream:12 13
      a=acap:54 floor-control:s-only
      a=acap:55 confid:4321
      a=acap:56 userid:1234

In this example, the default offer, as seen by endpoints that do not understand capabilities negotiation, proposes a PCMU audio stream and an H.264 video stream. Note that the offered lcfg lines for the video streams don't carry "pt=" parameters because they're not needed (payload type numbers will be assigned in the offer/answer exchange that establishes the streams). Note also that the three "rmcap", "mfcap", and "tcap" attributes used by "lcfg:3" and "lcfg:4" are included at the session level so they may be referenced by both latent configurations. As per Section 3.3, the media attributes generated from the "rmcap", "mfcap", and "tcap" attributes are always media-level attributes. If the answerer supports Media CapNeg, and supports the most desired configuration, it would return the following SDP:

この例では、機能のネゴシエーションを理解していないエンドポイントから見たデフォルトのオファーが、PCMUオーディオストリームとH.264ビデオストリームを提案しています。ビデオストリーム用に提供されるlcfg行には「pt =」パラメーターが必要ないため、これらのパラメーターは必要ありません(ペイロードタイプ番号は、ストリームを確立するオファー/アンサー交換で割り当てられます)。また、「lcfg:3」および「lcfg:4」で使用される3つの「rmcap」、「mfcap」、および「tcap」属性はセッションレベルで含まれているため、両方の潜在的な構成で参照できます。セクション3.3のとおり、「rmcap」、「mfcap」、および「tcap」属性から生成されたメディア属性は、常にメディアレベルの属性です。アンサーがMedia CapNegをサポートし、最も望ましい構成をサポートする場合、アンサーは次のSDPを返します。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      a=sescap:1 1,3,4,5
      a=sescap:2 1,2
      a=sescap:3 1
      m=audio 23456 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 0 RTP/AVP 102
      a=lcfg:3 mt=video t=1 m=1 a=31,32
      a=lcfg:4 mt=video t=1 m=1 a=41,42
      a=lcfg:5 mt=application t=2

This exchange supports immediate establishment of an audio stream for preliminary conversation. This exchange would presumably be followed at the appropriate time with a "reconfiguration" offer/answer exchange to add the video and chair control streams.


3.4. Offer/Answer Model Extensions
3.4. オファー/アンサーモデル拡張

In this section, we define extensions to the offer/answer model defined in RFC 3264 [RFC3264] and RFC 5939 [RFC5939] to allow for media format and associated parameter capabilities, latent configurations, and acceptable combinations of media stream configurations to be used with the SDP capability negotiation framework. Note that the procedures defined in this section extend the offer/answer procedures defined in RFC 5939 [RFC5939] Section 6; those procedures form a baseline set of capability negotiation offer/answer procedures that MUST be followed, subject to the extensions defined here.

このセクションでは、RFC 3264 [RFC3264]およびRFC 5939 [RFC5939]で定義されているオファー/アンサーモデルの拡張機能を定義して、メディア形式と関連するパラメーター機能、潜在構成、およびメディアストリーム構成の許容可能な組み合わせを使用できるようにします。 SDP機能交渉フレームワーク。このセクションで定義されている手順は、RFC 5939 [RFC5939]セクション6で定義されているオファー/アンサー手順を拡張していることに注意してください。これらの手順は、ここで定義された拡張を前提として、従わなければならない機能交渉提案/回答手順のベースラインセットを形成します。

SDP capability negotiation [RFC5939] provides a relatively compact means to offer the equivalent of an ordered list of alternative configurations for offered media streams (as would be described by separate "m=" lines and associated attributes). The attributes "acap", "mscap", "mfcap", "omcap", and "rmcap" are designed to map somewhat straightforwardly into equivalent "m=" lines and conventional attributes when invoked by a "pcfg", "lcfg", or "acfg" attribute with appropriate parameters. The "a=pcfg:" lines, along with the "m=" line itself, represent offered media configurations. The "a=lcfg:" lines represent alternative capabilities for future use.

SDP機能ネゴシエーション[RFC5939]は、提供されるメディアストリームの代替構成の順序付きリストに相当するものを提供する比較的コンパクトな手段を提供します(個別の「m =」行および関連する属性によって説明されます)。 「acap」、「mscap」、「mfcap」、「omcap」、および「rmcap」の属性は、「pcfg」、「lcfg」、または、適切なパラメーターを持つ「acfg」属性。 「a = pcfg:」行は、「m =」行自体とともに、提供されたメディア構成を表します。 "a = lcfg:"行は、将来の使用のための代替機能を表します。

3.4.1. Generating the Initial Offer
3.4.1. 最初のオファーの生成

The media capabilities negotiation extensions defined in this document cover the following categories of features:


o Media format capabilities and associated parameters ("rmcap", "omcap", "mfcap", and "mscap" attributes)

o メディアフォーマット機能と関連パラメータ(「rmcap」、「omcap」、「mfcap」、および「mscap」属性)

o Potential configurations using those media format capabilities and associated parameters

o これらのメディアフォーマット機能と関連パラメーターを使用した潜在的な構成

o Latent media streams ("lcfg" attribute)

o 潜在的なメディアストリーム(「lcfg」属性)

o Acceptable combinations of media stream configurations ("sescap" attribute).

o メディアストリーム構成の許容可能な組み合わせ(「sescap」属性)。

The high-level description of the operation is as follows:


When an endpoint generates an initial offer and wants to use the functionality described in the current document, it SHOULD identify and define the media formats and associated parameters it can support via the "rmcap", "omcap", "mfcap", and "mscap" attributes. The SDP media line(s) ("m=") should be made up with the actual configuration to be used if the other party does not understand capability negotiations (by default, this is the least preferred configuration). Typically, the media line configuration will contain the minimum acceptable configuration from the offerer's point of view.

エンドポイントが初期オファーを生成し、現在のドキュメントで説明されている機能を使用したい場合、エンドポイントは、「rmcap」、「omcap」、「mfcap」、および「mscap」を介してサポートできるメディアフォーマットと関連パラメーターを識別および定義する必要があります。 "属性。 SDPメディア行( "m =")は、相手が機能のネゴシエーションを理解していない場合に使用される実際の構成で構成する必要があります(デフォルトでは、これは最も推奨されない構成です)。通常、メディアライン構成には、提供者の観点から見た最小許容構成が含まれます。

Preferred configurations for each media stream are identified following the media line. The present offer may also include latent configuration ("lcfg") attributes, at the media level, describing media streams and/or configurations the offerer is not now offering but that it is willing to support in a future offer/answer exchange. A simple example might be the inclusion of a latent video configuration in an offer for an audio stream.

各メディアストリームの推奨構成は、メディアラインに従って識別されます。現在のオファーには、潜在的な構成( "lcfg")属性がメディアレベルで含まれ、メディアストリームや、オファーが現在提供していないが将来のオファー/アンサー交換でサポートする用意があることを示します。簡単な例は、オーディオストリームのオファーに潜在的なビデオ構成を含めることです。

Lastly, if the offerer wishes to impose restrictions on the combinations of potential configurations to be used, it will include session capability ("sescap") attributes indicating those.


If the offerer requires the answerer to understand the media capability extensions, the offerer MUST include a "creq" attribute containing the value "med-v0". If media capability negotiation is required only for specific media descriptions, the "med-v0" value MUST be provided only in "creq" attributes within those media descriptions, as described in RFC 5939 [RFC5939].

提供者がメディア機能拡張を理解するように回答者に要求する場合、提供者は値「med-v0」を含む「creq」属性を含まなければなりません(MUST)。特定のメディア記述にのみメディア機能ネゴシエーションが必要な場合、「med-v0」値は、RFC 5939 [RFC5939]で説明されているように、それらのメディア記述内の「creq」属性でのみ提供される必要があります。

Below, we provide a more detailed description of how to construct the offer SDP.

以下に、オファーSDPを構築する方法の詳細を説明します。 Offer with Media Capabilities メディア機能を備えたオファー

For each RTP-based media format the offerer wants to include as a media format capability, the offer MUST include an "rmcap" attribute for the media format as defined in Section 3.3.1.


For each non-RTP-based media format the offer wants to include as a media format capability, the offer MUST include an "omcap" attribute for the media format as defined in Section 3.3.1.


Since the media capability number space is shared between the "rmcap" and "omcap" attributes, each media capability number provided (including ranges) MUST be unique in the entire SDP.


If an "fmtp" parameter value is needed for a media format (whether or not it is RTP based) in a media capability, then the offer MUST include one or more "mfcap" parameters with the relevant "fmtp" parameter values for that media format as defined in Section 3.3.2. When multiple "mfcap" parameters are provided for a given media capability, they MUST be provided in accordance with the concatenation rules in Section


For each of the media format capabilities above, the offer MAY include one or more "mscap" parameters with attributes needed for those specific media formats as defined in Section 3.3.3. Such attributes will be instantiated at the media level; hence, session-level-only attributes MUST NOT be used in the "mscap" parameter. The "mscap" parameter MUST NOT include an "rtpmap" or "fmtp" attribute ("rmcap" and "mfcap" are used instead).

上記のメディアフォーマット機能ごとに、オファーには、3.3.3項で定義されている特定のメディアフォーマットに必要な属性を持つ1つ以上の「mscap」パラメータを含めることができます(MAY)。このような属性はメディアレベルでインスタンス化されます。したがって、セッションレベルのみの属性を「mscap」パラメーターで使用してはなりません(MUST NOT)。 「mscap」パラメーターに「rtpmap」または「fmtp」属性を含めてはなりません(「rmcap」と「mfcap」が代わりに使用されます)。

If the offerer wants to limit the relevance (and use) of a media format capability or parameter to a particular media stream, the media format capability or parameter MUST be provided within the corresponding media description. Otherwise, the media format capabilities and parameters MUST be provided at the session level. Note, however, that the attribute or parameter embedded in these will always be instantiated at the media level.


This is due to those parameters being effectively media-level parameters. If session-level attributes are needed, the "acap" attribute defined in RFC 5939 [RFC5939] can be used; however, it does not provide for media-format-specific instantiation.

これは、これらのパラメーターが実質的にメディアレベルのパラメーターであるためです。セッションレベルの属性が必要な場合は、RFC 5939 [RFC5939]で定義されている「acap」属性を使用できます。ただし、メディア形式固有のインスタンス化は提供されません。

Inclusion of the above does not constitute an offer to use the capabilities; a potential configuration is needed for that. If the offerer wants to offer one or more of the media capabilities above, they MUST be included as part of a potential configuration ("pcfg") attribute as defined in Section 3.3.4. Each potential configuration MUST include a config-number, and each config-number MUST be unique in the entire SDP (note that this differs from RFC 5939 [RFC5939], which only requires uniqueness within a media description). Also, the config-number MUST NOT overlap with any config-number used by a latent configuration in the SDP. As described in RFC 5939 [RFC5939], lower config-numbers indicate a higher preference; the ordering still applies within a given media description only though.

上記を含めることは、機能の使用の申し出を構成するものではありません。そのためには、潜在的な構成が必要です。提供者が上記のメディア機能の1つ以上を提供したい場合は、セクション3.3.4で定義されているように、それらを潜在的な構成( "pcfg")属性の一部として含める必要があります。可能な各構成には構成番号が含まれている必要があり、各構成番号はSDP全体で一意である必要があります(これは、メディア記述内で一意性のみを必要とするRFC 5939 [RFC5939]とは異なることに注意してください)。また、config-numberは、SDPの潜在構成によって使用される構成番号と重複してはなりません(MUST NOT)。 RFC 5939 [RFC5939]で説明されているように、config-numberが小さいほど優先順位が高くなります。ただし、順序付けは特定のメディアの説明内でのみ適用されます。

For a media capability to be included in a potential configuration, there MUST be an "m=" parameter in the "pcfg" attribute referencing the media capability number in question. When one or more media capabilities are included in an offered potential configuration ("pcfg"), they completely replace the list of media formats offered in the actual configuration ("m=" line). Any attributes included for those formats remain in the SDP though (e.g., "rtpmap", "fmtp", etc.). For non-RTP-based media formats, the format-name (from the "omcap" media capability) is simply added to the "m=" line as a media format (e.g., t38). For RTP-based media, payload type mappings MUST be provided by use of the "pt" parameter in the potential configuration (see Section; payload type escaping may be used in "mfcap", "mscap", and "acap" attributes as defined in Section 3.3.7.

潜在的な構成にメディア機能を含めるには、問題のメディア機能番号を参照する「pcfg」属性に「m =」パラメーターが存在している必要があります。提供される可能性のある構成( "pcfg")に1つ以上のメディア機能が含まれる場合、それらは実際の構成( "m ="行)で提供されるメディア形式のリストを完全に置き換えます。ただし、これらのフォーマットに含まれている属性はSDPに残ります(たとえば、「rtpmap」、「fmtp」など)。非RTPベースのメディア形式の場合、(「omcap」メディア機能からの)format-nameは、単にメディア形式(たとえば、t38)として「m =」行に追加されます。 RTPベースのメディアの場合、潜在的な構成で「pt」パラメーターを使用して、ペイロードタイプのマッピングを提供する必要があります(セクション3.3.4.2を参照)。ペイロードタイプのエスケープは、セクション3.3.7で定義されている「mfcap」、「mscap」、および「acap」属性で使用できます。

Note that the "mt" parameter MUST NOT be used with the "pcfg" attribute (since it is defined for the "lcfg" attribute only); the media type in a potential configuration cannot be changed from that of the encompassing media description.

「mt」パラメーターは「pcfg」属性と一緒に使用してはならないことに注意してください(「lcfg」属性に対してのみ定義されているため)。可能性のある構成のメディアタイプは、包含するメディアの説明のタイプから変更できません。 Offer with Latent Configuration 潜在構成のオファー

If the offerer wishes to offer one or more latent configurations for future use, the offer MUST include a latent configuration attribute ("lcfg") for each as defined in Section 3.3.6.

オファー提供者が将来の使用のために1つ以上の潜在構成を提供することを望む場合、オファーはセクション3.3.6で定義されているように、それぞれの潜在構成属性( "lcfg")を含まなければなりません(MUST)。

Each "lcfg" attribute


o MUST be specified at the media level

o メディアレベルで指定する必要があります

o MUST include a config-number that is unique in the entire SDP (including for any potential configuration attributes). Note that config-numbers in latent configurations do not indicate any preference order

o SDP全体で一意の構成番号を含める必要があります(潜在的な構成属性を含む)。潜在構成の構成番号は、優先順位を示していないことに注意してください

o MUST include a media type ("mt")

o メディアタイプ(「mt」)を含める必要があります

o MUST reference a valid transport capability ("t")

o 有効なトランスポート機能( "t")を参照する必要があります

Each "lcfg" attribute MAY include additional capability references, which may refer to capabilities anywhere in the session description, subject to any restrictions normally associated with such capabilities. For example, a media-level attribute capability must be present at the media level in some media description in the SDP. Note that this differs from the potential configuration attribute, which cannot validly refer to media-level capabilities in another media description (per RFC 5939 [RFC5939], Section 3.5.1).

各「lcfg」属性には、追加の機能参照が含まれる場合があります。これは、セッションの説明の任意の場所で機能を参照できますが、そのような機能に通常関連する制限があります。たとえば、メディアレベルの属性機能は、SDPの一部のメディア記述のメディアレベルに存在する必要があります。これは、別のメディア記述でメディアレベルの機能を有効に参照できない潜在的な構成属性とは異なることに注意してください(RFC 5939 [RFC5939]、セクション3.5.1に従って)。

Potential configurations constitute an actual offer and may instantiate a referenced capability. Latent configurations are not actual offers; hence, they cannot instantiate a referenced capability. Therefore, it is safe for those to refer to capabilities in another media description.

潜在的な構成は実際のオファーを構成し、参照される機能をインスタンス化する場合があります。潜在的な構成は実際のオファーではありません。したがって、参照される機能をインスタンス化することはできません。したがって、別のメディアの説明で機能を参照することは安全です。 Offer with Configuration Combination Restrictions 構成の組み合わせ制限付きのオファー

If the offerer wants to indicate restrictions or preferences among combinations of potential and/or latent configurations, a session capability ("sescap") attribute MUST be provided at the session level for each such combination as described in Section 3.3.8. Each "sescap" attribute MUST include a session-num that is unique in the entire SDP; the lower the session-num the more preferred that combination is. Furthermore, "sescap" preference order takes precedence over any order specified in individual "pcfg" attributes.

提供者が潜在的および/または潜在的な構成の組み合わせの間の制限または好みを示したい場合は、セクション3.3.8で説明されているように、そのような組み合わせごとにセッション機能(「sescap」)属性をセッションレベルで提供する必要があります。各「sescap」属性には、SDP全体で一意のセッション番号を含める必要があります。 session-numが低いほど、その組み合わせはより優先されます。さらに、「sescap」の優先順位は、個々の「pcfg」属性で指定されたどの順序よりも優先されます。

For example, if we have pcfg-1 and pcfg-2, and sescap-1 references pcfg-2, whereas sescap-2 references pcfg-1, then pcfg-2 will be the most preferred potential configuration. Without the sescap, pcfg-1 would be the most preferred.

たとえば、pcfg-1とpcfg-2があり、sescap-1がpcfg-2を参照しているのに対し、sescap-2はpcfg-1を参照している場合、pcfg-2が最も好ましい構成となる可能性があります。 sescapがない場合、pcfg-1が最も推奨されます。

3.4.2. Generating the Answer
3.4.2. 答えを生成する

When receiving an offer, the answerer MUST check the offer for "creq" attributes containing the value "med-v0"; answerers compliant with this specification will support this value in accordance with the procedures specified in RFC 5939 [RFC5939].

オファーを受け取るとき、回答者はオファーに値「med-v0」を含む「creq」属性がないか確認する必要があります。この仕様に準拠する回答者は、RFC 5939 [RFC5939]で指定された手順に従ってこの値をサポートします。

The SDP MAY contain


o Media format capabilities and associated parameters ("rmcap", "omcap", "mfcap", and "mscap" attributes)

o メディアフォーマット機能と関連パラメータ(「rmcap」、「omcap」、「mfcap」、および「mscap」属性)

o Potential configurations using those media format capabilities and associated parameters

o これらのメディアフォーマット機能と関連パラメーターを使用した潜在的な構成

o Latent media streams ("lcfg" attribute)

o 潜在的なメディアストリーム(「lcfg」属性)

o Acceptable combinations of media stream configurations ("sescap" attribute)

o メディアストリーム構成の許容可能な組み合わせ(「sescap」属性)

The high-level informative description of the operation is as follows:


When the answering party receives the offer, if it supports the required capability negotiation extensions, it should select the most-preferred configuration it can support for each media stream, and build its answer accordingly. The configuration selected for each accepted media stream is placed into the answer as a media line with associated parameters and attributes. If a proposed configuration is chosen for a given media stream, the answer must contain an actual configuration ("acfg") attribute for that media stream to indicate which offered "pcfg" attribute was used to build the answer. The answer should also include any potential or latent configurations the answerer can support, especially any configurations compatible with other potential or latent configurations received in the offer. The answerer should make note of those configurations it might wish to offer in the future.

応答側は、オファーを受信したときに、必要な機能ネゴシエーション拡張をサポートしている場合、各メディアストリームでサポートできる最も好ましい構成を選択し、それに応じて応答を作成する必要があります。受け入れられた各メディアストリームに対して選択された構成は、関連するパラメータと属性を持つメディアラインとして回答に配置されます。特定のメディアストリームに対して提案された構成が選択された場合、回答には、そのメディアストリームの実際の構成( "acfg")属性が含まれ、提供された "pcfg"属性が回答の作成に使用されたことを示す必要があります。回答には、回答者がサポートできる可能性のある構成または潜在的な構成も含まれている必要があります。特に、オファーで受け取った他の潜在的な構成または潜在的な構成と互換性のある構成があります。回答者は、将来提供する可能性のある構成を書き留めておく必要があります。

Below we provide a more detailed normative description of how the answerer processes the offer SDP and generates an answer SDP.

以下では、回答者がオファーSDPを処理し、回答SDPを生成する方法のより詳細な規範的な説明を提供します。 Processing Media Capabilities and Potential Configurations メディア機能と潜在的な構成の処理

The answerer MUST first determine if it needs to perform media capability negotiation by examining the SDP for valid and preferred potential configuration attributes that include media configuration parameters (i.e., an "m" parameter in the "pcfg" attribute).


Such a potential configuration is valid if


1. It is valid according to the rules defined in RFC 5939 [RFC5939].

1. RFC 5939 [RFC5939]で定義された規則に従って有効です。

2. It contains a config-number that is unique in the entire SDP and does not overlap with any latent configuration config-numbers.

2. これには、SDP全体で一意であり、潜在的な構成構成番号と重複しない構成番号が含まれます。

3. All media format capabilities ("rmcap" or "omcap"), media format parameter capabilities ("mfcap"), and media-specific capabilities ("mscap") referenced by the potential configuration ("m" parameter) are valid themselves (as defined in Sections 3.3.1, 3.3.2, and 3.3.3) and each of them is provided either at the session level or within this particular media description.

3. 潜在的な構成( "m"パラメータ)によって参照されるすべてのメディアフォーマット機能( "rmcap"または "omcap")、メディアフォーマットパラメータ機能( "mfcap")、およびメディア固有の機能( "mscap")は、それ自体が有効です(セクション3.3.1、3.3.2、および3.3.3で定義されており、それぞれがセッションレベルまたはこの特定のメディア記述内で提供されます。

4. All RTP-based media format capabilities ("rmcap") have a corresponding payload type ("pt") parameter in the potential configuration that results in mapping to a valid payload type that is unique within the resulting SDP.

4. すべてのRTPベースのメディアフォーマット機能( "rmcap")には、潜在的な構成に対応するペイロードタイプ( "pt")パラメーターがあり、結果のSDP内で一意の有効なペイロードタイプにマッピングされます。

5. Any concatenation (see Section and substitution (see Section 3.3.7) applied to any capability ("mfcap", "mscap", or "acap") referenced by this potential configuration results in a valid SDP.

5. この潜在的な構成によって参照される機能(「mfcap」、「mscap」、または「acap」)に適用された連結(セクション3.3.2.1を参照)および置換(セクション3.3.7を参照)は、有効なSDPになります。

Note that since SDP does not interpret the value of "fmtp" parameters, any resulting "fmtp" parameter value will be considered valid.


Secondly, the answerer MUST determine the order in which potential configurations are to be negotiated. In the absence of any session capability ("sescap") attributes, this simply follows the rules of RFC 5939 [RFC5939], with a lower config-number within a media description being preferred over a higher one. If a valid "sescap" attribute is present, the preference order provided in the "sescap" attribute MUST take precedence. A "sescap" attribute is considered valid if 1. It adheres to the rules provided in Section 3.3.8.

次に、回答者は、潜在的な構成がネゴシエートされる順序を決定する必要があります。セッション機能(「sescap」)属性がない場合、これはRFC 5939 [RFC5939]のルールに従うだけであり、メディア記述内の構成番号が小さい方が大きい方よりも優先されます。有効な「sescap」属性が存在する場合は、「sescap」属性で提供される優先順位を優先する必要があります。 「sescap」属性は、1。の場合に有効であると見なされます。これは、3.3.8項で提供されている規則に準拠しています。

2. All the configurations referenced by the "sescap" attribute are valid themselves (note that this can include the actual, potential, and latent configurations).

2. 「sescap」属性によって参照されるすべての構成は、それ自体が有効です(これには、実際の構成、潜在的な構成、潜在的な構成が含まれる場合があります)。

The answerer MUST now process the offer for each media stream based on the most preferred valid potential configuration in accordance with the procedures specified in RFC 5939 [RFC5939], Section 3.6.2, and further extended below:

回答者は、RFC 5939 [RFC5939]、セクション3.6.2で指定され、さらに以下に拡張された手順に従って、最も好ましい有効な潜在的な構成に基づいて、各メディアストリームのオファーを処理する必要があります。

o If one or more media format capabilities are included in the potential configuration, then they replace all media formats provided in the "m=" line for that media description. For non-RTP-based media formats ("omcap"), the format-name is added. For RTP-based media formats ("rmcap"), the payload-type specified in the payload-type mapping ("pt") is added and a corresponding "rtpmap" attribute is added to the media description.

o 可能性のある構成に1つ以上のメディアフォーマット機能が含まれている場合、それらは、そのメディアの説明の「m =」行で提供されるすべてのメディアフォーマットを置き換えます。 RTPベース以外のメディア形式(「omcap」)の場合、format-nameが追加されます。 RTPベースのメディアフォーマット(「rmcap」)の場合、ペイロードタイプマッピング(「pt」)で指定されたペイロードタイプが追加され、対応する「rtpmap」属性がメディアの説明に追加されます。

o If one or more media format parameter capabilities are included in the potential configuration, then the corresponding "fmtp" attributes are added to the media description. Note that this inclusion is done indirectly via the media format capability.

o 可能な構成に1つ以上のメディアフォーマットパラメータ機能が含まれている場合、対応する「fmtp」属性がメディアの説明に追加されます。この組み込みは、メディアフォーマット機能を介して間接的に行われることに注意してください。

o If one or more media-specific capabilities are included in the potential configuration, then the corresponding attributes are added to the media description. Note that this inclusion is done indirectly via the media format capability.

o 潜在的な構成に1つ以上のメディア固有の機能が含まれている場合、対応する属性がメディアの説明に追加されます。この組み込みは、メディアフォーマット機能を介して間接的に行われることに注意してください。

o When checking to see if the answerer supports a given potential configuration that includes one or more media format capabilities, the answerer MUST support at least one of the media formats offered. If he does not, the answerer MUST proceed to the next potential configuration based on the preference order that applies.

o 回答者が1つ以上のメディアフォーマット機能を含む特定の潜在的な構成をサポートするかどうかを確認する場合、回答者は提供されるメディアフォーマットの少なくとも1つをサポートする必要があります。そうでない場合、回答者は、適用される優先順位に基づいて、次の潜在的な構成に進む必要があります。

o If session capability ("sescap") preference ordering is included, then the potential configuration selection process MUST adhere to the ordering provided. Note that this may involve coordinated selection of potential configurations between media descriptions. The answerer MUST accept one of the offered sescap combinations (i.e., all the required potential configurations specified) or it MUST reject the entire session.

o セッション機能(「sescap」)の優先順位が含まれている場合、潜在的な構成選択プロセスは、提供されている順序に従う必要があります。これには、メディア記述間の潜在的な構成の調整された選択が含まれる場合があることに注意してください。回答者は、提供されたsescapの組み合わせの1つ(つまり、指定されたすべての必要な潜在的な構成)を受け入れる必要があります。または、セッション全体を拒否する必要があります。

Once the answerer has selected a valid and supported offered potential configuration for all of the media streams (or has fallen back to the actual configuration plus any added session attributes), the answerer MUST generate a valid answer SDP as described in RFC 5939 [RFC5939], Section 3.6.2, and further extended below:

回答者がすべてのメディアストリームに対して有効でサポートされている提供可能な構成を選択すると(または実際の構成と追加されたセッション属性にフォールバックすると)、回答者はRFC 5939 [RFC5939]で説明されているように有効な回答SDPを生成する必要があります。 、セクション3.6.2、さらに以下に拡張:

o Additional answer capabilities and potential configurations MAY be returned in accordance with Section Capability numbers and configuration numbers for those MUST be distinct from the ones used in the offer SDP.

o セクション3.3.6.1に従って、追加の回答機能と潜在的な構成が返される場合があります。これらの機能番号と構成番号は、オファーSDPで使用されるものとは異なる必要があります。

o Latent configuration processing and answer generation MUST be performed, as specified below.

o 以下に示すように、潜在的な構成処理と応答生成を実行する必要があります。

o Session capability specification for the potential and latent configurations in the answer MAY be included (see Section 3.3.8).

o 回答の潜在的な構成と潜在的な構成のセッション機能の仕様を含めることができます(セクション3.3.8を参照)。 Latent Configuration Processing 潜在構成処理

The answerer MUST determine if it needs to perform any latent configuration processing by examining the SDP for valid latent configuration attributes ("lcfg"). An "lcfg" attribute is considered valid if:

回答者は、SDPで有効な潜在構成属性( "lcfg")を調べて、潜在構成処理を実行する必要があるかどうかを判断する必要があります。 「lcfg」属性は、次の場合に有効と見なされます。

o It adheres to the description in Section 3.3.5.

o セクション3.3.5の説明に準拠します。

o It includes a config-number that is unique in the entire SDP and does not overlap with any potential configuration config-number.

o SDP全体で一意であり、潜在的な構成の構成番号と重複しない構成番号が含まれています。

o It includes a valid media type ("mt=").

o 有効なメディアタイプ( "mt =")が含まれています。

o It references a valid transport capability ("t=").

o 有効なトランスポート機能( "t =")を参照しています。

o All other capabilities referenced by it are valid.

o それによって参照される他のすべての機能は有効です。

For each such valid latent configuration in the offer, the answerer checks to see if it could support the latent configuration in a subsequent offer/answer exchange. If so, it includes the latent configuration with the same configuration number in the answer, similar to the way potential configurations are processed and the selected one returned in an actual configuration attribute (see RFC 5939 [RFC5939]). If the answerer supports only a (non-mandatory) subset of the parameters offered in a latent configuration, the answer latent configuration will include only those parameters supported (similar to "acfg" processing). Note that latent configurations do not constitute an actual offer at this point in time; they merely indicate additional configurations that could be supported.

オファー内のこのような有効な潜在構成ごとに、回答者は、後続のオファー/アンサー交換で潜在構成をサポートできるかどうかを確認します。その場合、潜在的な構成が処理され、選択された構成が実際の構成属性で返されるのと同様に、同じ構成番号の潜在構成が回答に含まれます(RFC 5939 [RFC5939]を参照)。応答側が潜在構成で提供されるパラメーターの(必須ではない)サブセットのみをサポートする場合、応答潜在構成には、サポートされるパラメーターのみが含まれます(「acfg」処理と同様)。この時点では、潜在的な構成は実際の提案を構成するものではないことに注意してください。これらは、サポートされる可能性のある追加の構成を示すだけです。

If a session capability ("sescap") attribute is included and it references a latent configuration, then the answerer processing of that latent configuration must be done within the constraints specified by that session capability. That is, it must be possible to support it at the same time as any required (i.e., non-optional) potential configurations in the session capability. The answerer may in turn add his own sescap indications in the answer as well.


3.4.3. Offerer Processing of the Answer
3.4.3. 回答者の処理

The offerer MUST process the answer in accordance with Section 3.6.3 of RFC 5939 [RFC5939] and the further explanation below.

提案者は、RFC 5939 [RFC5939]のセクション3.6.3および以下の詳細説明に従って回答を処理する必要があります。

When the offerer processes the answer SDP based on a valid actual configuration attribute in the answer, and that valid configuration includes one or more media capabilities, the processing MUST furthermore be done as if the offer was sent using those media capabilities instead of the actual configuration. In particular, the media formats in the "m=" line, and any associated payload type mappings ("rtpmap"), "fmtp" parameters ("mfcap"), and media-specific attributes ("mscap") MUST be used. Note that this may involve use of concatenation and substitution rules (see Sections and 3.3.7). The actual configuration attribute may also be used to infer the lack of acceptability of higher-preference configurations that were not chosen, subject to any constraints provided by a session capability ("sescap") attribute in the offer. Note that the SDP capability negotiation base specification [RFC5939] requires the answerer to choose the highest-preference configuration it can support, subject to local policies.

提案者が回答の有効な実際の構成属性に基づいて回答SDPを処理し、その有効な構成に1つ以上のメディア機能が含まれている場合、処理は、実際の構成の代わりにそれらのメディア機能を使用してオファーが送信されたかのように実行する必要があります。特に、「m =」行のメディア形式、および関連するペイロードタイプマッピング(「rtpmap」)、「fmtp」パラメーター(「mfcap」)、およびメディア固有の属性(「mscap」)を使用する必要があります。これには、連結および置換ルールの使用が含まれる場合があることに注意してください(セクション3.3.2.1および3.3.7を参照)。実際の構成属性は、オファー内のセッション機能(「sescap」)属性によって提供される制約を条件として、選択されなかった優先度の高い構成が受け入れられないことを推測するためにも使用できます。 SDP機能ネゴシエーションベースの仕様[RFC5939]では、ローカルポリシーに従って、サポートできる最高優先設定を回答者が選択する必要があることに注意してください。

When the offerer receives the answer, it SHOULD furthermore make note of any capabilities and/or latent configurations included for future use, and any constraints on how those may be combined.


3.4.4. Modifying the Session
3.4.4. セッションの変更

If, at a later time, one of the parties wishes to modify the operating parameters of a session, e.g., by adding a new media stream, or by changing the properties used on an existing stream, it can do so via the mechanisms defined for offer/answer [RFC3264]. If the initiating party has remembered the codecs, potential configurations, latent configurations, and session capabilities provided by the other party in the earlier negotiation, it MAY use this knowledge to maximize the likelihood of a successful modification of the session. Alternatively, the initiator MAY perform a new capabilities exchange as part of the reconfiguration.


In such a case, the new capabilities will replace the previously negotiated capabilities. This may be useful if conditions change on the endpoint.


4. Examples
4. 例

In this section, we provide examples showing how to use the media capabilities with the SDP capability negotiation.


4.1. Alternative Codecs
4.1. 代替コーデック

This example provides a choice of one of six variations of the Adaptive Multi-Rate codec. In this example, the default configuration as specified by the media line is the same as the most preferred configuration. Each configuration uses a different payload type number so the offerer can interpret early media.


      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      m=audio 54322 RTP/AVP 96
      a=rtpmap:96 AMR-WB/16000/1
      a=fmtp:96 mode-change-capability=1; max-red=220; \
      a=rmcap:1,3,5 audio AMR-WB/16000/1
      a=rmcap:2,4,6 audio AMR/8000/1
      a=mfcap:1,2,3,4 mode-change-capability=1
      a=mfcap:5,6 mode-change-capability=2
      a=mfcap:1,2,3,5 max-red=220
      a=mfcap:3,4,5,6 octet-align=1
      a=mfcap:1,3,5 mode-set=0,2,4,7
      a=mfcap:2,4,6 mode-set=0,3,5,6
      a=pcfg:1 m=1 pt=1:96
      a=pcfg:2 m=2 pt=2:97
      a=pcfg:3 m=3 pt=3:98
      a=pcfg:4 m=4 pt=4:99
      a=pcfg:5 m=5 pt=5:100
      a=pcfg:6 m=6 pt=6:101

In the above example, media capability 1 could have been excluded from the first "rmcap" declaration and from the corresponding "mfcap" attributes, and the "pcfg:1" attribute line could have been simply "pcfg:1".


The next example offers a video stream with three options of H.264 and four transports. It also includes an audio stream with different audio qualities: four variations of AMR, or AC3. The offer looks something like the following:


      o=- 25678 753849 IN IP4
      s=An SDP Media NEG example
      c=IN IP4
      t=0 0
      m=video 49170 RTP/AVP 100
      c=IN IP4
      a=candidate 12345 1 UDP 9 49170 host
      a=candidate 23456 2 UDP 9 51540 host
      a=candidate 34567 1 UDP 7 41345 srflx raddr \ rport 49170
      a=candidate 45678 2 UDP 7 52567 srflx raddr \ rport 51540
      a=candidate 56789 1 UDP 3 49000 relay raddr \ rport 49170
      a=candidate 67890 2 UDP 3 49001 relay raddr \ rport 51540
      a=rtpmap:100 H264/90000
      a=fmtp:100 profile-level-id=42A01E; packetization-mode=2; \
      sprop-parameter-sets=Z0IACpZTBYmI,aMljiA==; \
      sprop-interleaving-depth=45; sprop-deint-buf-req=64000; \
      sprop-init-buf-time=102478; deint-buf-cap=128000
      a=rmcap:1-3,7-9 H264/90000
      a=rmcap:4-6 rtx/90000
      a=mfcap:1-9 profile-level-id=42A01E
      a=mfcap:1-9 aMljiA==
      a=mfcap:1,4,7 packetization-mode=0
      a=mfcap:2,5,8 packetization-mode=1
      a=mfcap:3,6,9 packetization-mode=2
      a=mfcap:1-9 sprop-parameter-sets=Z0IACpZTBYmI
      a=mfcap:1,7 sprop-interleaving-depth=45; \
      sprop-deint-buf-req=64000; sprop-init-buf-time=102478; \
      a=mfcap:4 apt=100
      a=mfcap:5 apt=99
      a=mfcap:6 apt=98
      a=mfcap:4-6 rtx-time=3000
      a=mscap:1-6 rtcp-fb nack
      a=acap:1 crypto:1 AES_CM_128_HMAC_SHA1_80 \
      a=pcfg:1 t=1 m=1,4 a=1 pt=1:100,4:97
      a=pcfg:2 t=1 m=2,5 a=1 pt=2:99,4:96
      a=pcfg:3 t=1 m=3,6 a=1 pt=3:98,6:95
      a=pcfg:4 t=2 m=7 a=1 pt=7:100
      a=pcfg:5 t=2 m=8 a=1 pt=8:99
      a=pcfg:6 t=2 m=9 a=1 pt=9:98
      a=pcfg:7 t=3 m=1,3 pt=1:100,4:97
      a=pcfg:8 t=3 m=2,4 pt=2:99,4:96
      a=pcfg:9 t=3 m=3,6 pt=3:98,6:95
      m=audio 49176 RTP/AVP 101 100 99 98
      c=IN IP4
      a=candidate 12345 1 UDP 9 49176 host
      a=candidate 23456 2 UDP 9 51534 host
      a=candidate 34567 1 UDP 7 41348 srflx \
      raddr rport 49176
      a=candidate 45678 2 UDP 7 52569 srflx \
      raddr rport 51534
      a=candidate 56789 1 UDP 3 49002 relay \
      raddr rport 49176
      a=candidate 67890 2 UDP 3 49003 relay \
      raddr rport 51534
      a=rtpmap:98 AMR-WB/16000
      a=fmtp:98 octet-align=1; mode-change-capability=2
      a=rtpmap:99 AMR-WB/16000
      a=fmtp:99 octet-align=1; crc=1; mode-change-capability=2
      a=rtpmap:100 AMR-WB/16000/2
      a=fmtp:100 octet-align=1; interleaving=30
      a=rtpmap:101 AMR-WB+/72000/2
      a=fmtp:101 interleaving=50; int-delay=160000;
      a=rmcap:14 ac3/48000/6
      a=acap:23 crypto:1 AES_CM_128_HMAC_SHA1_80 \
      a=tcap:4 RTP/SAVP
      a=pcfg:10 t=4 a=23
      a=pcfg:11 t=4 m=14 a=23 pt=14:102

This offer illustrates the advantage in compactness that arises if one can avoid deleting the base configuration attributes and recreating them in "acap" attributes for the potential configurations.


4.2. Alternative Combinations of Codecs (Session Configurations)
4.2. コーデックの代替の組み合わせ(セッション構成)

If an endpoint has limited signal processing capacity, it might be capable of supporting, say, a G.711 mu-law audio stream in combination with an H.264 video stream, or a G.729B audio stream in combination with an H.263-1998 video stream. It might then issue an offer like the following:

エンドポイントの信号処理能力が限られている場合、たとえば、H.264ビデオストリームと組み合わせたG.711 mu-lawオーディオストリーム、またはHと組み合わせたG.729Bオーディオストリームをサポートできる可能性があります。 263-1998ビデオストリーム。次に、次のようなオファーを発行します。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      a=sescap:1 2,4
      a=sescap:2 1,3
      m=audio 54322 RTP/AVP 18
      a=rtpmap:18 G729/8000
      a=fmtp:18 annexb=yes
      a=rmcap:1 PCMU/8000
      a=pcfg:1 m=1 pt=1:0
      m=video 54344 RTP/AVP 100
      a=rtpmap:100 H263-1998/90000
      a=rmcap:2 H264/90000
      a=mfcap:2 profile-level-id=42A01E; packetization-mode=2
      a=pcfg:3 m=2 pt=2:101

Note that the preferred session configuration (and the default as well) is G.729B with H.263. This overrides the individual media stream preferences that are PCMU and H.264 by the potential configuration numbering rule.


4.3. Latent Media Streams
4.3. 潜在的なメディアストリーム

Consider a case in which the offerer can support either G.711 mu-law or G.729B, along with DTMF telephony events for the 12 common touchtone signals, but is willing to support simple G.711 mu-law audio as a last resort. In addition, the offerer wishes to announce its ability to support video and Message Session Relay Protocol (MSRP) in the future, but does not wish to offer a video stream or an MSRP stream at present. The offer might look like the following:

12の一般的なタッチトーン信号のDTMFテレフォニーイベントとともに、オファー提供者がG.711 mu-lawまたはG.729Bをサポートできるが、最後の手段として単純なG.711 mu-lawオーディオをサポートする場合を考えます。 。さらに、提供者は将来、ビデオおよびメッセージセッションリレープロトコル(MSRP)をサポートする機能を発表したいと考えていますが、現在、ビデオストリームまたはMSRPストリームを提供することは望んでいません。オファーは次のようになります。

      o=- 25678 753849 IN IP4
      c=IN IP4
      t=0 0
      m=audio 23456 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      a=rmcap:1 PCMU/8000
      a=rmcap:2 G729/8000
      a=rmcap:3 telephone-event/8000
      a=mfcap:3 0-11
      a=pcfg:1 m=1,3|2,3 pt=1:0,2:18,3:100
      a=lcfg:2 mt=video t=1 m=10|11
      a=rmcap:10 H263-1998/90000
      a=rmcap:11 H264/90000
      a=tcap:1 RTP/AVP
      a=lcfg:3 mt=message t=2 m=20
      a=tcap:2 TCP/MSRP
      a=omcap:20 *

The first "lcfg" attribute line ("lcfg:2") announces support for H.263 and H.264 video (H.263 preferred) for future negotiation. The second "lcfg" attribute line ("lcfg:3") announces support for MSRP for future negotiation. The "m=" line and the "rtpmap" attribute offer an audio stream and provide the lowest precedence configuration (PCMU without any DTMF encoding). The rmcap lines define the RTP-based media format capabilities (PCMU, G729, telephone-event, H263-1998, and H264) and the omcap line defines the non-RTP-based media format capability (wildcard). The "mfcap" attribute provides the format parameters for telephone-event, specifying the 12 commercial DTMF 'digits'. The "pcfg" attribute line defines the most-preferred media configuration as PCMU plus DTMF events and the next-most-preferred configuration as G.729B plus DTMF events.

最初の「lcfg」属性行(「lcfg:2」)は、将来のネゴシエーションのためのH.263およびH.264ビデオ(H.263優先)のサポートを発表します。 2番目の「lcfg」属性行(「lcfg:3」)は、将来のネゴシエーションのためのMSRPのサポートを発表します。 「m =」行と「rtpmap」属性は、オーディオストリームを提供し、最低の優先順位構成を提供します(DTMFエンコーディングのないPCMU)。 rmcap行はRTPベースのメディアフォーマット機能(PCMU、G729、telephone-event、H263-1998、およびH264)を定義し、omcap行は非RTPベースのメディアフォーマット機能(ワイルドカード)を定義します。 「mfcap」属性は、12の商用DTMF「桁」を指定して、電話イベントのフォーマットパラメータを提供します。 「pcfg」属性行は、最も優先されるメディア構成をPCMUおよびDTMFイベントとして定義し、次に優先される構成をG.729BおよびDTMFイベントとして定義します。

If the answerer is able to support all the potential configurations, and also support H.263 video (but not H.264), it would reply with an answer like the following:


      o=- 24351 621814 IN IP4
      c=IN IP4
      t=0 0
      m=audio 54322 RTP/AVP 0 100
      a=rtpmap:0 PCMU/8000
      a=rtpmap:100 telephone-event/8000
      a=fmtp:100 0-11
      a=acfg:1 m=1,3 pt=1:0,3:100
      a=pcfg:1 m=2,3 pt=2:18,3:100
      a=lcfg:2 mt=video t=1 m=10

The "lcfg" attribute line announces the capability to support H.263 video at a later time. The media line and subsequent "rtpmap" and "fmtp" attribute lines present the selected configuration for the media stream. The "acfg" attribute line identifies the potential configuration from which it was taken, and the "pcfg" attribute line announces the potential capability to support G.729 with DTMF events as well. If, at some later time, congestion becomes a problem in the network, either party may, with expectation of success, offer a reconfiguration of the media stream to use G.729 in order to reduce packet sizes.

「lcfg」属性行は、後でH.263ビデオをサポートする機能をアナウンスします。メディア行とそれに続く「rtpmap」および「fmtp」属性行は、メディアストリームの選択された構成を示します。 「acfg」属性行は、それが取得された潜在的な構成を識別し、「pcfg」属性行は、DTMFイベントでG.729もサポートする潜在的な機能をアナウンスします。後で、ネットワークで輻輳が問題になる場合、どちらかのパーティは、成功を期待して、パケットサイズを縮小するためにG.729を使用するようにメディアストリームの再構成を提供できます。

5. IANA Considerations
5. IANAに関する考慮事項
5.1. New SDP Attributes
5.1. 新しいSDP属性

IANA has registered the following new SDP attributes:


Attribute name: rmcap Long form name: RTP-based media format capability Type of attribute: session-level and media-level Subject to charset: no Purpose: associate RTP-based media capability number(s) with media subtype and encoding parameters Appropriate Values: see Section 3.3.1 Contact name: Flemming Andreasen,

属性名:rmcap長い形式名:RTPベースのメディアフォーマット機能属性のタイプ:セッションレベルとメディアレベルサブジェクトの文字セット:なし目的:RTPベースのメディア機能番号をメディアサブタイプとエンコードパラメーターに関連付ける適切な値:セクション3.3.1を参照してください。連絡先名:Flemming Andreasen、fandres @

Attribute name: omcap Long form name: non-RTP-based media format capability Type of attribute: session-level and media-level Subject to charset: no Purpose: associate non-RTP-based media capability number(s) with media subtype and encoding parameters Appropriate Values: see Section 3.3.1 Contact name: Flemming Andreasen, Attribute name: mfcap Long form name: media format parameter capability Type of attribute: session-level and media-level Subject to charset: no Purpose: associate media format attributes and parameters with media format capabilities Appropriate Values: see Section 3.3.2 Contact name: Flemming Andreasen,

属性名:omcap長い形式名:非RTPベースのメディアフォーマット機能属性のタイプ:セッションレベルおよびメディアレベルサブジェクトの文字セット:なし目的:非RTPベースのメディア機能番号をメディアサブタイプに関連付け、エンコードパラメータ適切な値:セクション3.3.1を参照してください。連絡先名:Flemming Andreasen、fandreas @ cisco.com属性名:mfcap長い形式名:メディアフォーマットパラメータの機能属性のタイプ:セッションレベルとメディアレベル文字セットの対象:いいえ目的:メディアフォーマット属性とパラメーターをメディアフォーマット機能に関連付けます適切な値:セクション3.3.2を参照してください連絡先名:Flemming Andreasen、fandreas @

Attribute name: mscap Long form name: media-specific capability Type of attribute: session-level and media-level Subject to charset: no Purpose: associate media-specific attributes and parameters with media capabilities Appropriate Values: see Section 3.3.3 Contact name: Flemming Andreasen,

属性名:mscap長い形式の名前:メディア固有の機能属性のタイプ:セッションレベルおよびメディアレベル文字セットの対象:いいえ目的:メディア固有の属性およびパラメーターをメディア機能に関連付けます適切な値:セクション3.3.3を参照してください連絡先の名前:Flemming Andreasen、fandreas @

Attribute name: lcfg Long form name: latent configuration Type of attribute: media-level Subject to charset: no Purpose: to announce supportable media streams without offering them for immediate use. Appropriate Values: see Section 3.3.5 Contact name: Flemming Andreasen,

属性名:lcfg長い形式の名前:潜在的な構成属性のタイプ:メディアレベル文字セットの対象:いいえ目的:すぐに使用できるように提供せずにサポート可能なメディアストリームをアナウンスする。適切な値:セクション3.3.5を参照してください連絡先名:Flemming Andreasen、fandreas @

Attribute name: sescap Long form name: session capability Type of attribute: session-level Subject to charset: no Purpose: to specify and prioritize acceptable combinations of media stream configurations. Appropriate Values: see Section 3.3.8 Contact name: Flemming Andreasen,

属性名:sescap長い形式の名前:セッション機能属性のタイプ:セッションレベル文字セットの対象:no目的:メディアストリーム構成の許容可能な組み合わせを指定して優先順位を付ける。適切な値:セクション3.3.8を参照してください連絡先名:Flemming Andreasen、fandreas @

5.2. New SDP Capability Negotiation Option Tag
5.2. 新しいSDP機能ネゴシエーションオプションタグ

IANA has added the new option tag "med-v0", defined in this document, to the "SDP Capability Negotiation Option Capability Tags" registry created for RFC 5939 [RFC5939].

IANAは、このドキュメントで定義されている新しいオプションタグ「med-v0」を、RFC 5939 [RFC5939]用に作成された「SDP機能ネゴシエーションオプション機能タグ」レジストリに追加しました。

5.3. SDP Capability Negotiation Configuration Parameters Registry
5.3. SDP機能ネゴシエーション構成パラメーターレジストリ

IANA has changed the "SDP Capability Negotiation Potential Configuration Parameters" registry, currently registered and defined by RFC 5939 [RFC5939], as follows: The name of the registry should be "SDP Capability Negotiation Configuration Parameters Registry" and it should contain a table with the following column headings:

IANAは、RFC 5939 [RFC5939]で現在登録および定義されている「SDP機能ネゴシエーションの潜在的な構成パラメーター」レジストリを次のように変更しました。レジストリの名前は「SDP機能ネゴシエーションの構成パラメーターレジストリ」であり、次の列見出し:

o Encoding Name: The syntactical value used for the capability negotiation configuration parameter, as defined in RFC 5939 [RFC5939], Section 3.5.

o エンコード名:RFC 5939 [RFC5939]、セクション3.5で定義されている、機能ネゴシエーション構成パラメーターに使用される構文値。

o Descriptive Name: The name commonly used to refer to the capability negotiation configuration parameter.

o 説明的な名前:機能ネゴシエーション構成パラメーターを参照するために一般的に使用される名前。

o Potential Configuration Definition: A reference to the RFC that defines the configuration parameter in the context of a potential configuration attribute. If the configuration parameter is not defined for potential configurations, the string "N/A" (Not Applicable) MUST be present instead.

o 潜在的な構成定義:潜在的な構成属性のコンテキストで構成パラメーターを定義するRFCへの参照。構成パラメータが潜在的な構成に対して定義されていない場合は、代わりに文字列 "N / A"(該当なし)が存在する必要があります。

o Actual Configuration Definition: A reference to the RFC that defines the configuration parameter in the context of an actual configuration attribute. If the configuration parameter is not defined for actual configurations, the string "N/A" (Not Applicable) MUST be present instead.

o 実際の構成定義:実際の構成属性のコンテキストで構成パラメーターを定義するRFCへの参照。実際の構成に対して構成パラメーターが定義されていない場合は、代わりに文字列 "N / A"(該当なし)が存在する必要があります。

o Latent Configuration Definition: A reference to the RFC that defines the configuration parameter in the context of a latent configuration attribute. If the configuration parameter is not defined for latent configurations, the string "N/A" (Not Applicable) MUST be present instead.

o 潜在構成定義:潜在構成属性のコンテキストで構成パラメーターを定義するRFCへの参照。潜在的な構成に対して構成パラメーターが定義されていない場合は、代わりに文字列 "N / A"(該当なし)が存在する必要があります。

An IANA SDP Capability Negotiation Configuration registration MUST be documented in an RFC in accordance with the IETF Review policy [RFC5226]. Furthermore:

IANA SDP機能ネゴシエーション構成の登録は、IETFレビューポリシー[RFC5226]に従ってRFCに文書化する必要があります。さらに:

o The RFC MUST define the syntax and semantics of each new potential configuration parameter.

o RFCは、新しい可能性のある各構成パラメーターの構文とセマンティクスを定義する必要があります。

o The syntax MUST adhere to the syntax provided for extension configuration lists in RFC 5939 [RFC5939], Section 3.5.1, and the semantics MUST adhere to the semantics provided for extension configuration lists in RFC 5939 [RFC5939], Sections 3.5.1 and 3.5.2.

o 構文は、RFC 5939 [RFC5939]、セクション3.5.1の拡張構成リストに提供される構文に準拠する必要があり、セマンティクスは、RFC 5939 [RFC5939]、セクション3.5.1および3.5の拡張構成リストに提供されるセマンティクスに準拠する必要があります。 .2。

o Configuration parameters that apply to latent configurations MUST furthermore adhere to the syntax provided in Section 3.3.5 and the semantics defined overall in this document.

o 潜在構成に適用される構成パラメーターは、セクション3.3.5で提供されている構文と、このドキュメントで全体的に定義されているセマンティクスに準拠している必要があります。

o Associated with each registration MUST be the encoding name for the parameter as well as a short descriptive name for it.

o 各登録に関連付けられているのは、パラメーターのエンコード名とその短い説明的な名前でなければなりません。

o Each registration MUST specify if it applies to

o 各登録は、それが適用されるかどうかを指定しなければなりません

* Potential configurations

* 可能な構成

* Actual configurations

* 実際の構成

* Latent configurations

* 潜在的な構成

5.4. SDP Capability Negotiation Configuration Parameter Registrations
5.4. SDP機能ネゴシエーション構成パラメーターの登録

IANA has registered the following capability negotiation configuration parameters:


      Encoding Name: a
      Descriptive Name: Attribute Configuration
      Potential Configuration Definition: [RFC5939]
      Actual Configuration Definition: [RFC5939]
      Latent Configuration Definition: [RFC6871]
      Encoding Name: t
      Descriptive Name: Transport Protocol Configuration
      Potential Configuration Definition: [RFC5939]
      Actual Configuration Definition: [RFC5939]
      Latent Configuration Definition: [RFC6871]
      Encoding Name: m
      Descriptive Name: Media Configuration
      Potential Configuration Definition: [RFC6871]
      Actual Configuration Definition: [RFC6871]
      Latent Configuration Definition: [RFC6871]
      Encoding Name: pt
      Descriptive Name: Payload Type Number Mapping
      Potential Configuration Definition: [RFC6871]
      Actual Configuration Definition: [RFC6871]
      Latent Configuration Definition: [RFC6871]
      Encoding Name: mt
      Descriptive Name: Media Type
      Potential Configuration Definition: N/A
      Actual Configuration Definition: N/A
      Latent Configuration Definition: [RFC6871]
6. Security Considerations
6. セキュリティに関する考慮事項

The security considerations of RFC 5939 [RFC5939] apply for this document.

このドキュメントには、RFC 5939 [RFC5939]のセキュリティに関する考慮事項が適用されます。

In RFC 5939 [RFC5939], it was noted that negotiation of transport protocols (e.g., secure and non-secure) and negotiation of keying methods and material are potential security issues that warrant integrity protection to remedy. Latent configuration support provides hints to the other side about capabilities supported for further offer/answer exchanges, including transport protocols and attribute capabilities, e.g., for keying methods. If an attacker can remove or alter latent configuration information to suggest that only non-secure or less-secure alternatives are supported, then he may be able to force negotiation of a less secure session than would otherwise have occurred. While the specific attack, as described here, differs from those described in RFC 5939 [RFC5939], the considerations and mitigation strategies are similar to those described in RFC 5939 [RFC5939].

RFC 5939 [RFC5939]で、トランスポートプロトコルのネゴシエーション(例:セキュアおよび非セキュア)とキーイング方法とマテリアルのネゴシエーションは、整合性保護による救済を保証する潜在的なセキュリティ問題であることが指摘されました。潜在的な構成のサポートにより、トランスポートプロトコルやキーイング方法などの属性機能など、さらなるオファー/アンサー交換でサポートされる機能についてのヒントが相手側に提供されます。攻撃者が潜在的な構成情報を削除または変更して、非セキュアまたは安全性の低い代替手段のみがサポートされていることを示唆できる場合、攻撃者は、そうでない場合よりも安全性の低いセッションのネゴシエーションを強制できる可能性があります。ここで説明する特定の攻撃は、RFC 5939 [RFC5939]で説明されているものとは異なりますが、考慮事項と軽減戦略はRFC 5939 [RFC5939]で説明されているものと同様です。

Another variation on the above attack involves the session capability ("sescap") attribute defined in this document. The "sescap" enables a preference order to be specified for all the potential configurations, and that preference will take precedence over any preference indication provided in individual potential configuration attributes. Consequently, an attacker that can insert or modify a "sescap" attribute may be able to force negotiation of an insecure or less secure alternative than would otherwise have occurred. Again, the considerations and mitigation strategies are similar to those described in RFC 5939 [RFC5939].

上記の攻撃の別のバリエーションには、このドキュメントで定義されているセッション機能(「sescap」)属性が含まれます。 「sescap」を使用すると、すべての潜在的な構成に対して優先順位を指定でき、その優先順位は、個々の潜在的な構成属性で提供されるすべての優先順位指示よりも優先されます。その結果、「sescap」属性を挿入または変更できる攻撃者は、他の方法で発生した場合よりも安全でない、または安全性の低い代替手段のネゴシエーションを強制できる可能性があります。この場合も、考慮事項と緩和策はRFC 5939 [RFC5939]で説明されているものと同様です。

The addition of negotiable media formats and their associated parameters, defined in this specification can cause problems for middleboxes that attempt to control bandwidth utilization, media flows, and/or processing resource consumption as part of network policy, but that do not understand the media capability negotiation feature. As for the initial SDP capability negotiation work [RFC5939], the SDP answer is formulated in such a way that it always carries the selected media encoding for every media stream selected. Pending an understanding of capabilities negotiation, the middlebox should examine the answer SDP to obtain the best picture of the media streams being established. As always, middleboxes can best do their job if they fully understand media capabilities negotiation.


7. Acknowledgements
7. 謝辞

This document is heavily influenced by the discussions and work done by the SDP Capability Negotiation design team. The following people in particular provided useful comments and suggestions to either the document itself or the overall direction of the solution defined herein: Cullen Jennings, Matt Lepinski, Joerg Ott, Colin Perkins, and Thomas Stach.

このドキュメントは、SDP機能ネゴシエーション設計チームが行った議論と作業の影響を強く受けています。特に次の人々は、ドキュメント自体またはここで定義されたソリューションの全体的な方向性のいずれかに対して有用なコメントと提案を提供しました:Cullen Jennings、Matt Lepinski、Joerg Ott、Colin Perkins、およびThomas Stach。

We thank Ingemar Johansson and Magnus Westerlund for examples that stimulated this work, and for critical reading of the document. We also thank Cullen Jennings, Christer Holmberg, and Miguel Garcia for their review of the document.

この作業を刺激した例と文書の批判的な読書について、Ingemar JohanssonとMagnus Westerlundに感謝します。また、Cullen Jennings、Christer Holmberg、Miguel Garciaの両氏による文書のレビューに感謝します。

8. References
8. 参考文献
8.1. Normative References
8.1. 引用文献

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月。

[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with Session Description Protocol (SDP)", RFC 3264, June 2002.

[RFC3264] Rosenberg、J。およびH. Schulzrinne、「オファー/アンサーモデルとセッション記述プロトコル(SDP)」、RFC 3264、2002年6月。

[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", RFC 4566, July 2006.

[RFC4566] Handley、M.、Jacobson、V。、およびC. Perkins、「SDP:Session Description Protocol」、RFC 4566、2006年7月。

[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 2008.

[RFC5226] Narten、T。およびH. Alvestrand、「RFCでIANAの考慮事項セクションを作成するためのガイドライン」、BCP 26、RFC 5226、2008年5月。

[RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008.

[RFC5234] Crocker、D。およびP. Overell、「構文仕様の拡張BNF:ABNF」、STD 68、RFC 5234、2008年1月。

[RFC5939] Andreasen, F., "Session Description Protocol (SDP) Capability Negotiation", RFC 5939, September 2010.

[RFC5939] Andreasen、F。、「Session Description Protocol(SDP)Capability Negotiation」、RFC 5939、2010年9月。

8.2. Informative References
8.2. 参考引用

[RFC2198] Perkins, C., Kouvelas, I., Hodson, O., Hardman, V., Handley, M., Bolot, J., Vega-Garcia, A., and S. Fosse-Parisis, "RTP Payload for Redundant Audio Data", RFC 2198, September 1997.

[RFC2198]パーキンス、C。、クーベラス、I。、ホドソン、O。、ハードマン、V。、ハンドラリー、M。、ボロット、J。、ベガ-ガルシア、A。、およびS.フォセ-パリシス、「RTPペイロードfor Redundant Audio Data」、RFC 2198、1997年9月。

[RFC4568] Andreasen, F., Baugher, M., and D. Wing, "Session Description Protocol (SDP) Security Descriptions for Media Streams", RFC 4568, July 2006.

[RFC4568] Andreasen、F.、Baugher、M。、およびD. Wing、「メディアストリームのセッション記述プロトコル(SDP)セキュリティ記述」、RFC 4568、2006年7月。

[RFC4585] Ott, J., Wenger, S., Sato, N., Burmeister, C., and J. Rey, "Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF)", RFC 4585, July 2006.

[RFC4585] Ott、J.、Wenger、S.、Sato、N.、Burmeister、C。、およびJ. Rey、「​​リアルタイムトランスポートコントロールプロトコル(RTCP)ベースのフィードバック用の拡張RTPプロファイル(RTP / AVPF) "、RFC 4585、2006年7月。

[RFC4733] Schulzrinne, H. and T. Taylor, "RTP Payload for DTMF Digits, Telephony Tones, and Telephony Signals", RFC 4733, December 2006.

[RFC4733] Schulzrinne、H。およびT. Taylor、「DTMFディジット、テレフォニートーン、およびテレフォニーシグナルのRTPペイロード」、RFC 4733、2006年12月。

[RFC4867] Sjoberg, J., Westerlund, M., Lakaniemi, A., and Q. Xie, "RTP Payload Format and File Storage Format for the Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB) Audio Codecs", RFC 4867, April 2007.

[RFC4867] Sjoberg、J.、Westerlund、M.、Lakaniemi、A。、およびQ. Xie、「アダプティブマルチレート(AMR)およびアダプティブマルチレートワイドバンド(AMR-WB)のRTPペイロード形式およびファイルストレージ形式)Audio Codecs」、RFC 4867、2007年4月。

[RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman, "Codec Control Messages in the RTP Audio-Visual Profile with Feedback (AVPF)", RFC 5104, February 2008.

[RFC5104] Wenger、S.、Chandra、U.、Westerlund、M。、およびB. Burman、「RTP Audio-Visual Profile in Feedback(AVPF)のコーデック制御メッセージ」、RFC 5104、2008年2月。

Authors' Addresses


Robert R Gilman Independent 3243 W. 11th Ave. Dr. Broomfield, CO 80020 USA

Robert R Gilman Independent 3243 W. 11th Ave. Dr. Broomfield、CO 80020 USA


Roni Even Huawei Technologies 14 David Hamelech Tel Aviv 64953 Israel

Roni Even Huawei Technologies 14 David Hamelech Tel Aviv 64953 Israel


Flemming Andreasen Cisco Systems Iselin, NJ USA

Flemming Andreasen Cisco Systems Iselin、NJ USA