当前位置: 首页 > news >正文

RTSP 协议分析

RTSP 协议分析
1.概述:
 RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学、网景和RealNetworks公司提交的IETF RFC标准。该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。类似HTTP协议的流控制协议。它们都使用纯文本来发送信息,而且rtsp协议的语法也和HTTP类似,和HTTP协议相比RTSP协议所不同的地方是,RTSP协议是有状态的协议,而HTTP是无状态的协议。RTSP通过维护一个session来维护其状态的转换。RTSP协议的默认端口是554,默认的承载协议为TCP。

2.RTSP的特性:
(1).流控分离:从控制逻辑上来说RTSP和FTP相似,控制流和数据流是分开的。
(2).可扩展性:因为RTSP协议是基于文本的协议所以其具有较强的可扩展性。
(3).安全:RTSP 使用网页安全机制。

3.RTSP 协议格式:
请求命令的格式为:
METHOD URL CR LF
Field1:value CR LF
Field2:value CR LF
......
Fieldn:value CR LF
CR LF

应答的格式为:
RTSP/major_version.minor_version status CR LF
Field1:value CR LF
Field2:value CR LF
......
Fieldn:value CR LF
CR LF

4.RTSP的主要命令:

5.RTSP命令的状态转换表

6.RTSP状态码

Status-Code = "100" ; Continue
| "200" ; OK
| "201" ; Created
| "250" ; Low on Storage Space
| "300" ; Multiple Choices
| "301" ; Moved Permanently
| "302" ; Moved Temporarily
| "303" ; See Other
| "304" ; Not Modified
| "305" ; Use Proxy
| "400" ; Bad Request
| "401" ; Unauthorized
| "402" ; Payment Required
| "403" ; Forbidden
| "404" ; Not Found
| "405" ; Method Not Allowed
| "406" ; Not Acceptable
| "407" ; Proxy Authentication Required
| "408" ; Request Time-out
| "410" ; Gone
| "411" ; Length Required
| "412" ; Precondition Failed
| "413" ; Request Entity Too Large
| "414" ; Request-URI Too Large
| "415" ; Unsupported Media Type
| "451" ; Parameter Not Understood
| "452" ; Conference Not Found
| "453" ; Not Enough Bandwidth
| "454" ; Session Not Found
| "455" ; Method Not Valid in This State
| "456" ; Header Field Not Valid for Resource
| "457" ; Invalid Range
| "458" ; Parameter Is Read-Only
| "459" ; Aggregate operation not allowed
| "460" ; Only aggregate operation allowed
| "461" ; Unsupported transport
| "462" ; Destination unreachable
| "500" ; Internal Server Error
| "501" ; Not Implemented
| "502" ; Bad Gateway
| "503" ; Service Unavailable
| "504" ; Gateway Time-out
| "505" ; RTSP Version not supported
| "551" ; Option not supported
| extension-code
extension-code = 3DIGIT
Reason-Phrase = *<TEXT, excluding CR, LF

相关文章:

  • [个人]排错记
  • RTSP实例
  • HTTP Live Streaming直播(iOS直播)技术分析与实现
  • C修改文件内容
  • The One Foundation
  • valgrind详细说明
  • 微软(北京).NET俱乐部第十二次技术沙龙
  • Makefile与Shell脚本
  • 用SkinSB美化滚动条控件
  • Windows下Linux开发环境设置(一)--TFTP服务器设置和NFS服务器设置
  • Linux下ffmpeg添加 x265
  • 磁引导机器人系统申请了专利,聊以慰籍
  • 关于TCP的可靠性
  • 如何成长为技术合伙人?
  • 发现一个超酷的FireFox2.0插件,纪念一下
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Debian下无root权限使用Python访问Oracle
  • github指令
  • in typeof instanceof ===这些运算符有什么作用
  • JavaScript函数式编程(一)
  • Java读取Properties文件的六种方法
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Quartz初级教程
  • quasar-framework cnodejs社区
  • spring + angular 实现导出excel
  • 阿里云购买磁盘后挂载
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 关于字符编码你应该知道的事情
  • 利用DataURL技术在网页上显示图片
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 日剧·日综资源集合(建议收藏)
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 系统认识JavaScript正则表达式
  • 一个JAVA程序员成长之路分享
  • 自定义函数
  • No resource identifier found for attribute,RxJava之zip操作符
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • "无招胜有招"nbsp;史上最全的互…
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • #14vue3生成表单并跳转到外部地址的方式
  • (04)odoo视图操作
  • (7)STL算法之交换赋值
  • (zt)最盛行的警世狂言(爆笑)
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (实战篇)如何缓存数据
  • (四)JPA - JQPL 实现增删改查
  • (小白学Java)Java简介和基本配置
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • .net 后台导出excel ,word
  • @requestBody写与不写的情况
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [.net]官方水晶报表的使用以演示下载