WebRTC源码-信令之六:SDP协议与协商流程
一、SDP协议概述
SDP(Session Description Protocol)是一个用来描述多媒体会话的应用层控制协议,
它是一个基于文本的协议,用于会话建立过程中的媒体类型和编码方案的协商等.
它不属于传输协议,它只使用不同的适当的传输协议,
包括会话通知协议(SAP)、会话初始协议(SIP)、实时流协议(RTSP)、
MIME 扩展协议的电子邮件以及超文本传输协议(HTTP)。
SDP协议是也是基于文本的协议,这样就能保证协议的可扩展性比较强,这样就使其具有广泛的应用范围。
SDP 不支持会话内容或媒体编码的协商,所以在流媒体中只用来描述媒体信息。
媒体协商这一块要用RTSP来实现。
SDP至少需要包含:
. 会话名称及意图
. 会话有效时间
. 媒体流信息(类型、地址、端口、格式等)
SDP在SIP协议栈中的位置如图所示:
二、SDP协议消息格式
SDP描述由许多文本行组成,文本行的格式为:
<类型>=<值>,
<类型>是一个字母,<值>是结构化的文本串,其格式依<类型>而定。
<type>=[CRLF]
在描述一个会话时SIP消息正
WebRTC源码-信令之六:SDP协议与协商流程相关推荐
- WebRTC源码研究(4)web服务器工作原理和常用协议基础
文章目录 WebRTC源码研究(4)web服务器工作原理和常用协议基础 前言 做WebRTC 开发为啥要懂服务器开发知识 1. Web 服务器简介 2. Web 服务器的类型 3. Web 服务器的工 ...
- WebRTC源码研究(4)web服务器工作原理和常用协议基础(转载)
前言 前面3篇博客分别对WebRTC框架的介绍,WebRTC源码目录,WebRTC的运行机制进行了介绍,接下来讲解一点关于服务器原理的知识.后面博客会写关于WebRTC服务器相关的开发,目前git上面 ...
- WebRTC源码研究(1)WebRTC架构
文章目录 WebRTC源码研究(1)WebRTC架构 1. WebRTC简介 2. WebRTC的能力 2.1 抓住属于WebRTC的5G时代风口 2.1.1 浏览器的支持情况 2.1.2 大厂的加入 ...
- 最新 WebRTC 源码目录结构分析
前言 最近一直在研究 WebRTC源码,发现目前网上分析WebRTC源码的资料非常少.随着Google不断推进WebRTC标准,WebRTC 代码的变化非常大,很多以前的分析文章目前都与最新的代码无法 ...
- webrtc源码学习 - 点对点(P2P)链接过程(peer connection)
创建PC pc 是 peer connection 的简写,以下文章中pc 都特指 peer connection PeerConnection 是webrtc 中链接过程非常重要的接口,提供了包括, ...
- WebRTC源码分析-呼叫建立过程之五(创建Offer,CreateOffer,上篇)
目录 1. 引言 2 CreateOffer声明 && 两个参数 2.1 CreateOffer声明 2.2 参数CreateSessionDescriptionObserver 2. ...
- WebRTC源码分析-呼叫建立过程之四(上)(创建并添加本地音频轨到PeerConnection)
目录 1. 引言 2. 音频轨创建和添加 2.1 音频源AudioSource的创建 2.1.1 音频源继承树 2.1.2 近端音频源LocalAudioSource 2.1.3 远端音频源Remot ...
- WebRTC源码研究(7)创建简单的HTTPS服务
文章目录 WebRTC源码研究(7)创建简单的HTTPS服务 1. HTTPS简介 2. HTTPS 协议 3. HTTPS 证书 4. 创建简单的HTTPS服务 4.1 生成HTTPS证书 4.2 ...
- webrtc学习--webrtc源码获取
文章目录 前言 webrtc下载编译 正常编译webrtc 获取对应的版本 获取对应的版本,下面以获取m98版本为例 webrtc对应的版本的地址,需要翻墙才能查看 编译记录 peerconnecti ...
最新文章
- AnjularJS笔记5--ng-repeat跟据ID判断重复性
- C语言的成绩查询系统,c语言 成绩查询系统
- 【Qt】undefined reference to `vtable for xxx’
- 关于JavaScript的变量和函数提升
- vue 监听路由变化
- WebApp 开发中常用的代码片段
- java 匿名接口实现_Java通过接口实现匿名类的实例代码
- C语言学习及项目开发所遇问题总集(一)---Mr.Zhang
- mysql查询和缓存原理
- alin39048错误原因_支付宝支付ALIN10146错误
- SpringMVC-@RequestMapping的参数和用法
- 论文阅读:Uncertainty-aware Joint Salient Object and Camouflaged Object Detection
- Django模板过滤
- bluem2.com引擎mysql,蓝色bluem2引擎登录器配置教程详细,bluem2列表格式
- TOGAF9-certification简介
- linux下编译ffmpeg很多报错,linux下ffmpeg库 ARM交叉编译
- 一文看懂DSP的DMA传输(burst、transfer、wrap)
- 一、OpenAI ChatGPT 注册使用
- 【高德地图进阶】--- 带图片的点(3)
- 软件测试工作流程规范