[發明專利]用于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.szxzyx.cn/pat/books/201811063602.6/1.html,轉載請聲明來源鉆瓜專利網。





