如何支持RTSP播放H.265(HEVC)流

随着H.265的普及,越来越多的开发者希望大牛直播SDK能支持低延迟的RTSP H.265播放,并分享相关经验:

实现思路:

对rtsp来说,要播放h265只要正确解析sdp和rtp包即可. 下面对这些相关内容做一些介绍.

1. H265 Nal Unit Header 简单介绍:

H264的Nal Unit头是一个字节,265变成两个字节:

?
F: 1 bit. forbidden_zero_bit. 265要求是0,是1的话指示语法违规等.

Type: 6 bits. Nal类型. vps是32, sps是33, pps是34, 前缀sei是39. IDR是19和20.

LayerId: 6 bits. nuh_layer_id. 现在是0,将来可能扩展用.

TID: 3 bits. nuh_temporal_id_plus1. TemporalId 是TID-1.

2. SDP 参数介绍:

2.1 IETF 分配给h265的媒体子类型如下:
Type name: video
Subtype name: H265
可选参数: 
profile-space, tier-flag, profile-id, profile-compatibility-indicator, interop-constraints,level-id,
sprop-sub-layer-id, recv-sub-layer-id, max-recv-level-id, tx-mode, sprop-vps, sprop-sps, sprop-pps等等, 具体请参考相关
文档,建议解析sprop-vps, sprop-sps, sprop-pps.

2.2 SDP 举例:
m=video 0 RTP/AVP 96
a=rtpmap:96 H265/90000
a=fmtp:96 profile-space=0;profile-id=0;tier-flag=0;level-id=0;interop-constraints=000000000000;sprop-vps=QAEMAf//AIAAAAMAAAMAAAMAAAMAALUCQA==;sprop-sps=QgEBAIAAAAMAAAMAAAMAAAMAAKACgIAtH+W1kkbQzkkktySqSfKSyA==;sprop-pps=RAHBpVgeSA==
注意编码名称必须是:H265, Clock reate必须是90000.

3. RTP 打包格式

实际中其实就用到两种格式,一种是一个nal单元打包到一个rtp包中。一种是nal单元比较大,分片打包在多个rtp中??

PayloadHdr 把 NAL单元头填入就好.

3.2 Nal单元分片打包:

?PayloadHdr还是拷贝NAL单元头,但是要把Type换成49. FU header 就一个字节,格式如下:

+---------------+
|0|1|2|3|4|5|6|7|
+-+-+-+-+-+-+-+-+
|S|E| FuType |
+---------------+

S:为1表示第一个分片。 E:为1表示表示最后一个分片。FuType就是实际的Nal type类型。

4. 小结:

h265很多和h264相似之处,都有sps和pps,用00 00 00 01进行nal 单元分隔。

相关资料分享:RTP Payload Format for HEVC:http://pike.lysator.liu.se/docs/ietf/rfc/77/rfc7798.xml

原文地址:https://www.cnblogs.com/daniulivesdk/p/10957173.html

时间: 2024-10-11 05:58:24

如何支持RTSP播放H.265(HEVC)流的相关文章

高清时代4K H.265/HEVC来临---OTT/IPTV直播系统大发展

近几年网络电视盒子业务大爆发.乐视.小米.天猫甚至阿里云都有网络电视小盒子的产品.提起这个行业,那么这个词OTT-TV或IPTV对于我们来说是不陌生的. 今天我们不细说OTT-TV和IPTV有什么区别.两个词求同存异,对于入户家庭来说,没有太大本质的区别,都是可以看电视的网络盒子. 除了OTT/IPTV这样的词,似乎目前在互联网电视业务提到H.265还不多.H.265是全新的视频标准.H.265相对H.264,相同画质不仅体积更小,而且传输更快,画质优化也更佳.大众目前对视觉享受要求越来越高,那

干货:如何实现RTSP推送H.264、RTSP推送H.265(hevc)

rtsp推送相关的资料和测试软件比较少,本文介绍rtsp推送相关信令和测试效果: 1. rtsp推送流程. 主要分两部分:第一部分先发送信令:第二部分发送rtp包. ?信令流程: ?1.1?先发送OPTIONS, OPTIONS比较常用,就不做详细说明了. 1.2 发送ANNOUNCE, 发送ANNOUNCE主要是把要推送的音视频信息通过sdp格式传给服务器.关于sdp信息如何构造,对于h264请参考rfc6184. h265请参考rfc7798. 下面举两个例子. h264+aac ANNOU

支持8K播放且低延时高并发全功能的流媒体播放器EasyPlayerPro如何播放H.265视频?

需求分析 一般对于一个播放器,应该支持如下几种显示模式: 等比例,最大化区域显示,不裁剪 等比例,最大区域显示,裁剪 拉伸显示,铺满全屏 要实现这几种显示模式.其实只要对播放控件的布局进行些许调整即可. 那EasyPlayer是怎么实现的呢?EasyPlayerPro是一款全功能的流媒体播放器,支持RTSP.RTMP.HTTP.HLS.UDP.RTP.File等多种流媒体协议播放.支持本地文件播放,支持本地抓拍.本地录像.播放旋转.多屏播放.倍数播放等多种功能特性,核心基于ffmpeg,稳定.高

H.265:网络视频的4K超高清时代,网络高清智能播放器的春天。方小盒M8

前年,爱立信公司推出了首款H.265编解码器,而在仅仅六个月之后,国际电联(ITU)就正式批准通过了HEVC/H.265标准,标准全称为高效视频编码(High Efficiency Video Coding),相较于目前的H.264标准有了相当大的改善.H.265旨在在有限带宽下传输更高质量的网络视频,仅需原先的一半带宽,即可播放相同质量的视频.这也意味着我们的移动设备(手机.平板电脑)将能够直接在线播放全高清(1080P)视频.而H.265标准也同时支持4K(4096×2160)和8K(819

vlc源码分析(六) 调用OpenMAX硬解码H.265

http://www.cnblogs.com/jiayayao/p/6964506.html H.265(HEVC)编码格式能够在得到相同编码质量视频的前提下,使用相当于H.264(AVC)一半的存储容量,虽然H.265的算法复杂度比H.264高一个数量级,但是硬件水平在不断提高,因此H.265使用场合逐渐多了起来.好多硬件厂商芯片内部实现了H.265的硬解码.最近调试了vlc-android调用OpenMAX硬解码H.265的部分,使用的硬件平台是ZX-2000,系统是Android5.1.

转 搞懂硬解H.265和软解H.265的区别

相信很多人对于"H.265"这一名词既熟悉又陌生,熟悉的是其大名早已如雷贯耳,大家都知道其比H.264先进(因为H.265是H.264进化而来),而说到陌生则是其主要优势在于哪里大家就不得而知了,随着盒子交战大军的大战爆发,H.265几乎成为了盒子标配,不具备硬解H.265编码.或者支持软解H.265编码的盒子将会被淘汰.下面和大家详细道来H.265的"前世今生". 关于H.265 H.265是ITU-T VCEG 继H.264之后所制定的新的视频编码标准.H.26

最简单的视频编码器:基于libx265(编码YUV为H.265)

本文记录一个最简单的基于libx265的H.265(HEVC)视频编码器.此前记录的编码器是通过FFmpeg调用libx265完成编码的,例如: <最简单的基于FFmpeg的视频编码器-更新版(YUV编码为HEVC(H.265))> 相比与上文中的编码器,本文记录的编码器属于"轻量级"的编码器.因为它不再包含FFmpeg的代码,直接调用libx265完成编码.因此项目的体积非常小巧.该编码器可以将输入的YUV数据编码为H.265码流文件. 流程图 调用libx265进行视频

Html5 &lt;video&gt;实现摄像头监控问题:html5并不支持rtsp协议,所以使用vlc进行转码,将rtsp转http流,这样&lt;video&gt;才可以直接播放

今天在写html5中播放旷视C2摄像头视频监控的功能,查了很多资料,才发现Html5 <video>并不支持rtsp协议.后来查到使用第三方转码才得以实现. 这里把方法写下来分享给大家. 首先要获取摄像机品牌的RTSP地址: 如大华的是 rtsp://user:[email protected]:port/cam/ realmonitor?channel=1&subtype=0 海康的是 rtsp://user:[email protected]:port/MPEG-4/ch1/mai

智勇电子最新H.265支持SRT协议编码器ZY-EDHV201发布

智勇电子最新H.265同编同解编码器ZY-EDHC201全新发布,该产品能同时提供高清视频的编码.解码服务.支持HDMI或VGA高清视频输入输出,采用嵌入式操作系统.H.265/H.264/JPEG视频压缩技术, 支持SRT.RTSP.RTMP.Http.Onvif.UDP/ Multicast等网络传输功能.具备稳定可靠.功能强大.组网灵活.拓展性强等特点,低功耗.无风扇结构设计,编码.解码一体设计,体积小,使用灵活,方便安装. [主要特征] ? 编解码一体集成设计,支持同时1路1080p60