sdp会话描述符有多行用如下格式组成的文本:
  <type>=<value>
等号旁边不允许留白。

sdp会话描述符有一个session-level的段,后面会接零个或者多个media-level段。session-level部分使用”v=“开始,直到第一个media-level段。每个media-level段由”m=“开始,直到下个media-level段开始或者描述符结束,下面是个例子:
    v=0
    o=- 3 2 IN IP4 192.168.33.117
    s=CounterPath eyeBeam 1.5
    c=IN IP4 192.168.33.117
    t=0 0
    m=audio 35650 RTP/AVP 0 8 18 101
    a=alt:1 3 : sQfPf+iU /KNiTB1A 192.168.33.117 35650
    a=alt:2 2 : SnxucZRo zpZgHxu2 192.168.20.1 35650
    a=alt:3 1 : 8ZUJ6mxW SHFqJnjo 192.168.88.1 35650
    a=fmtp:18 annexb=no
    a=fmtp:101 0-15
    a=rtpmap:18 G729/8000
    a=rtpmap:101 telephone-event/8000
    a=sendrecv
    m=video 54812 RTP/AVP 115 34
    a=alt:1 3 : zO/vbGtW 56vfK5Yi 192.168.33.117 54812
    a=alt:2 2 : 85YBMv+X 7bQYCVFc 192.168.20.1 54812
    a=alt:3 1 : GY7RIq4D WivNWaVC 192.168.88.1 54812
    a=fmtp:115 QCIF=1 I=1 J=1 K=1 MaxBR=1960
    a=fmtp:34 QCIF=1 CIF=1 MaxBR=1960
    a=rtpmap:115 H263-1998/90000
    a=rtpmap:34 H263/90000
    a=sendrecv

有些参数是可选的,那么会带上*:

会话描述符
    v=  (protocol version)
    o=  (originator and session identifier)
    s=  (session name)
    i=* (session information)
    u=* (URI of description)
    e=* (email address)
    p=* (phone number)
    c=* (connection information -- not required if included in all media)
    b=* (zero or more bandwidth information lines) One or more time descriptions ("t=" and "r=" lines; see below)
    z=* (time zone adjustments)
    k=* (encryption key)
    a=* (zero or more session attribute lines)

一个或者多个媒体描述符 时间描述符
    t=  (time the session is active)
    r=* (zero or more repeat times)

媒体描述符
    m=  (media name and transport address)
    i=* (media title)
    c=* (connection information -- optional if included at session level)
    b=* (zero or more bandwidth information lines)
    k=* (encryption key)
    a=* (zero or more media attribute lines)

关于a参数,也就是属性
可以用在session-level和media-level两个层次中。格式为

  a=<attribute>
  a=<attribute>:<value>

例如
  a=recvonly
  a=orient:landscape

在media-level中a参数有如下两个较为重要的部分

a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>]

一般来说动态载荷类型用得比较多,静态一般不会使用比如u-law PCM默认就是单声道8kHz采样率,这个是用载荷类型为0就可以完全表达出来。而动态载荷类型则不然,有时候会根据网络状况调整细分参数,比如调整采样率和和编码方式。

a=fmtp:<format> <format specific parameters>

该属性值指定一个SDP不了解的特殊格式,该格式是媒体的格式的一种m参数中给出,定义指定格式的附加参数。
  

sdp概览的更多相关文章

  1. Activity之概览屏幕(Overview Screen)

    概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...

  2. Atitit 软件工程概览attilax总结

    Atitit 软件工程概览attilax总结 1.1. .2 软件工程的发展 进一步地,结合人类发展史和计算机世界演化史来考察软件工程的发展史. 表2 软件工程过程模型 表2将软件工程的主要过程模型做 ...

  3. Atitit各种SDM 软件开发过程SDP sdm的ddd tdd bdd设计

    Atitit各种SDM 软件开发过程SDP sdm的ddd tdd bdd设计 1.1. software development methodology (also known as SDM 1 1 ...

  4. iOS开发系列—Objective-C之基础概览

    概览 前面我们已经用了几章内容进行C语言介绍,当然要通过几篇文章完整的介绍C语言的知识是不太现实的,例如C语言的文件操作.内存申请等我们都没有重点介绍,当然核心知识点基本都已经提到了,后面有时间我们会 ...

  5. iOS开发系列--IOS程序开发概览

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

  6. Azure SQL Database (19) Stretch Database 概览

    <Windows Azure Platform 系列文章目录>  Azure SQL Database (19) Stretch Database 概览      Azure SQL Da ...

  7. Web前端开发大系概览 (前端开发技术栈)

    前言 互联网建立50多年了,网站开发技术日新月异,但web前端始终离不开浏览器,最终还是HTML+JavaScript+CSS这3个核心,围绕这3个核心而开发出来大量技术框架/解决方案. 我从2000 ...

  8. Atitit.自然语言处理--摘要算法---圣经章节旧约39卷概览bible overview v2 qa1.docx

    Atitit.自然语言处理--摘要算法---圣经章节旧约39卷概览bible overview v2 qa1.docx 1. 摘要算法的大概流程2 2. 旧约圣经 (39卷)2 2.1. 与古兰经的对 ...

  9. 【WPF系列】基础学习-WPF架构概览

    引言 WPF从.net framewok3.0加入以来,经历了很多跟新.每次更新都给用户带来了新的功能或者优化性能.下面我们首先看下WPF再.netFramework中的位置,接着介绍下WPF的架构框 ...

随机推荐

  1. 搜狗输入法APP的2个剪切板内容获取入口

    搜狗输入法APP的2个剪切板内容获取入口

  2. 编译android4.4 报错error: call to '__property_get_too_small_error' declared with attribute 的处理 (转载)

    转自:http://blog.csdn.net/syhost/article/details/14448899 完整的报错为: system/core/include/cutils/propertie ...

  3. C语言编译器为什么能够用C语言编写?

    不知道大家有没有想过一个问题:C语言编译器为什么能够用C语言编写? 所谓C语言编译器,就是把编程得到的文件,比如.c,.h的文件,进行读取,并对内容进行分析,按照C语言的规则,将其转换成cpu可以执行 ...

  4. [转]linux tr命令详解

    转自:http://www.cnblogs.com/huangxingkezhan/archive/2013/01/23/2874031.html 通过使用 tr,您可以非常容易地实现 sed 的许多 ...

  5. Jquery音频播放插件下载地址(有Html、JS、CSS、音频)

    有详细的html文件.全部JS代码文件.Css样式文件.测试音频资料 音频播放插件下载链接(百度云): http://pan.baidu.com/s/1pKC904F 提取码评论留邮箱发送,谢谢!

  6. python框架之Flask基础篇(四)-------- 其他操作

    1.蓝图 要用蓝图管理项目,需要导入的包是:from flask import Buleprint 具体大致分为三步: 1.先在子模块中导入蓝图包,然后再创建蓝图对象. 2.然后将子模块中的视图函数存 ...

  7. JS——dom

    节点的获取 <script> var div = document.getElementById("box");//返回指定标签 var div = document. ...

  8. 【技术累积】【线】【java】【2】AOP

    思维导图 基础概念 翻译:面向切面编程,或面向方面编程: 是OOP的重要补充: 切面:传统的OOP构建的是对象之间的关系,是一种垂直的关系:假设,OOP程序是一个圆筒,那么与业务或逻辑无关的东西,比如 ...

  9. seam remote 返回的map结构

    map结构的数据,js接收到的结构是elements下面的一个 [ {key:***,value:***}, {key:***,value:***} ] 这样子的集合,需要经过下面代码的转换才能重新变 ...

  10. CDR软件-CorelDRAW软件下载,618活动

    618我有诚意,你呢? 不花钱的618,是残缺的618 给自己一个放肆shopping的机遇 活动力度不够大? 继续升级,终极体验 618疯狂倒计时! 同志们,如果你错过了之前的抢先购和升级活动 那么 ...