[发明专利]一种H264帧中提取SPS和PPS的方法及装置在审
申请号: | 201510197273.4 | 申请日: | 2015-04-23 |
公开(公告)号: | CN104796765A | 公开(公告)日: | 2015-07-22 |
发明(设计)人: | 张金良 | 申请(专利权)人: | 天脉聚源(北京)教育科技有限公司 |
主分类号: | H04N21/44 | 分类号: | H04N21/44;H04N21/84 |
代理公司: | 北京尚伦律师事务所 11477 | 代理人: | 张亮 |
地址: | 100007 北京市东城*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 h264 提取 sps pps 方法 装置 | ||
技术领域
本发明涉及视频技术领域,特别涉及一种H264帧中提取SPS和PPS的方法及装置。
背景技术
随着互联网技术的发展,互联网应用越来越多,形式也越来越多样化。由于远程教学具有方便快捷、费用低廉等特点,越来越受到广大师生的喜爱,通过互联网,学生可以方便的获取教学资料进行学习。为了提高远程教学互动性,目前师生间常采用视频和语音方式在互联网上进行交流。如学生端与教师端建立连接后,学生端开启摄像头录制视频,并实时上传给教师端。但是由于是直接传输视频流,而不是视频文件,所以没有文件头,也就没有视频的描述信息。教师端在没有描述信息的情况下是无法对视频进行解码和播放的。故为了使教师端能对视频进行解码和播放,必须在发送视频之前,将视频描述信息发送给教师端,以使教师端更够根据该视频描述信息生成视频的文件头,从而达到正常播放视频的目的。另外由于H264具有很高的数据压缩比,在网络传输过程中所要带宽更少,故广泛的用于网络视频传输。
综上所述,急需一种从H264帧中提取视频描述信息的方法,在发送视频之前,将视频描述信息发送给远程教学对端,从而达到对端能正常播放视频的目的。
发明内容
本发明提供一种H264帧中提取SPS和PPS的方法及装置,用以在发送视频之前,将视频描述信息发送给远程教学对端,从而实现对端能正常播放视频的目的。
本发明提供一种H264帧中提取SPS和PPS的方法,包括:
从H264帧开始位置开始,根据同步码确定NAL单元的数目N及每个NAL单元开始位置;
根据每个NAL单元开始位置,遍历N个NAL单元的NAL头;
根据NAL单元的NAL头信息,定位序列参数集SPS和图像参数集PPS的NAL单元的位置;
根据SPS和PPS的NAL单元的位置,将SPS和PPS数据分别保存在第一缓存、第二缓存中。
本发明实施例的一些有益效果可以包括:
根据H264帧结构,从该帧中提取出视频的描述信息SPS和PPS数据,并在传输视频流数据到远程教学的对端前,将该视频描述信息发送给对端,对端根据收到的视频描述信息,从而可以正常的播放接收到的视频流数据。
在一个实施例中,所述同步码为4字节的0x00 00 00 01。
该实施例中,通过简单的查找H264帧中的同步码0x00 00 00 01,即可以定位到每个NAL单元的位置信息,然后根据NAL单元的NAL头信息,获取SPS和PPS数据并保存,待传输给远程教学的对端。
在一个实施例中,所述根据NAL单元的NAL头信息,定位SPS的NAL单元的位置的方法为:判断当前NAL头是否为0x67,是则该NAL单元为SPS的NAL单元,并记录该NAL单元的位置为SPS的NAL单元的位置;否则不是SPS的NAL单元。
该实施例中,因为SPS的NAL单元的NAL头为0x67,因此,若NAL单元的NAL头为0x67,则该NAL单元为SPS的NAL单元。从而达到获取SPS数据的目的。
在一个实施例中,所述根据NAL单元的NAL头信息,定位PPS的NAL单元的位置的方法为:判断当前NAL头是否为0x68,是则该NAL单元为PPS的NAL单元,并记录该NAL单元的位置为PPS的NAL单元的位置;否则不是PPS的NAL单元。
该实施例中,因为PPS的NAL单元的NAL头为0x68,因此,若NAL单元的NAL头为0x68,则该NAL单元为PPS的NAL单元。从而达到获取PPS数据的目的。
本发明还提供一种H264帧中提取SPS和PPS的装置,包括:NAL单元信息获取模块、NAL头获取模块、位置获取模块和保存模块;
所述NAL单元信息获取模块,用于从H264帧开始位置开始,根据同步码确定NAL单元的数目N及每个NAL单元开始位置,并将信息发送给所述NAL头获取模块;
所述NAL头获取模块,用于接收所述NAL单元信息获取模块发来的NAL单元的数目N及每个NAL单元开始位置,并根据每个NAL单元开始位置,遍历N个NAL单元的NAL头,并将NAL头信息发送给所述位置获取模块;
所述位置获取模块,用于接收所述NAL头获取模块发来的NAL头信息,定位SPS和PPS的NAL单元的位置,并将该信息发送给所述保存模块;
所述保存模块,用于根据SPS和PPS的NAL单元的位置,将SPS和PPS数据分别保存在第一缓存、第二缓存中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天脉聚源(北京)教育科技有限公司,未经天脉聚源(北京)教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510197273.4/2.html,转载请声明来源钻瓜专利网。