rtmp支持h265推流
实现参考
- 金山云:https://github.com/CDN-Union/Code/tree/master/flv265-Kingsoft
- patch参考:https://github.com/CDN-Union/Code/blob/master/flv265-Kingsoft/flv265patch_from_kingsoft.7z
针对《video_file_format_spec_v10_1》 VIDEODATA部分扩展如下:
VIDEODATA
The VideoTagHeader contains video-specific metadata.
VideoTagHeader
Field | Type | Comment |
---|---|---|
Frame Type | UB [4] |
Frame Type Type of video frame. The following values are defined: 1 = key frame (for AVC and HEVC, a seekable frame) 2 = inter frame (for AVC and HEVC, a non-seekable frame) 3 = disposable inter frame (H.263 only) 4 = generated key frame (reserved for server use only) 5 = video info/command frame |
CodecID | UB [4] |
Codec Identifier. The following values are defined: 2 = Sorenson H.263 3 = Screen video 4 = On2 VP6 5 = On2 VP6 with alpha channel 6 = Screen video version 2 7 = AVC 12=HEVC |
HVCPacketType |
IF CodecID == 12 UI8 |
The following values are defined: 0 = HEVC sequence header 1 = HEVC NALU 2 = HEVC end of sequence (lower level NALU sequence ender is not required or supported |
CompositionTime |
IF CodecID==7 OR CodecID == 12 SI24 |
IF AVCPacketType == 1 OR HVCPacketType == 1 Composition time offset ELSE 0 See ISO 14496-12, 8.15.3 for an explanation of composition times. The offset in an FLV file is always in milliseconds. |
VideoTagBody |
IF FrameType == 5 UI8 ELSE ( IF CodecID == 2 H263VIDEOPACKET IF CodecID == 3 SCREENVIDEOPACKET IF CodecID == 4 VP6FLVVIDEOPACKET IF CodecID == 5 VP6FLVALPHAVIDEOPACKET IF CodecID == 6 SCREENV2VIDEOPACKET IF CodecID == 7 AVCVIDEOPACKET IF CodecID == 12 HVCVIDEOPACKET ) |
Video frame payload or frame info If FrameType == 5, instead of a video payload, the Video Data Body contains a UI8 with the following meaning: 0 = Start of client-side seeking video frame sequence 1 = End of client-side seeking video frame sequence For all but AVCVIDEOPACKET or HVCVIDEOPACKET, see the SWF File Format Specification for details |
rtmp支持h265推流相关推荐
- RTMP 直播 H265 推流适配总结
1.在iOS11的系统之上,苹果逐渐放开H265硬编硬解的能力,硬解码的能力只要升级到iOS11之后,iPhone6+以上的机型就支持了(印象中): H265硬编码的能力对设备要求较高,不仅要求系统版 ...
- LAL v0.35.4发布,OBS支持RTMP H265推流,我跟了
Go语言流媒体开源项目 LAL 今天发布了v0.35.4版本. LAL 项目地址:https://github.com/q191201771/lal 老规矩,简单介绍一下: ▦ 一. OBS支持RTM ...
- 如何让ffplay或者ffmpeg支持H265编码的rtmp/http-flv 实时直播流
很多初学者不知道ffplay或者ffmpeg是不支持flv封装的rtmp/http-flv流的,其原因是flv不支持H265编码payload的,因为当时制定flv封装协议的时候,H265还没出来,现 ...
- srs推flv流_srs流媒体服务器(simple rtmp server)如何支持h265
2020.4.24更新: 最新的srs代码已经支持hevc了,请直接阅读srs代码进行对接. 我在srs(1.0) 地址 (https://github.com/ossrs/srs)基础上加了点扩展, ...
- 多路HDMI编码转RTMP多平台推流直播导播方案
多路HDMI编码转RTMP多平台推流直播导播方案 今天我要给大家带来一个多路HDMI转RTMP多平台推流直播的方案,咱也不说这个方案是最优,但性能和稳定性却是响当当的好,该设备采用华为海思Hi3531 ...
- 软件_视频rtmp,rmvb,h265区别
原创博客地址: 软件_视频rtmp,rmvb,h265区别 h265,h264 视频压缩算法,原始视频是图片流,意味着[[r,g,b],[r,g,b],,]等等,极其占用空间,所以这种数据只能出现内存 ...
- librtmp h265 推流
h264和h265的区别: h264和H265总的来说格式是一样的,H265多了一个VPS. 在解码H264时,sps.pps是必须的.而在解码H265时,sps.vps.pps是必须的. //H26 ...
- 某学校监控教学RTMP多平台推流直播方案
某学校监控教学RTMP多平台推流直播方案 今天接到一个客户的需求,要求做一个学校教学的直播试点,萌生了我写这个方案的想法,下面先来看看这个学校的需求吧,希望也给其他学校提供借鉴. 客户的描述:&quo ...
- nginx-rtmp-ffmpeg-flv支持h265数据
关于flv支持H265数据的ffmpeg扩展 前言 最近做项目时遇到rtmp不支持发送H265数据的问题.查找了相关资料,做了如下整理.方便自己和他人学习. 关于rtmp为什么不支持H265数据,其原 ...
最新文章
- 窥见人工智能四十年 2019 CCF-GAIR全球人工智能与机器人峰会今日开幕
- 域socket(domain socket)和ipsocket(TCP/IP socket)区别
- c++ string 删除字符_算法笔记|(5)第二章C、C++的快速入门字符数组的存放方式string.h文件...
- 2014年职称计算机word2003,2014年职称计算机考试Word2003模拟题及答案5
- A. [2021.1.29多校省选模拟11]最大公约数(杜教筛/数论)
- YBTOJ:斐波拉契(矩阵快速幂)
- vue-resource
- java文件替换一行数据_用Golang替换文件中的一行
- 该放弃正在堕落的“RNN和LSTM”了
- 半年辞退30多个程序员,大厂“开猿节流”太狠了!
- Nginx 模块开发高级篇
- 不是纸上谈兵,VR原来真的可以缓解抑郁症
- PYTHON 笔记:函数的参数(关键字参数,默认参数,可变长参数,可变长的关键字参数)
- unity打包IOS填坑1
- ThoughtWorks 2018技术雷达峰会(6月2日@深圳)
- C语言动态规划——背包问题详解
- 如何让自己像打王者荣耀一样疯狂且不知疲倦地学习?
- 小米路由器R3G救砖TTL教程
- “应用程序配置不正确,应用程序未能启动” 错误的解决
- 物流行业中的常见术语(zt)
热门文章
- ai如何旋转画布_Illustrator让一个图形沿着某一点或顶点旋转复制教程
- 软件测试就业前景怎么样?
- Mybatis从零开始
- 学网页平面UI设计,我选择广州传智播客
- java后端扇形图实现
- 本地启动wss服务链接不成功原因
- SourceTree提交vue前端代码报错git -c diff.mnemonicprefix=false -c core.quotepath=false commit -q -F C:\Users\
- [global::]是什么形式?什么意思?
- 洛谷2448 无尽的生命[树状数组 离散化]
- 35岁以上高龄程序员,即将被裁员,该何去何从?