SDP描述

SDP描述一 SDP 协议介绍 SDP nbsp 完全是一种会话描述格式 它不属于传输协议 它只使用不同的适当的传输协议 包括会话通知协议 SAP 会话初始协议 SIP 实时流协议 RTSP MIME 扩展协议的电子邮件以及超文本传输协议 HTTP SDP 协议是也是基于文本的协议 这样就能保证协议的可扩展性比较强 这样就使其具有广泛的应用范围 SDP nbsp 不支持会话内容或媒体编码的协商 所以在流媒

一、SDP协议介绍

SDP 完全是一种会话描述格式 ― 它不属于传输协议 ― 它只使用不同的适当的传输协议,包括会话通知协议(SAP)、会话初始协议(SIP)、实时流协议(RTSP)、MIME 扩展协议的电子邮件以及超文本传输协议(HTTP)。SDP协议是也是基于文本的协议,这样就能保证协议的可扩展性比较强,这样就使其具有广泛的应用范围。SDP 不支持会话内容或媒体编码的协商,所以在流媒体中只用来描述媒体信息。媒体协商这一块要用RTSP来实现.

二、SDP协议格式

SDP描述由许多文本行组成,文本行的格式为
<类型>
=
<值>

<类型>
是一个字母,
<值>
是结构化的文本串,其格式依
<类型>
而定。




<type>=

[CRLF]

常见的fields有:

table1

tabl2

tabl3

三、SDP协议例子:

下面是一个helix 流媒体服务器的RTSP协议中的SDP协议:

v=0 //SDP version

// o field定义的源的一些信息。其格式为:o=










o=- IN IP4 10.56.136.37 s=

i=


  //session的信息

c=IN IP4 0.0.0.0 //connect 的信息,分别描述了:网络协议,地址的类型,连接地址。

c=IN IP4 0.0.0.0

t=0 0 //时间信息,分别表示开始的时间和结束的时间,一般在流媒体的直播的时移中见的比较多。

a=SdpplinVersion: //描述性的信息

a=StreamCount:integer;2 //用来描述媒体流的信息,表示有两个媒体流。integer表示信息的格式为整数。

a=control:*

a=DefaultLicenseValue:integer;0 //License信息

a=FileType:string;”MPEG4″ 用来描述媒体流的信息说明当前协商的文件是mpeg4格式的文件

a=LicenseKey:string;”license.Summary.Datatypes.RealMPEG4.Enabled”

a=range:npt=0-72.080000  //用来表示媒体流的长度

m=audio 0 RTP/AVP 96 //做为媒体描述信息的重要组成部分描述了媒体信息的详细内容:表示session的audio是通过RTP来格式传送的,其payload值为96传送的端口还没有定。

b=as:24 //audio 的bitrate

b=RR:1800

b=RS:600

a=control:streamid=1  //通过媒体流1来发送音频

a=range:npt=0-72.080000 //说明媒体流的长度。

a=length:npt=72.080000

a=rtpmap:96 MPEG4-GENERIC/32000/2 //rtpmap的信息,表示音频为AAC的其sample为32000

a=fmtp:96 profile-level-id=15;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1210 //config为AAC的详细格式信息

a=mimetype:string;”audio/MPEG4-GENERIC”

a=Helix-Adaptation-Support:1

a=AvgBitRate:integer;48000

a=HasOutOfOrderTS:integer;1

a=MaxBitRate:integer;48000

a=Preroll:integer;1000

a=OpaqueData:buffer;”A4CAgCIAAAAEgICAFEAVABgAAAC7gAAAu4AFgICAAhKIBoCAgAEC”

a=StreamName:string;”Audio Track”

下面是video的信息基本和audio的信息相对称,这里就不再说了。

m=video 0 RTP/AVP 97

b=as:150

b=RR:11250

b=RS:3750

a=control:streamid=2

a=range:npt=0-72.080000

a=length:npt=72.080000

a=rtpmap:97 MP4V-ES/2500

a=fmtp:97 profile-level-id=1;

a=mimetype:string;”video/MP4V-ES”

a=Helix-Adaptation-Support:1

a=AvgBitRate:integer;

a=HasOutOfOrderTS:integer;1

a=Height:integer;240 //影片的长度

a=MaxBitRate:integer;

a=MaxPacketSize:integer;1400

a=Preroll:integer;1000

a=Width:integer;320  //影片的宽度

a=OpaqueData:buffer;”AzcAAB8ELyARAbd0AAST4AAEk+AFIAAAAbDzAAABtQ7gQMDPAAABAAAAASAAhED6KFAg8KIfBgEC”

a=StreamName:string;”Video Track”

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217143.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午10:15
下一篇 2026年3月18日 上午10:15


相关推荐

  • 小波去噪基本概念

    小波去噪基本概念一 前言在现实生活和工作中 噪声无处不在 在许多领域中 如天文 医学图像和计算机视觉方面收集到的数据常常是含有噪声的 噪声可能来自获取数据的过程 也可能来自环境影响 由于种种原因 总会存在噪声 噪声的存在往往会掩盖信号本身所要表现的信息 所以在实际的信号处理中 常常需要对信号进行预处理 而预处理最主要的一个步骤就是降噪 小波分析是近年来发展起来的一种新的信号处理工具 这

    2026年3月26日
    2
  • springboot下使用拦截器和过滤器[通俗易懂]

    springboot下使用拦截器和过滤器[通俗易懂]1.拦截器InterceptorSpringMVC的拦截器(Interceptor)和Filter不同,但是也可以实现对请求进行预处理,后处理。先介绍它的使用,只需要两步:1.1实现拦截器实现拦截器可以自定义实现HandlerInterceptor接口,也可以通过继承HandlerInterceptorAdapter类,后者是前者的实现类。如果preHandle方法ret…

    2022年7月17日
    21
  • 解析音视频网络传输技术之一

    前面讲解了音视频编解码的基本知识,相信阅读过的朋友,都有个基本的认识。音视频除了存储,还如何传输呢?比如直播互动,网上课堂等,这些场景中,音视频是如何实现在网络中传输呢?今天这篇文章,就讲解下,音视频的传输的基本知识。本文主要讲解一些基本的传输协议、拥塞控制,音视频同步,校验,QOS服务质量等。一.传输协议流媒体的很多协议都是在传统的TCP/UDP协议之上,加强流媒体在网络传输中的稳定性。在端…

    2022年4月9日
    53
  • java下载需要oracle账户

    java下载需要oracle账户目前在官网下载低于jdk1.8的javajdk的时候需要登陆,这边分享一个账号,方便下载2696671285@qq.com密码:Oracle123或者自己申请一个,嫌麻烦,就发现网上有个账户,直接下载了//转:https://blog.csdn.net/WNsshssm/article/details/84315519…

    2022年7月18日
    12
  • python2与python3中input的区别

    python2与python3中input的区别python2与python3的区别:1、input:python2中input需要用户指定输入的类型,以下代码体现了这点2、python2中的raw_input与python3中的input

    2022年7月6日
    26
  • 图片转换成html代码_java html转图片

    图片转换成html代码_java html转图片1.页面上的图片,转换成base64格式,可以通过canvas的toDataURL例子:给定图片的url将图片转换为base64varimageSrc="../images/

    2022年8月6日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号