1.视频拉流协议
一、概述
设备---rtsp协议(发i帧为主是重要数据,p帧为辅有多种)/其它协议---合成H264流----播放工具解码播放(webrtc、rtmp、flv等)
https://blog.csdn.net/moyebaobei1/article/details/86703258
设备---APP(p2p打通设备发的是封装好的音频格式格式)
注:播放器需要播放时网络上的视频流时,首先经过解协议,解封装,解码视音频,视音频同步。如果播放本地文件则不需要解协议,为以下几个步骤:解封装,解码视音频,视音频同步。他们的过程如图所示:----这个是播放器有的能力
个人:流在网络中传输过程
协议传输:HTTP,RTMP,MMS,RTSP等协议传输----需要解这个协议
解封装:帧都封装成一定格式所以要解封装,分离成为音频流压缩编码数据和视频流压缩编码数据,封装格式种类很多,例如MP4,MKV,RMVB,TS,FLV,AVI等等,它的作用就是将已经压缩编码的视频数据和音频数据按照一定的格式放到一起
例如,FLV格式的数据,经过解封装操作后,输出H.264编码的视频码流和AAC编码的音频码流。
解码:就是将视频/音频压缩编码数据,解码成为非压缩的视频/音频原始数据。音频的压缩编码标准包含AAC,MP3,AC-3等等,视频的压缩编码标准则包含H.264,MPEG2,VC-1等等。解码是整个系统中最重要也是最复杂的一个环节。通过解码,
压缩编码的视频数据输出成为非压缩的颜色数据,例如YUV420P,RGB等等;压缩编码的音频数据输出成为非压缩的音频抽样数据,例如PCM数据
视音频同步的作用,就是根据解封装模块处理过程中获取到的参数信息,同步解码出来的视频和音频数据,并将视频音频数据送至系统的显卡和声卡播放出来。
二、过程
1、rtsp与rtmp的区别:
RTMP协议:
1、是流媒体协议
2、RTMP是Adobe的私有协议,没有完全公开
3、RTMP协议一般传输的是flv、f4v格式流
4、RTMP协议一般在TCP的一个通道传输命令和数据
RTSP协议:
1、是流媒体协议
2、RTSP协议是公有协议,有专门的机构维护
3、RTSP协议一般传输的是ts、mp4格式流
4、RTSP协议一般需要2-3个通道,命令和数据通道分离
视频流流程:
![](https://img2022.cnblogs.com/blog/2267268/202210/2267268-20221031172957660-373180448.png)
视频流协议及拉流方式
RTMP用的协议为rtmp://,RTSP用的协议为rtsp://,需要浏览器安装对应的插件(https://open-icc.dahuatech.com/download/plugins/v5.0.5/dhplayer/%E5%A4%A7%E5%8D%8E%E6%92%AD%E6%94%BE%E6%8E%A7%E4%BB%B6%E5%AF%B9%E6%8E%A5%E5%BC%80%E5%8F%91%E5%8C%85.zip),浏览器默认是http的
三、参考资料