流媒体协议——RTSP

RTSP

RTSP(Real Time Streaming Protocol):实时流媒体协议,是基于文本的协议,采用ISO10646字符集,使用UTF-8编码

RTSP-over-TCP,默认端口554

RTSP-over-HTTP,默认端口为8080

RTSP OVER WebSocket 默认端口为 80(非加密)/ 443(加密)

实时流数据由传输协议RTP/RTCP完成数据流和控制命令,传输层可以为UDP或者TCP

RTSP拉流交互

options(可选,可作为心跳使用) 询问流媒体服务器可用的RTSP方法

describe 从服务器获取媒体流相关信息,可以包含多个媒体流类型,此处服务器一般会进行用户鉴权

setup 建立媒体流链接会话

RTP/AVP表示通过UDP,unicast表示单播方式

RTP和RTCP要成对出现,一般码流端口号为RTCP=RTP+1

RTP/AVP/TCP表示通过TCP

interleaved=0-1,标识RTP的streamid=0,RTCP的streamid=1

当码流通过TCP传输时,与RTSP共用一个TCP链路,不需要建立新的连接,为了区分需要增加包头标识

| magic number | channel number | embedded data length | data |

magic number 0x24,收到0x24时,可以判定其为RTP或者RTCP

play 开始传输或者接受媒体数据

play消息会在range中指定媒体的播放时间,实时流Range: npt=0.000,scale和speed字段用于点播速度控制

teardown 停止媒体,释放资源

RTSP推流交互

options (可选,可作为心跳使用) 询问流媒体服务器可用的RTSP方法

announce 通知新会话描述

setup 建立媒体流链接会话

record 开始流媒体录制

pause 暂停流媒体传输

teardown 停止媒体,释放资源

相关推荐
音视频牛哥2 天前
Unity实现高性能多实例RTSP|RTMP播放器技术实践
unity·游戏引擎·音视频·实时音视频·大牛直播sdk·rtsp播放器·rtsp player
EasyNVR2 天前
EasyRTC智能硬件:小体积,大能量,开启音视频互动新体验
前端·安全·音视频·webrtc·sdk·p2p·智能硬件
科技小E3 天前
WebRTC与EasyRTC:开启智能硬件音视频通讯的全新旅程
网络·网络协议·音视频·webrtc·p2p·视频监控
嵌入式小能手3 天前
开发板适配之I2C-RTC
实时音视频
Likeadust3 天前
EasyRTC视频通话WebP2P技术:轻量化SDK助力嵌入式设备实时音视频通信
音视频·实时音视频·p2p
cyw89983 天前
vue3读取webrtc-stream 视频流
webrtc
LaoZhangGong1233 天前
了解rtc_time64_to_tm()和rtc_tm_to_time64()
linux·c语言·经验分享·单片机·嵌入式硬件·实时音视频
wenchm3 天前
细说STM32F407单片机RTC的基本原理及闹钟和周期唤醒功能的使用方法
stm32·单片机·实时音视频
Likeadust4 天前
WebP2P+自研回音消除:视频通话SDK嵌入式EasyRTC构建高交互性音视频应用
音视频·webrtc·p2p·webp2p
EasyGBS5 天前
EasyRTC嵌入式WebRTC视频通话SDK支持Web浏览器、Linux、ARM、Android、iOS
arm开发·音视频·webrtc·webp2p