简单的RTSP消息交互过程

C表示RTSP客户端,S表示RTSP服务端

1.   第一步:查询服务器端可用方法

1.C->S:OPTION request       //询问S有哪些方法可用

1.S->C:OPTION response    //S回应信息的public头字段中包括提供的所有可用方法

2.   第二步:得到媒体描述信息

2.C->S:DESCRIBE request      //要求得到S提供的媒体描述信息

2.S->C:DESCRIBE response    //S回应媒体描述信息,一般是sdp信息

3.   第三步:建立RTSP会话

3.C->S:SETUP request             //通过Transport头字段列出可接受的传输选项,请求S建立会话

3.S->C:SETUP response          //S建立会话,通过Transport头字段返回选择的具体转输选项,并返回建立的Session ID;

4.   第四步:请求开始传送数据

4.C->S:PLAY request        //C请求S开始发送数据

4.S->C:PLAY response            //S回应该请求的信息

5.   第五步: 数据传送播放中

S->C:发送流媒体数据    // 通过RTP协议传送数据

6.   第六步:关闭会话,退出

6.C->S:TEARDOWN request      //C请求关闭会话

6.S->C:TEARDOWN response //S回应该请求

上述的过程只是标准的、友好的rtsp流程,但实际的需求中并不一定按此过程。

其中第三和第四步是必需的!第一步,只要服务器客户端约定好,有哪些方法可用,则option请求可以不要。第二步,如果我们有其他途径得到媒体初始化描述信息(比如http请求等等),则我们也不需要通过rtsp中的describe请求来完成。

转:简单的RTSP消息交互过程的更多相关文章

  1. 简单的RTSP消息交互过程

    C表示RTSP客户端,S表示RTSP服务端 第一步:查询服务器端可用方法 1. C->S:OPTION request       //询问S有哪些方法可用 2. S->C:OPTION ...

  2. RTSP消息交互过程

    c表示客户端,s表示RTSP服务器端 第一步:查询服务器可用方法 1 c---s :OPTION request //查询s有哪些方法可用 s---c:OPTION response //s回应信息的 ...

  3. 老猿学5G:融合计费场景的Nchf_ConvergedCharging_Create、Update和Release融合计费消息交互过程

    ☞ ░ 前往老猿Python博文目录 ░ 一.Nchf_ConvergedCharging_Create交互过程 Nchf_ConvergedCharging_Create 服务为CTF向CHF请求提 ...

  4. HTTPS协议,SSL协议及完整交互过程

    文章转自 https://blog.csdn.net/dfsaggsd/article/details/50910999 SSL 1.        安全套接字(Secure Socket Layer ...

  5. Windows 应用程序交互过程

     应用程序 Windows的应用程序一般包含窗口(Window),它主要为用户提供一种可视化的交互方式(窗口是由线程(Thread)创建的).Windows 系统通过消息机制来让系统和用户进行交互 ...

  6. DHCP 协议及其交互过程

    1. DHCP用途简介: DHCP服务应用于大型局域网络中,使网络中的主机自动获取IP地址,网关,DNS服务器等信息,能够提升IP地址的利用率.一般情况下,我们的家用.公司.公共场合使用的路由器都具有 ...

  7. DHCP协议格式、DHCP服务搭建、DHCP协商交互过程入门学习

    相关学习资料 http://www.rfc-editor.org/rfc/rfc2131.txt http://baike.baidu.com/view/7992.htm?fromtitle=DHCP ...

  8. ASP.NET运行机制原理 ---浏览器与IIS的交互过程 自己学习 网上查了下别人写的总结的很好 就转过来了 和自己写的还好里嘻嘻

    一.浏览器和服务器的交互原理 (一).浏览器和服务器交互的简单描述: 1.通俗描述:我们平时通过浏览器来访问网站,其实就相当于你通过浏览器去访问一台电脑上访问文件一样,只不过浏览器的访问请求是由被访问 ...

  9. 运用socket实现简单的服务器客户端交互

    Socket解释: 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进程通信机制,取后一种意 ...

随机推荐

  1. LeetCode OJ--Swap Nodes in Pairs

    https://oj.leetcode.com/problems/swap-nodes-in-pairs/ 链表的处理 /** * Definition for singly-linked list. ...

  2. 【动态规划】bzoj1664 [Usaco2006 Open]County Fair Events 参加节日庆祝

    将区间按左端点排序. f(i)=max{f(j)+1}(p[j].x+p[j].y<=p[i].x && j<i) #include<cstdio> #incl ...

  3. nodejs:express 4.x

    最近学习express,最新的版本到了4.x,与之前的3.0版本相比,变化还是很大的.网上的教程很多都是基于3.0的,再编译一个例子的时候,吃了不少苦头.现总结一下express4.x的变化. 安装: ...

  4. 斯坦福第十四课:降维(Dimensionality Reduction)

    14.1  动机一:数据压缩 14.2  动机二:数据可视化 14.3  主成分分析问题 14.4  主成分分析算法 14.5  选择主成分的数量 14.6  重建的压缩表示 14.7  主成分分析法 ...

  5. Postman-简单使用

    Postman-简单使用 Postman-进阶使用 Postman-CI集成Jenkins Postman功能(https://www.getpostman.com/features) 主要用于模拟网 ...

  6. radio button(单选按钮)

    单选按钮只是input输入框的一种类型. 每一个单选按钮都应该嵌套在它自己的label(标签)元素中. 注意:所有关联的单选按钮应该使用相同的name属性. 下面是一个单选按钮的例子: <lab ...

  7. 调用数据库函数CallableStatement

  8. 拉格朗日乘子法和KKT条件

    拉格朗日乘子法(Lagrange Multiplier)和KKT(Karush-Kuhn-Tucker)条件是求解约束优化问题的重要方法,在有等式约束时使用拉格朗日乘子法,在有不等约束时使用KKT条件 ...

  9. GROUP BY,WHERE,HAVING之间的区别和用法

      GROUP BY,WHERE,HAVING之间的区别和用法 分类: Oracle学习2009-11-01 23:40 21963人阅读 评论(6) 收藏 举报 mathmanagersql数据库m ...

  10. 数据库知识整理<二>

    又继续写的博客,希望自己能坚持每天写博客.分享自己的点滴,对自己成长有帮助.今天下午高强度打了三个小时篮球,小腿都抽筋了.很爽,失落的心情似乎变得开明了一些.想到了一句话:“像SB式的坚持总会有好的收 ...