[发明专利]一种HLS信源一倍速发送控制方法有效
申请号: | 202011484180.7 | 申请日: | 2020-12-16 |
公开(公告)号: | CN112637694B | 公开(公告)日: | 2023-03-21 |
发明(设计)人: | 孙伟涛;徐扬法;车蓉 | 申请(专利权)人: | 杭州当虹科技股份有限公司 |
主分类号: | H04N21/845 | 分类号: | H04N21/845;H04N21/238;H04N21/2662;H04N21/2387;H04N21/2343 |
代理公司: | 杭州橙知果专利代理事务所(特殊普通合伙) 33261 | 代理人: | 杜放 |
地址: | 310000 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hls 信源 一倍速 发送 控制 方法 | ||
1.一种HLS信源一倍速发送控制方法,其特征是,具体包括如下步骤:
(1)经过HLS协议处理后,视频数据分为视频段ts文件和m3u8文件;
(2)下载m3u8文件,HLS的ts切片以本地时钟基准安装信源的PCR来发送以实现1倍速发送;下载m3u8文件的逻辑如下:
(21)开始时下载m3u8文件,判断是否已经有3个ts切片,如果有,则下载前两个切片进行缓冲;
(22)解析最后一个切片的EXTINF的duration,等待duration时长;
(23)等待到期后再次下载m3u8文件,如果下一个切片尚未生成,则等待时长设为1秒间隔,继续检查m3u8文件直到下一个切片生成;
(24)如果下一个切片生成,则下载当前切片,重复步骤(22);
其中,实现1倍速发送具体如下:基于PCR的速率控制器获取一个PCR间隔内的数据块,根据PCR间隔计算该间隔内数据的平均码率Rn,然后把数据以及平均码率Rn发送到环形缓冲区中,环形缓冲区内数据按PCR块管理,发送控制器把当前缓冲内PCR块内数据发送完成后取下一块,获得下一PCR块的数据以及发送码率,并以该PCR块的平均码率Rn发送这个块内的数据;
(3)调整信源时钟和本地时钟的偏差,最终按照信源时钟为基准1倍速发送;调整信源时钟和本地时钟的偏差具体如下:缓冲器内数据量使用总时长D来表示,精度间隔为PCR间隔,切片时长分析根据前一个切片第一个I帧PTS和当前切片的第一个I帧的PTS之间的差计算出切片总时长Dts,送到缓冲器内,在下载一个新的ts切片后缓冲器总时长需要加上切片总时长Dts,即更新缓冲器内数据总时长D = D + Dts;从缓冲器内读取数据的逻辑是消耗数据,由于一倍速控制过程中一次取一个PCR间隔内的数据,读取数据的每次时长为Dpcr,故而修改缓冲器内数据的总时长D = D – Dpcr;由于第1个切片的时长并无法获得,所以从第二个切片开始跟踪总时长D,切片更新会造成缓冲器内数据总时长的剧烈波动,跟踪新的切片放入缓冲器前的总时长,通过一个统计周期dur后,会得到统计周期内的累积偏差delta,意味着在统计周期dur时长内本地时钟与信源时钟相差delta,也就是单位时间内本地时钟相对信源时钟相差delta/dur,故而1倍速控制码率需要修正为Rdelta= R * ( 1+ delta/dur),R初始值为Rn。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州当虹科技股份有限公司,未经杭州当虹科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011484180.7/1.html,转载请声明来源钻瓜专利网。