海康威视监控下载下来的mp4格式的视频,小类别MPEG
海康下载视频格式:用mediainfo查看 普通mp4格式用mediainfo查看 **
视频流中ES,PES,PS,TS,RTP概念说明ES:又称为原始流,直接从编码器出来,可以是编码过的H264,MJPEG,音频AAC,音频G711等。ES只包含一种内容的视频,如只含视频或者只含音频。
PES: ES流经PES打包器形成,将ES流分组,打包,加入包头。PES包由包头和payload组成。PES包是PES流的基本单位。 PTS(Decoding Time Stamp)/DTS(Presentation Time Stamp):打在PES包的包头里面,用于表示时间,是音视频同步的关键。在ffmpeg中,PTS表示显示的时间,DTS表示的是解码的时间。同时,用ffmpeg处理的时候PTS必须大于或等于DTS,否则会返回-22的错误。
PS(节目流):由PS组成,而一个PS包又由若干个PES包组成,到这里,ES经过了两层的封装。PS包头包含了同步信息与时钟恢复信息。 关于PS流的具体格式以及具体分析可以参考博客:作者写的很好,我看的时候和我获取的海康的PS流有一些出入,但大体上都差不多https://blog.csdn.net/chen495810242/article/details/39207305
**TS(传输流)?*由定长的TS包包组成(188字节),而TS包是对PES包的一个重新封装(到这里,ES也经过了两层封装)。TS流较PS流的优势是信息丢失情况更好。TS包中的数据可以是视频数据,音频数据,填充数据,PSI/SI表格数据等。
**RTP(实时传输协议):**是一种针对互联网上多媒体码流的传输协议。RTP协议时长用于互联网点播,视频会议,视频监控等应用。RTP使用的包为RTP包,作用域传输层。 其他人给出的方案: 1、需要海康编解码库。
2、直接用 url 拉取 h264,用 ffmpeg 转成 MP4 封装就行了。
微信浏览器不能播放mp4视频的问题H.264有四种画质级别,分别是baseline, extended, main, high: 1、Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC; 2、Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支持无交错(Progressive)和CAVLC;(用的少) 3、Main profile:主流画质。提供I/P/B 帧,支持无交错(Progressive)和交错(Interlaced), 也支持CAVLC 和CABAC 的支持; 4、High profile:高级画质。在main Profile 的基础上增加了8x8内部预测、自定义量化、 无损视频编码和