我是靠谱客的博主 炙热黑米,最近开发中收集的这篇文章主要介绍SDP协议学习,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.什么是SDP

SDP(Session Description Protocol)它只是一种信息格式的描述标准,本身不属于传输协议,但是可以被其他传输协议用来交换必要的信息。

2.SDP规范

多个媒体描述:对于终端来说有几路视频和音频,每一路音频视频使用的哪些编解码器,编解码器的参数的描述等

一个会话级描述:使用的SDP协议版本,使用的网络是什么(全局的),会话只有一个,全局的。

由多个<type>=<value>组成:

3.会话层:

会话的名称和目的

会话的存活时间

会话中包括多个媒体信息

4.媒体层(媒体层是在会话层之内的)

媒体格式 

传输协议

传输的IP端口

媒体负载类型

5.SDP描述信息

5.1.Session Description

 v=(protocol version)

o=(owner/create and session identifier)

s=(session name)

c=*(conn info - optional if included at session-level)

t=(time the session is active)

a=*(zero or more session attribute lines) 可以有0个或多个属性

5.2.Media Description

m=(media name and transport address)

c=*(conn ifno - optional if included at session-level) 连接信息,如果会话层有就用会话层的

b=*(bandwidth information)带宽信息

a=*(zero or more session attribute lines)

6.字段含义:

version必选: v=0 SDP的版本号,不包括次版本号

Session Name 必选 s=<session name> 会话名, s=-表示忽略会话名

Origin/Owner 必选 : o=<username> <session id ><version ><network type><address type><address>

例子: o70176245868360677562 IN IP4 127.0.0.1

Connection 可选:c=<network type><address type><connection address>

例:c=IN IP4 0.0.0.0

Media必选:m=<media><port><transport><fmt/payload type list>

例:m=audio 1024 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126

 底层用的udp协议,udp上的安全套接字DTLS, UDP上使用的是RTP(SRTP), 内容包含s:安全, A:audio, V :video, P:可配置

F:feedback

Attributes 可选 :a=<TYPE>或a=<TYPE>:<VALUES>

例子:a=framerate:<帧速率>

rtpmap 可选 

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

fmtp可选

a=fmtp:<format/payload type> parameters

例:a=fmtp:103 apt=106

最后

以上就是炙热黑米为你收集整理的SDP协议学习的全部内容,希望文章能够帮你解决SDP协议学习所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部