RFC4317 Session Description Protocol (SDP) Offer/Answer Examples 第二章节阅读笔记

freeswitch-sip呼叫连接日志记录 首先在linphone端注册sip账户 呼叫 freeswitch地址为:192.168.1.81 linphone地址为:192.168.1.77 在串口执行命令: sofia profile internal siptrace on 打开sip详细日志 sofia profile internal siptrace off 关闭sip详细日志 串口日志打印: freeswitch@localhost.localdomain> recv 1973 bytes from udp/[19 阅读详情

在RFC4317中枚举了很多例子,对于常见的不再解释,这里只选择部分记录

(1)2.4.  Two Audio Streams

In this example, Alice wishes to establish separate audio streams, one for normal audio and the other for telephone-events.  Alice offers two separate streams, one audio with two codecs and the other with RFC 2833 [4] tones (for DTMF).  Bob accepts both audio streams choosing the iLBC codec and telephone-events.

    [Offer]
      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC/8000
      m=audio 49172 RTP/AVP 98
      a=rtpmap:98 telephone-event/8000

      a=sendonly

这里将普通的音频流和DTMF按键流分成两个m行,在实际应用中,它们经常合在一起

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97 98
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC/8000
      a=rtpmap:98 telephone-event/8000

      a=sendonly

(2) 2.5.  Audio and Video 4

Alice and Bob establish an audio and video session with a single audio and video codec.  In a second exchange, Bob changes his address for media and Alice accepts with the same SDP as the initial exchange  (and as a result does not increment the version number).

    [Offer]
      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC/8000
      m=video 51372 RTP/AVP 31

      a=rtpmap:31 H261/90000

    [Answer]
      v=0
      o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com
      s=
      c=IN IP4 host.biloxi.example.com
      t=0 0
      m=audio 49174 RTP/AVP 97
      a=rtpmap:97 iLBC/8000
      m=video 49170 RTP/AVP 31

      a=rtpmap:31 H261/90000

    [Second-Offer]
      v=0
      o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com
      s=
      c=IN IP4 newhost.biloxi.example.com
      t=0 0
      m=audio 49178 RTP/AVP 97
      a=rtpmap:97 iLBC/8000
      m=video 49188 RTP/AVP 31
      a=rtpmap:31 H261/90000

    [Second-Answer]
      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC/8000

      m=video 51372 RTP/AVP 31                                                                                                                                                  a=rtpmap:31 H261/90000

可以看到二次能力协商Offer中Session Number递增1,Answer中Session Number保持不变。Session Number表示当SDP能力发生变更时,则递增,接受方来决定是否解析能力。所以当会话保活选择re-Invite方式进行时,则Session Number保持不变。

(3)2.7.  Audio and Video 5

Alice and Bob establish an audio and video session in the first exchange with a single audio and video codec.  In the second exchange, Alice adds a second video codec, which Bob accepts.  This allows Alice and Bob to switch between the two video codecs without another offer/answer exchange. 

[Offer]
      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 99
      a=rtpmap:99 iLBC/8000
      m=video 51372 RTP/AVP 31
      a=rtpmap:31 H261/90000

[Answer]
      v=0
      o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com
      s=
      c=IN IP4 host.biloxi.example.com
      t=0 0
      m=audio 49172 RTP/AVP 99
      a=rtpmap:99 iLBC/8000
      m=video 51374 RTP/AVP 31

      a=rtpmap:31 H261/90000

    [Second-Offer]
      v=0
      o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 99
      a=rtpmap:99 iLBC/8000
      m=video 51372 RTP/AVP 31 32
      a=rtpmap:31 H261/90000
      a=rtpmap:32 MPV/90000

    [Second-Answer]
      v=0
      o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com
      s=
      c=IN IP4 host.biloxi.example.com
      t=0 0
      m=audio 49172 RTP/AVP 99
      a=rtpmap:99 iLBC/8000
      m=video 51374 RTP/AVP 31 32
      a=rtpmap:31 H261/90000
      a=rtpmap:32 MPV/90000

不理解:因为在视频会议场景中,都只能协商唯一能力。如果m行中支持多种能力,那么认为第一个能力是作为最终能力的。

(4)2.8.  Audio and Video 6  --允许不同能力的C行地址不同

   This example shows an audio and video offer that is accepted, but the answerer wants the video sent to a different address than that of the audio.  This is a common scenario in conferencing where the video and audio mixing utilizes different servers.  In this example, Alice offers audio and video, and Bob accepts.

    [Offer]
      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      t=0 0
      m=audio 49170 RTP/AVP 0 8 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:8 PCMA/8000
      a=rtpmap:97 iLBC/8000
      m=video 51372 RTP/AVP 31 32
      a=rtpmap:31 H261/90000

      a=rtpmap:32 MPV/90000

    [Answer]
      v=0
      o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com
      s=
      c=IN IP4 host.biloxi.example.com
      t=0 0
      m=audio 49174 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 49172 RTP/AVP 32
      c=IN IP4 otherhost.biloxi.example.com
      a=rtpmap:32 MPV/90000
关于SDP中协商SRTP加密信息 RFC4568中关于媒体流加密说明时,在SDP中新增了"crypto"字段用于描述加密信息,格式如下:                         a=crypto:<tag> <crypto-suite> <key-params> [<session-params>]其中:                    l  tag为十进制数字,用于标... 阅读详情

相关推荐

rfc4317中文.pdf

本文档提供了会话描述协议(SDP)的示例 提供/答案交换。示例包括编解码器协商和 选择,保留和恢复以及添加和删除媒体 流。这些示例显示了多种媒体类型,双向, 单向,非活动流和动态有效载荷类型。共同 还提供了第三方呼叫控制(3pcc)示例。

SIP Standards

转自 http://www.packetizer.com/ipmc/sip/standards.html Core SIP Documents RFC Document Title RFC 2543 SIP: Session Initiation Protocol (obsolete) RFC 3261 SIP: Session Initiatio

温故而知新 1408

RFC7413中文.pdf

Google TCP fast open技术规范 互联网工程任务组(IETF)程勇 ,TCP加速连接建立相关

hostapd wpa_supplicant madwifi详细分析(十二)——EAP(RFC3748)及EAP状态机分析(RFC4137)

wpa_supplicant/hostapd程序里面的核心部分,应该要算它的状态机了,前面分析了WPS的实现过程,但是在看代码的时候,不管是加密部分还是WSC部分,都绕不过它的状态机,它就像路上的一块石头,如果不搬开它,很难继续往下走。下面是wpa_supplicant 模块结构图,红线部分是状态机模块,它就像一个桥架在那里,如果左边进来的的数据想要到右边去实现加密或者解密,就必须经过这座桥,而且

奔跑的路 6524

MEG预处理-Brainstorm

Brainstorm下载和安装 去Brainstorm官网进行下载:打开网页后,点击左侧Download;在跳出来的界面中进行简单的注册,注册完成后可以进行下载 解压后得到“brainstorm3”的文件夹,里面包含Brainstorm工具包的所有文件,把这个文件夹放在某个路径如"E:\matlab_tools\brainstorm3"即可 同样在某个路径建立空的文件夹命名为:brainstorm_db用于工具包运行过程中自动存储生成的文件,所以这个文件中生成的数据不要手动移动删除 在Matlab中,把.

AxeChen的博客 6124

基于FastLIO2与TEB算法的机器狗自主导航系统实战

本文详细介绍了如何为机器狗构建一套基于FastLIO2与TEB算法的自主导航系统。通过整合FastLIO2激光惯性里程计实现精准定位,并采用TEB局部规划器进行灵活路径规划与动态避障,解决了传统方案在复杂地形下反应慢、易碰撞的问题。文章提供了从环境搭建、算法部署、地图转换到系统调试的完整实战指南,帮助开发者实现机器狗的稳健自主行走。

beer8的博客 320

sip中的DTMF

SIP DTMF SIP通常有三种支持DTMF的方式。 一种是带外(out of band),采用SIP的INFO消息。在这种情况下,DTMF数字如0,1,3等在SIP的INFO消息里携带。 一种是带内(in band),就是通过RTP中的Codec,例如G.711。SDP中Payload Type或者Codec的定义见RFC3551。 不是所有的Codec都能够携带DTMF。比如G.729,因为...

mtAsnow 2963

用STM32手搓一个体温计

市面上大多额温计、测温计精度。

m0_61687959的博客 2375

SDP: Session Description Protocol(会话描述协议) (RFC2327)

SDP: Session Description Protocol(会话描述协议) (RFC2327)

金石之言 2337

基于云平台的ATS系统微服务架构方案研究

在当前智慧地铁的升级转型过程中,城市轨道交通ATS系统面临着稳定性差、运维方 式繁琐和故障应急处理效率低等问题。为此,提出一种基于云平台的ATS系统微服务架构方案; 研究了ATS系统在云平台上的微服务总体架构、ATS应用的微服务划分和设计、容器部署方式 及通信交互模式,可实现系统松耦合和易扩展,达到节约计算资源、提高系统稳定性和运营效 率的目的

mi_lan1的博客 966

手把手教你学 Simulink (1.3)--Simulink 的模块库及其模块介绍

Simulink 提供了丰富的模块库,涵盖了从基本的信号生成和处理到复杂的数学运算和系统建模的各种功能。通过熟悉这些模块库及其模块,你可以更高效地构建和仿真动态系统。

MHD0815的博客 5150

SDP(Session Description Protocol)模型介绍

情态动词术语解释: "MUST",必须、一定要; "MUST NOT",禁止; "REQUIRED",需要; "SHALL"、"SHOULD",应该; "SHALL NOT"、"SHOULD NOT",不应该; "RECOMMENDED",推荐; "MAY",可以 以上情态动词术语可参考RFC2119[3],这些动词要求我们在产品实现时,需要遵守或灵活变更约束。   术语 媒

wangwenwen的专栏 1389

工业预测性维护实战:振动分析+Transformer预警系统构建指南

摘要:本文聚焦工业设备预测性维护难题,提出基于振动分析与Transformer模型的全栈解决方案。通过低成本硬件选型(单传感器¥380)实现设备振动信号实时采集,利用边缘计算单元完成特征工程(RMS、峰度、峰值频率提取),并在云端部署Transformer时序模型进行异常预警。某风电龙头企业实践显示,系统将故障误报率从38%降至6%,维护成本降低58%,非计划停机时长减少87%。文中提供完整的边缘端特征提取代码、云端模型架构及实施流程,适配ISO 13373振动分析标准,为制造业设备健康管理提供可复用的工程

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 625

翻译-pjsip开发者指南(十一)SDP协商框架

Chapter 11:SDP Offer/Answer Framework SDP offer/answer框架是基于 RFC 3264 “An Offer/Answer Model with the Session Descriptor Protocol (SDP)”。主要的作用是加速本地和远端的媒体协商,并且在一方的邀请会话中协商一组媒体。 注意尽管这个通常用于邀请会话,这个框架本省是基于...

chrycoder的博客 1889

【agent实战教程】OpenClaw多个agent一文通

一个合格的独立agent,必须具备6个完全独立的专属组件独立组件路径规则核心要求不独立的严重后果唯一agentId配置文件中全局唯一,不能重复,建议用英文+数字,不要有特殊字符agent配置冲突,消息派单错误,会话串线独立工作区(workspace)建议每个agent一个独立文件夹,不要共用人设、记忆、规则混在一起,agent人设崩塌,对话串线独立状态目录(agentDir)固定系统自动生成,绝对禁止多个agent复用同一个agentDir。

海兰 649

详解AUTOSAR:DaVinci Configurator导入ARXML配置(拓展篇—2)

DaVinci Configurator导入ARXML配置。

不脱发的程序猿 3331

SIP中的SDP offer/answer交换初探(转载)

1.引言 SDP的offer/answer模型本身独立与于使用它的高层协议。SIP是使用offer/answer模型的应用之一。RFC 3264 [3]定义了offer/answer模型,但没有规定使用那个SIP消息来携带一个offer或answer。这些被定义在SIP基本部分(RFC3261)及其扩展RFCs中。 理论上,任何SIP消息的正文中都可以包含会话描述部分。但是,一个SIP中的会话

liaoxinmeng的专栏 6287

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

pjsip如何发送媒体声音_完整SIP/SDP媒体协商概论-SDP协商模式详解-offer初始化流程...

​当我们讨论SIP或者SDP的一些技术话题时,SDP的协商是一个绕不过的话题。具体的协商机制涉及了多个方面的内容。在我们的讨论中,笔者将会针对两个比较重要的话题进行讨论,一个是SDP offer/answer 模式,另外一个是在NAT场景中的SDP offer/answer交互模式拓展-ICE。在本章节中,我们将首先讨论SDP offer/answer交互模式,具体内容包括:offer/answe...

weixin_39886469的博客 885

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

SDP offer-answer协商原则

规则1:初始Offer必须在INVITE消息或者第一个可靠的非失败型响应中。(理解:初始的Offer不能在Prack/Ack/Update中)规则2:如果初始Offer在INVITE消息中,Answer必须出现在一个可靠的非失败型响应中(补充:当可靠的1**响应和2**响应都携带了SDP,那么两者的SDP内容必须一致,且2**中的SDP被忽略)规则3:如果初始Offer出现在第一个可靠的非失败型响...

wangsiman的专栏 3042

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIP中的SDP offer/answer交换初探

转自:http://blog.sina.com.cn/s/blog_6b10255301012kqs.html 1.引言 SDP的offer/answer模型本身独立与于利用它的高层协议。SIP是使用offer/answer模型的应用之一。RFC3264 定义了offer/answer模型,但没有规定使用哪个SIP消息来携带一个offer或answer。 理论上,任何SIP消息的正文中都

u011493488的专栏 3262

基于SDP的提议/应答(offer/answer)模型简介

1、引入 在松耦合会议中,会话参数完全由会议创建者来确定,参与者能做的仅仅是根据这些会话参数来加入会议(当然也可以选择不加入)。这种情况下,主要要做的就是会话描述,在这里SDP本身就足够了。 但是在更为普遍的两方会话的情况下,由于用户终端能力的差异,任何一方不能假设对方一定支持某种会话参数,所以必须双方协商来最终就会话的参数达成一致。显然,SDP能做到准确的描述会话的参数,但是它缺少双发如何根

学习是为了探索这个世界的本质 1800

修正PJSIP挂不断电话的问题

A呼叫B的过程中,如果B已经接通了电话,但是200 ok还未回到A这方,但这时A挂断电话,会出现 一、A发送CANCEL到B。 二、A收到INVITE的200 ok,回复ACK,并将通话置为接通状态 三、B接收到CANCEL,回复200 ok,但接着不会发送487 (正常的CANCEL过程参考http://yeyingxian.blog.163.com/blog/static/344712

jindegegesun的专栏 3384

ROAP (RTCWeb Offer/Answer Protocol) 实时网页提议应答协议

ROAPROAP 协议 就是 RTCWeb Offer/Answer Protocol 实时网页提议应答协议 这是一个新协议, 目的是为了搭建媒体通道, 由思科,谷歌及Mozilla的几位工程师提出, 还在草案阶段, 并未正式发布.这本应该是 SIP(Session Initiation Protocol) 协议之所长, 为什么不是 SIP, 我想还是在于 SIP 太重了 WebRTC所提供的

温故而知新 3431

SDP: Session Description Protocol(会话描述协议)

转自:http://blog.youkuaiyun.com/ppcat_001/archive/2007/11/09/1876020.aspx(RFC2327)1.        概述SDP也是MMUSIC工作组的一个产品,在MBONE内容中用得很多。其目的就是在媒体会话中,传递媒体流信息,允许会话描述的接收者去参与会话。SDP基本上在internet上工作。他定义了绘画描述的统一格式,但并不定义多播地址

max123456的专栏 809

SDP详解

参考文章:https://www.cnblogs.com/yoyotl/p/5649648.html在SDP消息体最重要的是描述媒体信息:1 媒体类型(video, audio, bfcp,h225摄像机控制协议,etc)2 传输协议(RTP/UDP/IP, H.320, etc)3 媒体格式(G711,G721,AAC-LD,H.264 video, MPEG video, etc)4 多播或单...

wangsiman的专栏 1万+
上一篇: SDP offer-answer协商原则
下一篇: 关于SDP中协商SRTP加密信息
zoe_from_mars
博客等级 码龄19年 27粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值