的計(jì)數(shù)值;
[0136]第四控制模塊20,用于在該計(jì)數(shù)器的計(jì)數(shù)值為非零時(shí),控制計(jì)數(shù)器將計(jì)數(shù)值加I;
[0137]第五控制模塊21,用于重新獲取計(jì)數(shù)器的計(jì)數(shù)值,并在重新獲取的計(jì)數(shù)器的計(jì)數(shù)值大于預(yù)設(shè)的次數(shù)閥值時(shí),啟動(dòng)多線程加速下載模式,以從該網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。
[0138]該第三判斷模塊15判斷該緩存區(qū)中的數(shù)據(jù)量是否為零,如果該緩存區(qū)中的數(shù)據(jù)量為零,則說明當(dāng)前網(wǎng)絡(luò)狀態(tài)較差,該視頻數(shù)據(jù)加速下載裝置沒有從網(wǎng)絡(luò)媒體服務(wù)器中下載到一定數(shù)量的分片文件,使得當(dāng)網(wǎng)絡(luò)媒體客戶端向該視頻數(shù)據(jù)加速下載裝置請(qǐng)求分片文件時(shí),該視頻數(shù)據(jù)加速下載裝置無法為網(wǎng)絡(luò)媒體客戶端提供足夠的分片文件,將導(dǎo)致網(wǎng)絡(luò)媒體客戶端無法正常播放,出現(xiàn)卡頓現(xiàn)象。
[0139]該預(yù)設(shè)時(shí)間通常小于定時(shí)器的定時(shí)時(shí)長(zhǎng)。該第二獲取模塊16獲取視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給網(wǎng)絡(luò)媒體客戶端的分片文件的第一總時(shí)長(zhǎng),如該視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給網(wǎng)絡(luò)媒體客戶端的分片文件有5個(gè),每個(gè)分片文件的播放時(shí)長(zhǎng)為1s,則該第一總時(shí)長(zhǎng)為50s;如該視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給網(wǎng)絡(luò)媒體客戶端的分片文件為O個(gè),則第一總時(shí)長(zhǎng)為O。
[0140]該第三獲取模塊17獲取視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送第一個(gè)分片文件給網(wǎng)絡(luò)媒體客戶端的時(shí)刻,并根據(jù)當(dāng)前時(shí)刻,得到視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送第一分片文件到當(dāng)前時(shí)刻的間隔時(shí)間,即第二總時(shí)長(zhǎng)。
[0141]若該第二總時(shí)長(zhǎng)大于第一總時(shí)長(zhǎng),則說明網(wǎng)絡(luò)媒體客戶端出現(xiàn)了卡頓現(xiàn)象(可能是播放真的卡頓了,也可能是用戶暫停了網(wǎng)絡(luò)媒體客戶端播放,或其他情況)。該第三控制模塊18控制視頻數(shù)據(jù)加速下載裝置啟動(dòng)多線程加速下載模式,創(chuàng)建最大允許的任務(wù)個(gè)數(shù),以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。該第三第一控制模塊14還控制計(jì)數(shù)器將計(jì)數(shù)值加I,在初次啟動(dòng)定時(shí)器時(shí),該計(jì)數(shù)器的計(jì)數(shù)值為0,在循環(huán)啟動(dòng)定時(shí)器時(shí),該計(jì)數(shù)器的計(jì)數(shù)值根據(jù)實(shí)際情況保持或遞增。該計(jì)時(shí)器記錄網(wǎng)絡(luò)狀態(tài)較差的次數(shù)。
[0142]若該計(jì)數(shù)器的計(jì)數(shù)值為非零,則說明網(wǎng)絡(luò)媒體客戶端之前發(fā)生過卡頓現(xiàn)象,該第四控制模塊20控制計(jì)數(shù)值的計(jì)數(shù)值加I,即遞增網(wǎng)絡(luò)狀態(tài)較差的次數(shù)。
[0143]該次數(shù)閥值可根據(jù)需要設(shè)置,如設(shè)置為5次。在該重新獲取的計(jì)數(shù)值的計(jì)數(shù)值大于預(yù)設(shè)的次數(shù)閥值時(shí),則說明檢測(cè)到網(wǎng)絡(luò)媒體客戶端發(fā)生卡頓后又經(jīng)過數(shù)次循環(huán)定時(shí)器到時(shí),網(wǎng)絡(luò)媒體客戶端卻一直沒有接收到分片文件,則該第五控制模塊21控制視頻數(shù)據(jù)加載裝置啟動(dòng)多線程加載下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。
[0144]采用上述實(shí)施例,在緩存區(qū)的數(shù)據(jù)量為零時(shí),即該終端中未緩存到數(shù)據(jù),則根據(jù)終端在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給網(wǎng)絡(luò)媒體客戶端的分片文件的第一總時(shí)長(zhǎng)和計(jì)數(shù)器的計(jì)數(shù)值(表示網(wǎng)絡(luò)狀態(tài)較差的次數(shù))確定是否啟動(dòng)多線程加速下載模式,可更加準(zhǔn)確的確定啟動(dòng)多線程加速下載模式,以下載更多的HLS流媒體的分片文件。
[0145]以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,其特征在于,該方法包括: 在接收到網(wǎng)絡(luò)媒體客戶端發(fā)送的HLS流媒體的播放請(qǐng)求時(shí),循環(huán)啟動(dòng)定時(shí)器; 在定時(shí)器時(shí)間達(dá)到時(shí),判斷所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體是否下載完成; 若所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體未下載完成,則獲取緩存區(qū)中的數(shù)據(jù)量; 判斷所述數(shù)據(jù)量是否大于或等于第一預(yù)設(shè)閥值;以及 若所述數(shù)據(jù)量大于或等于第一預(yù)設(shè)閥值,則啟動(dòng)多線程加速下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。2.如權(quán)利要求1所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,其特征在于,所述啟動(dòng)多線程加速下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件的步驟包括: 判斷當(dāng)前是否通過非加速下載模式下載HLS流媒體的分片文件; 若當(dāng)前未通過非加速下載模式下載HLS流媒體的分片文件,則啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。3.如權(quán)利要求2所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,其特征在于,所述啟動(dòng)多線程加速下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件的步驟還包括: 若當(dāng)前通過非加速下載模式下載HLS流媒體的分片文件,則在非加速下載模式下載完成后且接收到所述網(wǎng)絡(luò)媒體客戶端發(fā)送的分片獲取請(qǐng)求時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。4.如權(quán)利要求1所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,其特征在于,所述判斷所述數(shù)據(jù)量是否大于或等于第一預(yù)設(shè)閥值的步驟之后,該方法還包括: 若所述數(shù)據(jù)量小于第一預(yù)設(shè)閥值,則判斷所述數(shù)據(jù)量是否為零; 若所述數(shù)據(jù)量為零,則獲取在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給所述網(wǎng)絡(luò)媒體客戶端的分片文件的第一總時(shí)長(zhǎng); 判斷所述第一總時(shí)長(zhǎng)是否為零; 若所述第一總時(shí)長(zhǎng)不為零,則獲取在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送第一個(gè)分片文件的時(shí)刻到當(dāng)前時(shí)刻之間的第二總時(shí)長(zhǎng); 若所述第二總時(shí)長(zhǎng)大于第一總時(shí)長(zhǎng),則啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件,并控制計(jì)數(shù)器將計(jì)數(shù)值加I。5.如權(quán)利要求4所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,其特征在于,所述判斷所述第一總時(shí)長(zhǎng)是否為零的步驟之后,該方法還包括: 若所述第一總時(shí)長(zhǎng)為零,則獲取計(jì)數(shù)器的計(jì)數(shù)值; 若所述計(jì)數(shù)器的計(jì)數(shù)值為非零,則控制計(jì)數(shù)器將計(jì)數(shù)值加I; 重新獲取計(jì)數(shù)器的計(jì)數(shù)值,并在重新獲取的計(jì)數(shù)器的計(jì)數(shù)值大于預(yù)設(shè)的次數(shù)閥值時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。6.一種基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置,其特征在于,該裝置包括: 啟動(dòng)模塊,用于在接收到網(wǎng)絡(luò)媒體客戶端發(fā)送的HLS流媒體的播放請(qǐng)求時(shí),循環(huán)啟動(dòng)定時(shí)器; 第一判斷模塊,用于在定時(shí)器時(shí)間達(dá)到時(shí),判斷所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體是否下載完成; 第一獲取模塊,用于在所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體未下載完成時(shí),獲取視頻數(shù)據(jù)加速下載裝置中的緩存區(qū)中的數(shù)據(jù)量; 第二判斷模塊,用于判斷所述數(shù)據(jù)量是否大于或等于第一預(yù)設(shè)閥值; 第一控制模塊,用于在所述數(shù)據(jù)量大于或等于第一預(yù)設(shè)閥值時(shí),啟動(dòng)多線程加速下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。7.如權(quán)利要求6所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置,其特征在于,所述第一控制模塊包括: 第一判斷單元,用于在所述數(shù)據(jù)量大于或等于第一預(yù)設(shè)閥值時(shí),判斷所述視頻數(shù)據(jù)加速下載裝置當(dāng)前是否通過非加速下載模式下載HLS流媒體的分片文件; 第一控制單元,用于在所述視頻數(shù)據(jù)加速下載裝置當(dāng)前未通過非加速下載模式下載HLS流媒體的分片文件時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。8.如權(quán)利要求7所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置,其特征在于,所述第一控制模塊還包括: 第二控制單元,用于在所述視頻數(shù)據(jù)加速下載裝置當(dāng)前通過非加速下載模式下載HLS流媒體的分片文件時(shí),則在非加速下載模式下載完成后且接收到所述網(wǎng)絡(luò)媒體客戶端發(fā)送的分片獲取請(qǐng)求時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。9.如權(quán)利要求1所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置,其特征在于,所述裝置還包括: 第三判斷模塊,用于在所述第二判斷模塊的判斷結(jié)果為所述數(shù)據(jù)量小于第一預(yù)設(shè)閥值時(shí),判斷所述數(shù)據(jù)量是否為零; 第二獲取模塊,用于在所述數(shù)據(jù)量為零時(shí),獲取所述視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送給所述網(wǎng)絡(luò)媒體客戶端的分片文件的第一總時(shí)長(zhǎng); 第三獲取模塊,用于在所述第一總時(shí)長(zhǎng)不為零時(shí),獲取所述視頻數(shù)據(jù)加速下載裝置在當(dāng)前時(shí)刻之前的預(yù)設(shè)時(shí)間內(nèi)發(fā)送第一個(gè)分片文件的時(shí)刻到當(dāng)前時(shí)刻之間的第二總時(shí)長(zhǎng);第三控制模塊,用于在所述第二總時(shí)長(zhǎng)大于第一總時(shí)長(zhǎng)時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件,并控制計(jì)數(shù)器將計(jì)數(shù)值加I。10.如權(quán)利要求9所述的基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置,其特征在于,所述裝置還包括: 第四獲取模塊,用于在所述第一總時(shí)長(zhǎng)為零時(shí),獲取計(jì)數(shù)器的計(jì)數(shù)值; 第四控制模塊,用于在所述計(jì)數(shù)器的計(jì)數(shù)值為非零時(shí),控制計(jì)數(shù)器將計(jì)數(shù)值加I; 第五控制模塊,用于重新獲取計(jì)數(shù)器的計(jì)數(shù)值,并在重新獲取的計(jì)數(shù)器的計(jì)數(shù)值大于預(yù)設(shè)的次數(shù)閥值時(shí),啟動(dòng)多線程加速下載模式,以從所述網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。
【專利摘要】本發(fā)明公開了一種基于HLS流媒體的視頻數(shù)據(jù)加速下載方法,該方法包括:在接收到網(wǎng)絡(luò)媒體客戶端發(fā)送的HLS流媒體的播放請(qǐng)求時(shí),循環(huán)啟動(dòng)定時(shí)器;在定時(shí)器時(shí)間達(dá)到時(shí),判斷所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體是否下載完成;若所述HLS流媒體的播放請(qǐng)求對(duì)應(yīng)的HLS流媒體未下載完成,則獲取緩存區(qū)中的數(shù)據(jù)量;判斷所述數(shù)據(jù)量是否大于或等于第一預(yù)設(shè)閥值;若所述數(shù)據(jù)量大于或等于第一預(yù)設(shè)閥值,則啟動(dòng)多線程加速下載模式,以從網(wǎng)絡(luò)媒體服務(wù)器中獲取HLS流媒體的分片文件。本發(fā)明還公開了一種基于HLS流媒體的視頻數(shù)據(jù)加速下載裝置。采用本發(fā)明,可減少網(wǎng)絡(luò)媒體客戶端出現(xiàn)播放異常的情況。
【IPC分類】H04N21/845, H04N21/643, H04N21/4335, H04N21/438, H04N21/239
【公開號(hào)】CN105611328
【申請(qǐng)?zhí)枴緾N201510991756
【發(fā)明人】王文標(biāo)
【申請(qǐng)人】深圳Tcl新技術(shù)有限公司
【公開日】2016年5月25日
【申請(qǐng)日】2015年12月25日