[发明专利]用于SVC-DASH点播系统的动态缓存调度方法、设备及存储设备有效
申请号: | 201811063602.6 | 申请日: | 2018-09-12 |
公开(公告)号: | CN109121020B | 公开(公告)日: | 2020-01-17 |
发明(设计)人: | 余林琛;蒋宇浩;涂大喜 | 申请(专利权)人: | 中国地质大学(武汉) |
主分类号: | H04N21/845 | 分类号: | H04N21/845;H04N21/433;H04N21/4335;H04N21/24;H04N21/472;H04N21/262;H04N21/438;H04N21/238 |
代理公司: | 42238 武汉知产时代知识产权代理有限公司 | 代理人: | 孙妮 |
地址: | 430000 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态缓存 点播系统 调度 存储设备 平稳度 视频播放 流畅度 视频 调度设备 缓存空间 异构网络 用户观看 动态的 容错性 堆叠 点播 带宽 播放 网络 表现 | ||
1.用于SVC-DASH点播系统的动态缓存调度方法,其特征在于:包括以下步骤:
S101:获取SVC格式的视频源,将视频源均匀分离成n个视频分片;并根据视频源的质量层级,将每一个视频分片均匀分离成m个视频块,将每个视频分片的m个视频块堆叠成m层,并将所有视频块存储于服务器中;每一个视频块对应有一个分片号i和一个层序号j;其中,m和n均为大于等于1的整数;i的取值范围为[1,n],j的取值范围为[1,m];初始化i和j的值为1;
S102:初始化缓存区参数:设定缓存区高度Lmax的变化范围为[1,m],设定缓存区长度Bmax的变化范围为[min,max],缓存区的缓存面积是长度为Bmax,高度为Lmax的矩形区域;初始化Lmax的值为m,Bmax的值为max;将缓存区划分为Lmax*Bmax个存储块,这些存储块按照坐标[1,1]、[1,2]…[1,Bmax]、[2,1]…[2,Bmax]…[Lmax,Bmax]依序排列,用来存储所述视频块;其中,[1,1]、[2,1]…[Bmax,1]为缓存区第一层,[1,2]、[2,2]…[Bmax,2]为缓存区第二层,[1,j]、[2,j]…[Bmax,j]为缓存区第j层,[1,Lmax]、[2,Lmax]…[Bmax,Lmax]为缓存区第Lmax层;
S103:下载分片号为i,层序号为j的视频块到第一个空的存储块,
S104:完成所述视频块的下载后,更新缓存区缓存状态数据和平均网络带宽avgBW;所述缓存状态数据包括缓存区各层视频块的下载个数和缓存区中最新被下载的视频块的分片号;
S105:根据平均带宽avgBW调整缓存区高度Lmax;
S106:根据缓存状态数据调整缓存区长度Bmax;
S107:判断是否下载结束或者视频客户端被关闭;若是,则到步骤S109;若否,则到步骤S108;
S108:遍历缓存区的所有存储块,查找第一个空的存储块,根据缓存区缓存状态数据确定下一个被下载的视频块的分片号i和层序号j;返回到步骤S103;
S109:结束缓存程序,完成动态缓存调度;
在步骤S105中,根据平均网络带宽avgBW调整缓存区高度Lmax的具体步骤为:
S201:判断平均网络带宽avgBW是否大于等于第k-1层视频的码率Qk-1;若是,则缓存区高度Lmax的值为k;若否,则到步骤S202;其中,k为整数,取值范围为[1,m],且k的初始值取最大值m;
S202:将k更新为k-1,判断k是否为1;若是,则缓存区高度Lmax的值为1;若否,则返回步骤S201;
在步骤S106中,根据缓存状态数据调整缓存区长度Bmax的具体步骤为:
S301:判断条件Bmax>buffer_len1≥min与buffer_lenLmax<buffer_len1是否同时成立;若是,则将Bmax更新为Bmax-1;若否,则到步骤S302;其中,buffer_len1为缓存区中第1层视频块的下载个数,buffer_lenLmax为缓存区最高层视频块的下载个数;
S302:判断条件Bmax=buffer_len1<max与buffer_lenLmax=buffer_len1是否同时成立;若是,则将Bmax更新为Bmax+1;若否,则Bmax值不变;
在步骤S108中,根据第一个空的存储块确定下一个被下载的视频块的分片号i和层序号j的步骤为:
S401:判断缓存区是否有剩余存储块的层,从缓存区第一层开始判断,令判断层数p=1;
S402:判断p是否小于等于Lmax;若是,则到步骤S403;若否,则到步骤S406;
S403:判断缓存区中第p层是否有空余存储块;若是,则到步骤S405;若否,则到步骤S404;
S404:将p更新为p+1,返回步骤S402;
S405:将层序号j赋值为p,判断第p层是否有视频块;若是,则i等于第p层最新下载的视频块的分片号加1;若否,则i等于缓存区第1层第一个分片号;
S406:判断缓存区第一层的最后一个视频块的分片号是否为n;若是,结束下载;若否,则到步骤S407;
S407:将下载线程挂起,并设置i为缓存区第1层最后一个分片号的下一号,层序号j为1;循环判断缓存区是否出现空余存储块,一旦出现空余存储块,则继续下载;在缓存视频分片的同时,解码播放线程将持续从缓存区中取出视频分片至客户端进行解码播放,每当取走一个视频分片,缓存区中剩余的视频分片依次前移。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国地质大学(武汉),未经中国地质大学(武汉)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811063602.6/1.html,转载请声明来源钻瓜专利网。