RTP视频流的SDP文件
RTP视频流的SDP文件
背景
直接通过URL地址(rtp://192.168.1.104:1234
)用vlc打开RTP网络流的时候报错:
SDP required:
A description in SDP format is required to receive the RTP stream. Note that rtp:// URIs cannot work with dynamic RTP payload format (96).
后来才想起是需要写sdp文件,所以顺便记录下。
SDP文件
会话描述协议(Session Description Protocol或简写SDP)描述的是流媒体的初始化参数。此协议由IETF发表为 RFC 2327。
– 来自百度百科
SDP(Session Description Protocol) 是一种通用的会话描述协议,例如在音视频通话前通话双方需要进行媒体能力协商,比如协商双方都可支持的编解码类型,交换候选地址等,因此通话前都会发送一个 SDP,描述自己的会话和媒体等信息。
– 来自CSDN :https://blog.csdn.net/weixin_38102771/article/details/121259974
文件规范描述
标准 SDP 结构由会话级描述和多个媒体级描述组成,每条描述信息都是 key=value 的形式,key 可以为 v(版本),o(owner),s(会话),m(媒体信息),a(属性),c(连接)等。
这里只说说与使用RTP相关的描述。
媒体级描述
媒体描述:
m=
- media:媒体类型,包括 video、audio等。
- port:传输媒体流使用的端口
- transport:传输协议描述,如 UDP/TLS/RTP/SAVPF
- fmt list:媒体数据负载列表
属性描述:
a=
:
用于进一步描述媒体属性信息,例如对RTP数据的描述:
a=rtpmap:
/ [/ ]
连接描述:
c=
- nettype:网络类型,比如IN,表示 Internet。
- addrtype:地址类型,比如IP4、IP6。
- connection-address:如果是广播,则为广播地址组;如果是单播,则为单播地址;
简单的rtp流媒体SDP例子
一个简单的rtp流媒体sdp文件参考:
m=video 1234 RTP/AVP 96
a=rtpmap:96 H264
a=framerate:15
c=IN IP4 192.168.1.28
说明:
- 媒体描述(m=),video:媒体类型; 1234:端口号; RTP/AVP:传输协议; 96:rtp头中的payload格式
- 属性描述(a=),这里是对RTP数据属性的描述,96:rtp头中的payload格式;H264:编码类型;还有些缺省默认的参数属性
- 属性描述(a=),这里是对帧率的描述,framerate:15
- 连接描述(c=):媒体链接信息,IN:网络类型一般为IN;IP4:地址类型一般为IP4;后面是IP地址(注意这里是打开VLC的机器IP地址,不是发送方的IP)
参考
https://blog.csdn.net/weixin_38102771/article/details/121259974
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 DD'Notes!
评论