TAG:
sent in this conference. Bandwidth b=<modifier>:<bandwidth-value> //.... b:提供此次会话的带宽 <modifier>:修改量 CT Conference Total:固有的最大带宽值与多播骨干网的TTL值或一个特指的多播范围区相关连 如果某一会话或媒体的带宽与最大带宽值不同,则通过该参数提供一个最大的限定值。该参数指定多个媒体总和的值。 AS Application-Specific Maximum:该参数指定一个特殊应用的带宽,指定单一媒体的值。 Extension Mechanism:X-..扩展的带宽定义 Times, Repeat Times and Time Zones t=<start time> <stop time> // t=2873397496 2873404696 t:描述该会议的开始和结束时间,如果该会议在多个不规则的时间间隔内激活,可以使用多行t:描述 如果时间间隔为规则的,可以使用"r="重复定义。 <start time>:开始时间,以秒表示的NTP时间,开始结束时间都为0时被认为时永久的会议 <stop time>:结束时间,以秒表示的NTP时间,结束时间为0时,该会议直到过了开始时间才开始 r=<repeat interval> <active duration> <list of offsets from start-time> <repeat interval>:重复间隔 <active duration>:持续时间 <list of offsets from start-time>:相对开始时间的偏移 z=<adjustment time> <offset> <adjustment time> <offset> .... // z=2882844526 -1h 2898848070 0 z:<调整时间> <偏移> Encryption Keys k=<method> k=<method>:<encryption key> k=clear:<encryption key> //<加密密钥>密钥没有变换 k=base64:<encoded encryption key> //经base64加密的密钥,因为它含有SDP禁用的字符 k=uri:<URI to obtain key> //URI携带密钥 k=prompt //不采用密码,SDP没有提供密钥但该会话或媒体流是要求加密的。 Attributes //该描述常被用于扩展SDP协议,分成“会话级”和“媒体级”两种属性 a=<attribute> a=<attribute>:<value> // a=recvonly // a=orient:portrait a:媒体描述具备任意个“媒体级”的属性,用于附加表示媒体流的信息 属性也可以被加在第一个媒体域,这些“会话级”属性用于附带表示会议的信息 属性域一般有两种格式: <attribute>:性质属性,描述当前会话的性质 <value>: Media Announcements m=<media> <port> <transport> <fmt list> 每个会话可以包含许多的媒体描述, <media>:媒体类型,包括audio/video/application/data/control, (音频/视频/应用[如:白板信息]/数据[不要向用户显示]/控制) 当有新的媒体类型出项时,这些值将被扩展。 <port>:端口类型,该值的确定取决于对应的"c="域中指定的网络和在第三个子项中定义的传输协议,UDP端口只能在1024-65535之间RTP端口可以是任意有效的范围,RTCP端口定义为大于对应RTP端口的奇数,当分级的多个媒体流编码通过单一的地址发送时,我们必须指定多个端口用于传输。 采用跟"c="域中定义多个IP地址的格式一样, m=<media> <port>/<number of ports> <transport> <fmt list> example: m=video 49170/2 RTP/AVP 31 定义了两对的RTP/RTCP端口,49170 19171和49172 49173 <transport>:传输协议类型,该项的值依赖于"c="域中的网络类型 IP4 如果某个应用采用在UDP上使用单一组合了所有媒体格式和传输协议的模式传输,简单的方法是将传输协议指定为UDP,采用格式列表区别组合的协议,区别传输类型和媒体格式是必要的。 <fmt list>:格式列表,对音频和视频应用,该值表示媒体的有效负荷类型 一旦这个格式列表被限定,在这个会话过程中都将使用列表里面的有效负荷类型,但第一个类型将被作为默认值。 如果媒体流的传输模式不是RTP/UDP,格式将在附加的文件中进行定义。如果通过RTP传输,SDP可以提供静态和动态绑定的两种RTP编码有效负荷类型。静态绑定类型的类型值提供确定的有效负荷类型,动态绑定必须通过后续的选项来进一步的说明。 例如:m=video 49232 RTP/AVP 0 //定义负荷类型为0的媒体流从49232端口发送 m=video 49232 RTP/AVP 98 a=rtpmap:98 L16/16000/2 //采用采样频率为16KHZ 16bit的立体声线性编码 rtpmap属性对"m="描述的格式列表的负荷类型进行详细说明, 通用的rtpmap属性的格式为: a=rtpmap:<payload type> <encoding name>/<clock rate>[/<encoding parameters>] <payload type> <encoding name>:编码名,扩展的用X-开始 <clock rate>:采样频率 <encoding parameters>:对语音编码来说,该参数表示语音声道。 对视频编码不提供该参数。 RTP格式列表没提供对每个媒体包包括几个采样点进行说明,如果没有默认值,需要通过"ptime"说明。 非RTP媒体采用MIME文本类型编码,如:m=application 32416 udp wb Suggested Attributes 推荐的属性 a=cat:<category> cat:描述离散分级的会话类型,使接受者通过该参数过率不想要的会话类型 a=keywds:<keywords> keywds:该参数辅助接收者根据关键字过虑会话,鉴别想要会话类型。 a=tool:<name and version of tool> tool:该参数提供给SDP创建者名字和版本号。 a=ptime:<packet time> ptime:该参数提供一个以毫秒为单位的打包长度,媒体级属性 a=recvonly a=sendrecv a=sendonly 发送模式,会话级属性。 a=orient:<whiteboard orientation> 该参数指定白板应用中屏幕的方向性, 允许值为`portrait',`landscape' and `seascape' (upside down landscape). a=type:<conference type> 该参数指定会议类型, 允许值为:`broadcast', `meeting', `moderated', `test' and `H332'. broadcast会话默认为recvonly meeting默认sendrecv a=charset:<character set> 该参数指定会话名和信息值的字符集 a=charset:ISO-8859-1 a=sdplang:<language tag> 描述该会话的描述的语言 a=lang:<language tag> "session-level" and "media-level" SDP描述使用的语言,媒体的语言 a=framerate:<frame rate> 该参数描述视频的最大帧数(frames/sec),允许(整数.小数)格式 a=quality:<quality> 该参数用0-10的整数值描述建议的编码质量, 对视频来说为了在帧速率和持续图像质量间指定一个非默认的平衡值 10 - 最佳图像质量 5 - 无质量建议 0 - 最差图像质量 a=fmtp:<format> <format specific parameters> 该属性值指定一个SDP不了解的特殊格式,该格式是媒体的格式的一种。定义指定格式的附加参数 参考: http://tools.ietf.org/html/rfc4566 (popy) |