單分片視頻播放加速方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)流媒體傳輸技術(shù)領(lǐng)域,尤其涉及一種單分片視頻播放加速方法及
目.ο
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)視頻點(diǎn)播逐漸成為當(dāng)前最熱門的互聯(lián)網(wǎng)應(yīng)用之一。目前網(wǎng)絡(luò)上支持網(wǎng)絡(luò)點(diǎn)播的網(wǎng)絡(luò)播放器(即播放端)有多種,如愛(ài)奇藝、騰訊、樂(lè)視、芒果TV等,這些網(wǎng)絡(luò)播放器通過(guò)與其對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)器(即服務(wù)器端)配合而完成視頻點(diǎn)播。
[0003]在視頻點(diǎn)播過(guò)程中,碼流(即視頻數(shù)據(jù))的下載往往采用多任務(wù)下載方式進(jìn)行處理,以達(dá)到加速下載、流暢播放視頻的目的,其中該多任務(wù)下載是指將要下載的目標(biāo)數(shù)據(jù)分段,然后用多個(gè)下載任務(wù)同時(shí)下載這些數(shù)據(jù),最后將下載的數(shù)據(jù)拼湊成目標(biāo)數(shù)據(jù)。對(duì)于視頻點(diǎn)播,在服務(wù)器端,根據(jù)目標(biāo)視頻文件是否做切片,將目標(biāo)視頻文件分為單分片和多分片兩種方式。
[0004]目前,只存在多分片目標(biāo)視頻文件的播放加速方案,即服務(wù)器端將目標(biāo)視頻文件切割成一個(gè)個(gè)的小塊,每個(gè)小塊為一個(gè)獨(dú)立的分段,擁有自己的鏈接地址,一個(gè)目標(biāo)視頻的所有分段鏈接地址按順序存儲(chǔ)在一個(gè)m3u8格式的文件里。播放端在播放多分片目標(biāo)視頻文件時(shí),先獲取m3u8個(gè)數(shù)的文件并將所有的鏈接地址解析出來(lái),然后啟動(dòng)多任務(wù)下載并緩存目標(biāo)視頻文件以供播放端調(diào)用播放,其中每個(gè)任務(wù)對(duì)應(yīng)一個(gè)小塊;而不存在關(guān)于單分片目標(biāo)視頻文件的播放加速方案。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的主要目的在于提供一種單分片視頻播放加速方法及裝置,旨在解決不存在關(guān)于單分片目標(biāo)視頻文件播放加速方案的技術(shù)問(wèn)題。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種單分片視頻播放加速方法,所述單分片視頻播放加速方法包括:
[0007]當(dāng)截獲到播放端發(fā)送至服務(wù)器端的用于請(qǐng)求播放目的單分片視頻的視頻播放請(qǐng)求時(shí),獲取該視頻播放請(qǐng)求中請(qǐng)求播放該目的單分片視頻的第一請(qǐng)求時(shí)間點(diǎn)和請(qǐng)求播放數(shù)據(jù)分段的段數(shù)據(jù)長(zhǎng)度;
[0008]從所述服務(wù)器的目的單分片視頻的第一請(qǐng)求時(shí)間點(diǎn)處開(kāi)始下載視頻數(shù)據(jù),并將下載的視頻數(shù)據(jù)轉(zhuǎn)發(fā)至所述播放端實(shí)時(shí)播放;
[0009]當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放。
[0010]優(yōu)選地,所述當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放的步驟之后還包括:
[0011]實(shí)時(shí)記錄緩存的數(shù)據(jù)分段的緩存進(jìn)度;
[0012]當(dāng)檢測(cè)到所述播放端請(qǐng)求播放的數(shù)據(jù)分段為緩存的數(shù)據(jù)分段時(shí),獲取該請(qǐng)求播放的數(shù)據(jù)分段的緩存進(jìn)度,將該請(qǐng)求播放的數(shù)據(jù)分段作為緩存請(qǐng)求數(shù)據(jù)分段;
[0013]若所述緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為就緒,則將該緩存請(qǐng)求數(shù)據(jù)分段轉(zhuǎn)發(fā)至所述播放端以供其播放;
[0014]若所述緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為未就緒,則提示所述播放端等待該緩存請(qǐng)求數(shù)據(jù)分段下載完畢。
[0015]優(yōu)選地,所述若所述緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為未就緒,則提示所述播放端等待該緩存請(qǐng)求數(shù)據(jù)分段下載完畢的步驟之后還包括:
[0016]當(dāng)所述播放端等待所述緩存請(qǐng)求數(shù)據(jù)分段下載的時(shí)長(zhǎng)大于預(yù)設(shè)等待時(shí)長(zhǎng)時(shí),全速下載和緩存該緩存請(qǐng)求數(shù)據(jù)分段,直至該緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為就緒。
[0017]優(yōu)選地,所述當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放的步驟之后還包括:
[0018]當(dāng)檢測(cè)到所述播放端請(qǐng)求播放的數(shù)據(jù)分段不是緩存的數(shù)據(jù)分段時(shí),獲取該請(qǐng)求播放的數(shù)據(jù)分段的第二請(qǐng)求時(shí)間點(diǎn),并釋放已緩存的數(shù)據(jù)分段;
[0019]從所述服務(wù)器的目的單分片視頻的第二請(qǐng)求時(shí)間點(diǎn)處開(kāi)始下載視頻數(shù)據(jù),并將下載的視頻數(shù)據(jù)轉(zhuǎn)發(fā)至所述播放端實(shí)時(shí)播放;
[0020]當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第二請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放。
[0021]優(yōu)選地,所述當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放的步驟包括:
[0022]獲取從所述服務(wù)器端下載視頻數(shù)據(jù)的下載速度和所述播放端播放視頻數(shù)據(jù)的播放速度;
[0023]比較所述下載速度和播放速度;
[0024]若所述下載速度大于播放速度,則當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述請(qǐng)求播放數(shù)據(jù)分段之后指定數(shù)目數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放,該指定數(shù)目是根據(jù)所述段數(shù)據(jù)長(zhǎng)度、下載速度和播放速度得出。
[0025]為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種單分片視頻播放加速裝置,所述單分片視頻播放加速裝置包括:
[0026]獲取模塊,用于當(dāng)截獲到播放端發(fā)送至服務(wù)器端的用于請(qǐng)求播放目的單分片視頻的視頻播放請(qǐng)求時(shí),獲取該視頻播放請(qǐng)求中請(qǐng)求播放該目的單分片視頻的第一請(qǐng)求時(shí)間點(diǎn)和請(qǐng)求播放數(shù)據(jù)分段的段數(shù)據(jù)長(zhǎng)度;
[0027]下載轉(zhuǎn)發(fā)模塊,用于從所述服務(wù)器的目的單分片視頻的第一請(qǐng)求時(shí)間點(diǎn)處開(kāi)始下載視頻數(shù)據(jù),并將下載的視頻數(shù)據(jù)轉(zhuǎn)發(fā)至所述播放端實(shí)時(shí)播放;
[0028]下載緩存模塊,用于當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放。
[0029]優(yōu)選地,所述單分片視頻播放加速裝置還包括:
[0030]緩存記錄模塊,用于實(shí)時(shí)記錄緩存的數(shù)據(jù)分段的緩存進(jìn)度;
[0031]緩存進(jìn)度獲取模塊,用于當(dāng)檢測(cè)到所述播放端請(qǐng)求播放的數(shù)據(jù)分段為緩存的數(shù)據(jù)分段時(shí),獲取該請(qǐng)求播放的數(shù)據(jù)分段的緩存進(jìn)度,將該請(qǐng)求播放的數(shù)據(jù)分段作為緩存請(qǐng)求數(shù)據(jù)分段;
[0032]緩存進(jìn)度執(zhí)行模塊包括第一執(zhí)行單元和第二執(zhí)行單元,
[0033]所述第一執(zhí)行單元,用于若所述緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為就緒,則將該緩存請(qǐng)求數(shù)據(jù)分段轉(zhuǎn)發(fā)至所述播放端以供其播放;
[0034]所述第二執(zhí)行單元,用于若所述緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為未就緒,則提示所述播放端等待該緩存請(qǐng)求數(shù)據(jù)分段下載完畢。
[0035]優(yōu)選地,所述緩存進(jìn)度執(zhí)行模塊還包括:
[0036]第三執(zhí)行單元,用于當(dāng)所述播放端等待所述緩存請(qǐng)求數(shù)據(jù)分段下載的時(shí)長(zhǎng)大于預(yù)設(shè)等待時(shí)長(zhǎng)時(shí),全速下載和緩存該緩存請(qǐng)求數(shù)據(jù)分段,直至該緩存請(qǐng)求數(shù)據(jù)分段的緩存進(jìn)度為就緒。
[0037]優(yōu)選地,所述單分片視頻播放加速裝置還包括:
[0038]獲取釋放模塊,用于當(dāng)檢測(cè)到所述播放端請(qǐng)求播放的數(shù)據(jù)分段不是緩存的數(shù)據(jù)分段時(shí),獲取該請(qǐng)求播放的數(shù)據(jù)分段的第二請(qǐng)求時(shí)間點(diǎn),并釋放已緩存的數(shù)據(jù)分段;
[0039]所述下載轉(zhuǎn)發(fā)模塊,還用于從所述服務(wù)器的目的單分片視頻的第二請(qǐng)求時(shí)間點(diǎn)處開(kāi)始下載視頻數(shù)據(jù),并將下載的視頻數(shù)據(jù)轉(zhuǎn)發(fā)至所述播放端實(shí)時(shí)播放;
[0040]所述下載緩存模塊,還用于當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述第二請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放。
[0041 ] 優(yōu)選地,所述下載緩存模塊包括:
[0042]速度獲取單元,用于獲取從所述服務(wù)器端下載視頻數(shù)據(jù)的下載速度和所述播放端播放視頻數(shù)據(jù)的播放速度;
[0043]速度比較單元,用于比較所述下載速度和播放速度;
[0044]下載緩存單元,用于若所述下載速度大于播放速度,則當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于所述段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存所述目的單分片視頻中所述請(qǐng)求播放數(shù)據(jù)分段之后指定數(shù)目數(shù)據(jù)分段以供所述播放端后續(xù)調(diào)用和播放,該指定數(shù)目是根據(jù)所述段數(shù)據(jù)長(zhǎng)度、下載速度和播放速度得出。
[0045]本發(fā)明通過(guò)在截獲到播放端發(fā)送的視頻播放請(qǐng)求時(shí),獲取該視頻播放請(qǐng)求中的第一請(qǐng)求時(shí)間點(diǎn)和段數(shù)據(jù)長(zhǎng)度;然后從服務(wù)器端的目的單分片視頻的第一請(qǐng)求時(shí)間點(diǎn)處開(kāi)始下載視頻數(shù)據(jù),并將下載的視頻數(shù)據(jù)轉(zhuǎn)發(fā)至播放端實(shí)時(shí)播放;當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存目的單分片視頻中第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供播放端后續(xù)調(diào)用和播放,從而避免在播放端剛開(kāi)始播放接收的視頻數(shù)據(jù)時(shí),因同時(shí)下載并緩存多個(gè)數(shù)據(jù)分段而導(dǎo)致正在播放的數(shù)據(jù)分段下載慢、播放卡頓,在下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于段數(shù)據(jù)長(zhǎng)度時(shí),即數(shù)據(jù)分段間開(kāi)始連續(xù),播放端播放可以流暢時(shí),同時(shí)下載并緩存目的單分片視頻中第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段,以盡可能多的緩存視頻數(shù)據(jù),從而在保證播放端流暢播放單分片視頻數(shù)據(jù)的基礎(chǔ)上,加速了單分片視頻數(shù)據(jù)下載和緩存,盡可能保證播放端可以調(diào)用待播放的數(shù)據(jù)分段,從而實(shí)現(xiàn)了單分片視頻播放的加速。
【附圖說(shuō)明】
[0046]圖1為本發(fā)明單分片視頻播放加速方法第一實(shí)施例的流程示意圖;
[0047]圖2為本發(fā)明單分片視頻播放加速方法第二實(shí)施例的流程示意圖;
[0048]圖3為本發(fā)明單分片視頻播放加速方法第三實(shí)施例的流程示意圖;
[0049]圖4為本發(fā)明單分片視頻播放加速方法第四實(shí)施例的流程示意圖;
[0050]圖5為本發(fā)明單分片視頻播放加速方法第五實(shí)施例中當(dāng)下載的視頻數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度等于段數(shù)據(jù)長(zhǎng)度時(shí),同時(shí)下載并緩存目的單分片視頻中第一請(qǐng)求時(shí)間點(diǎn)對(duì)應(yīng)數(shù)據(jù)分段之后一個(gè)或多個(gè)數(shù)據(jù)分段以供播放端后續(xù)調(diào)用和播放的步驟的細(xì)化流程示意圖;
[0051]圖6為本發(fā)明單分片視頻播放加速裝置第一實(shí)施例的功能模塊示意圖;
[0052]圖7為本發(fā)明單分片視頻播放加速裝置第二實(shí)施例的功能模塊示意圖;
[0053]圖8為本發(fā)明單分片視頻播放加速裝置第三實(shí)施例中緩存進(jìn)度執(zhí)行模塊的細(xì)化功能t旲塊不意圖;
[0054]圖9為本發(fā)明單分片視頻播放加速裝置第四實(shí)施例的功能模塊示意圖;
[0055]圖10為本發(fā)明單分片視頻播放加速裝置第五實(shí)施例中下載緩存模塊的細(xì)化功能豐旲塊不意圖。
當(dāng)前第1頁(yè)
1 
2 
3 
4 
5