[发明专利]一种基于帧定位技术的流媒体播放方法有效
申请号: | 201410066287.8 | 申请日: | 2014-02-26 |
公开(公告)号: | CN103780977B | 公开(公告)日: | 2019-01-01 |
发明(设计)人: | 张麒;时宜;涂岩恺;韦昌荣 | 申请(专利权)人: | 厦门雅迅网络股份有限公司 |
主分类号: | H04N21/8547 | 分类号: | H04N21/8547;H04N21/4405;H04N21/439 |
代理公司: | 厦门市精诚新创知识产权代理有限公司 35218 | 代理人: | 方惠春 |
地址: | 361000 福建*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 定位 技术 流媒体 播放 方法 | ||
1.一种基于帧定位技术的流媒体播放方法,其特征在于:包括以下步骤:
步骤1:编码器将原始编码视频数据流和原始编码音频数据流进行自定义格式封装后,分别生成自定义视频数据帧和自定义音频数据帧,并将该自定义视频数据帧和自定义音频数据帧存入磁盘介质,自定义视频数据帧定义为:将原始编码视频数据流增加13个字节,帧头增加5个字节和一个8字节时间戳,帧头5个字节分别为:0x00 0x00 0x00 0x01 0x00,自定义音频数据帧定义为:将原始音频数据帧增加四字节的帧头和八个字节帧尾,四字节帧头为:0x00、0x01、0x3c和0x00,八字节帧尾为八字节时间戳;
步骤2:读入器从磁盘介质读取所述自定义视频数据帧和自定义音频数据帧;
步骤3:判断读入器缓存一定数据量是否就绪,若是则执行步骤4,否则返回执行步骤1;
步骤4:解码器从读入器输出端获取到自定义视频数据帧和自定义音频数据帧,解码器将所述自定义音频数据帧去除帧头或帧尾得到音频数据帧,再将音频数据帧进行音频解码,得到音频解码数据帧,同时解码器从自定义音频数据帧的帧尾获取时间戳、音频解码数据帧的帧长、音频解码数据帧帧号信息;解码器将所述自定义视频数据帧去除帧头,再将视频帧进行视频解码,得到视频解码数据帧,同时解码器从自定义视频数据帧的帧头获取时间戳、视频解码数据帧的帧长,视频解码数据帧的视频分辨率信息;
步骤5:解码器将音频解码数据帧和视频解码数据帧的帧号、以及音频解码数据帧发送给缓存器,同时,解码器将音频解码数据帧和视频解码数据帧的帧号、时间戳、音频解码数据帧的帧长、视频分辨率发送给控制器;通过实时采集帧号和时间戳,控制器维护音频解码数据帧和视频解码数据帧的两张“帧号-时间戳”表,“帧号-时间戳”表包括两个字段,帧号和时间戳;视频解码数据帧每间隔10帧把帧号及时间戳取出来组成一条记录写入表格,音频解码数据帧每隔2帧把帧号及时间戳取出来组成一条记录写入表格;
步骤6:缓存器根据音频解码数据帧号依序分别将音频解码数据帧缓存进缓存器中,同时,缓存器根据视频解码数据帧的帧号依序分别将视频解码数据帧缓存进缓存器中,控制器根据“帧号-时间戳”表的映射关系,更新播放最后一帧的时间,该控制器还将音频解码数据帧和视频解码数据帧的最后缓存(写入)的帧号发送给播放器;
步骤7:控制器更新播放开始时间T0,具体为:控制器将解码器输出的第一帧音频解码数据帧作为起始时间,将最近一次输出的音频帧作为结束时间,取本地系统时间作为绝对时间,按每秒特定帧数,将当前音频和视频解码数据帧的帧号发送至播放器;
步骤8:播放器根据音频解码数据帧的帧号及时从缓存器获取音频解码数据帧,并播放音频解码数据帧,同时,播放器根据视频解码数据帧的帧号及时从缓存器获取视频解码数据帧,并播放视频解码数据帧;
步骤9:控制器每间隔△T秒采用视频同步音频方法进行音视频同步,所述△T秒为15-30秒(s);
步骤10:控制器判断是否收到用户输入的时间点;若是,则返回执行步骤7,否则执行步骤11;
步骤11:判断用户请求是否结束,或判断该缓存器是否返回最后一帧数据,若是则播放结束,否则返回步骤8。
2.根据权利要求1所述的一种基于帧定位技术的流媒体播放方法,其特征在于:所述步骤6具体为:缓存器把解码后输出的音频解码数据帧和视频解码数据帧,独立存储在连续的地址空间,由于解码后的音频解码数据帧和视频解码数据帧均为等长,其中,第一帧的帧号为1,帧号从1开始加一递增编号,依序计算得到每帧在地址空间内的偏移量:帧偏移=音/视频解码数据帧帧长×帧号。
3.根据权利要求1所述的一种基于帧定位技术的流媒体播放方法,其特征在于:所述步骤9具体为:播放器从起始时间开始连续播放音视频,控制器定时检查当前音频播放从开始时间到目前的偏移值,所述偏移值为当前帧的时间戳与开始时间的差值,将该音频时间值作为同步时间值。
4.根据权利要求1所述的一种基于帧定位技术的流媒体播放方法,其特征在于:所述步骤10具体为:用户输入时间点进行定位请求,控制器计算得到从起始时间到输入时间点的偏移时间值,获取播放音视频帧的帧号,然后按步骤7到步骤9进行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门雅迅网络股份有限公司,未经厦门雅迅网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410066287.8/1.html,转载请声明来源钻瓜专利网。