【音视频开发】 : SDP协议

本文详细介绍了SDP协议,包括其在多媒体通信中的应用、协议格式、会话描述参数(如版本、起源、媒体描述等)以及关键字段如媒体类型、端口和传输协议。
摘要由CSDN通过智能技术生成

一、SDP协议介绍

SDP(Session Description Protocol)是一种描述会话(Session)的应用层控制协议,用于在多媒体通信中传递会话相关的信息。它被广泛应用于实时流媒体、视频会议、互联网电话等领域。为多媒体会话初始化、获取媒体编码信息等提供了描述。

二、SDP协议的格式

<type>=<value>

三、会话描述的参数

SDP会话描述由一个会话级描述和多个媒体级描述构成。

  • 会话级:作用域是整个会话。从"v="行开始到下一个媒体描述为止。
  • 媒体级:描述是对单个媒体流进行描述。从"m="行开始到下一个媒体描述为止。

1.Version(必选)

协议版本,不包括版本号

v=0

2.origion(必选)

对会话发起者的描绘

	o=<username> <sessionid> <version> <network type> <address type> <address>
  • < username >:用户的登录名。如果主机不支持这个,则为"-"。(不能含有空格)
  • < sessionid >:会话id,唯一性。
  • < version >:会话版本。
  • < networktype >:网络类型,一般为"IN"。
  • < addresstype >:地址类型,一般为"IP4"
  • < address >:地址

3.Session Name(必选)

会话名称

s=<sessionname>

4.Connection Data(可选)

表示媒体的连接信息。会话声明中,会话级描述必须有 "c="或每个媒体级描述里有一个"c="项。当然两者之间都存在也可以。

c=<networktype> <address type> <connection address>

5.Bandwidth(可选)

带宽信息

b=<modifier>:<bandwidth-value>

6.Times(必选)

描述会话的开始时间和结束时间(两个都是NTP时间单位是秒)

t=<start time>  <stop time>

< start time >和< stop time >都为0时表示持久的会话。如果只有< stop time >为 0,则过了starttime 依旧持续会话。

7.Media Announcements(必选)

媒体名称和传输地址。一个媒体描述以"m="开始到下一个"m="结束。

m=<media><port> <transport> <fmt list>
  • < media >:媒体类型,有"audio" “video” “application” “data” “control”。

  • < port >:媒体流发生传输层的端口。对于RTP偶数端口用来传输数据。

  • < transport >:传输协议,与c=行的地址类型有关。两种:RTP/AVP(RealtimeTransport Protocol using the Audio/Video profile carried over UDP)。

  • < fmt list >:媒体格式。但第一个为缺省值,分为静态绑定和动态绑定:静态绑定即媒体编码方式与RTP负载类型有确定的一一对应关系,动态绑定即媒体编码方式(如时钟频率,音频信道数等)没有完全确定,需要进一步的属性说明(用rtpmap)。
    比如:

      m=video 0 RTP/AVP 96  a=rtpmap:96 h264/90000
    

8.rtpmap(可选)

a=rtpmap:<payload type><encoding name>/<clock rate>[/<encodingparameters>]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rain_ZZX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值