一種播放處理方法及終端設(shè)備的制造方法
【專利摘要】本發(fā)明公開了一種播放處理方法及終端設(shè)備,所述方法包括:基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第n目標(biāo)子文件,n為大于等于1且小于等于N的整數(shù);設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第n目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件。
【專利說明】
一種播放處理方法及終端設(shè)備
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及音視頻播放技術(shù),尤其涉及一種播放處理方法及終端設(shè)備。
【背景技術(shù)】
[0002]現(xiàn)有的音視頻播放技術(shù)主要包括整段視頻播放和基于超文本傳輸協(xié)議的流媒體直播(HTTP Live Streaming,HLS)協(xié)議的小段傳輸流(Transport Stream,TS)播放。
[0003]然而,目前的音視頻播放技術(shù)存在明顯缺陷:I)對(duì)于整段視頻播放而言,I個(gè)小時(shí)的mp4(640*480)視頻,視頻解碼依賴的頭信息有3M大小,播放器首次解碼第一幀畫面需要9秒多鐘,故首次緩沖時(shí)間久;2)對(duì)于基于HLS協(xié)議的小段TS流播放而言,雖然大大縮短了首次緩存時(shí)間,但是視頻文件必須是TS格式,且以188個(gè)的固定字節(jié)為一個(gè)媒體包,其分片時(shí)間和編碼方式均受限,還需要組織成m3u8列表給播放器解析播放,嚴(yán)重增加存儲(chǔ)I/O和解碼開銷。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明實(shí)施例為解決現(xiàn)有技術(shù)中存在的問題而提供一種播放處理方法及終端設(shè)備。
[0005]本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0006]本發(fā)明實(shí)施例提供一種播放處理方法,所述方法包括:
[0007]基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0008]獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0009]設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件;
[0010]其中,所述控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括:
[0011 ]控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0012]上述方案中,所述控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件,包括:
[0013]控制所述第一播放器處于緩存狀態(tài);
[0014]基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件;
[0015]解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。
[0016]上述方案中,在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件,包括:
[0017]在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);
[0018]基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;
[0019]解析所述第η+1目標(biāo)子文件。
[0020]上述方案中,所述檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件,包括:
[0021 ]檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差;
[0022]判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài);
[0023]檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。
[0024]上述方案中,所述基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,包括:
[0025]基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。
[0026]上述方案中,所述輸出所述第η目標(biāo)子文件,包括:
[0027]基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻;
[0028]基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件。
[0029]本發(fā)明實(shí)施例還提供一種終端設(shè)備,所述終端設(shè)備包括劃分模塊、確定模塊和控制豐旲塊;
[0030]所述劃分模塊,用于基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0031 ]所述確定模塊,用于獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0032]所述控制模塊,用于設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件;
[0033]其中,所述控制模塊控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括:
[0034]控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0035]上述方案中,所述控制模塊,還用于控制所述第一播放器處于緩存狀態(tài);基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件;解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。
[0036]上述方案中,所述控制模塊,還用于在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;解析所述第η+1目標(biāo)子文件。
[0037]上述方案中,所述控制模塊,還用于檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差;判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài);檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。
[0038]上述方案中,所述確定模塊,還用于基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。
[0039]上述方案中,所述控制模塊,還用于基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻;基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件。
[0040]本發(fā)明實(shí)施例中,終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件;獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件;設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件。如此,通過控制兩個(gè)播放器對(duì)分片視頻流進(jìn)行交替緩存并播放,能夠大大縮短首次緩存時(shí)間;而且,整個(gè)視頻播放處理過程中,能夠靈活實(shí)現(xiàn)目標(biāo)文件的分片播放,不受分片時(shí)間和編碼方式等限制,有效實(shí)現(xiàn)多分片視頻播放時(shí)的無縫切換。
【附圖說明】
[0041 ]圖1為本發(fā)明實(shí)施例一播放處理方法的實(shí)現(xiàn)流程示意圖;
[0042]圖2為本發(fā)明實(shí)施例控制兩個(gè)播放器進(jìn)行交替緩存并播放目標(biāo)文件的示意圖;
[0043]圖3為本發(fā)明實(shí)施例控制兩個(gè)播放器實(shí)現(xiàn)無縫切換的播放時(shí)刻示意圖;
[0044]圖4為本發(fā)明實(shí)施例二播放處理方法的實(shí)現(xiàn)流程示意圖;
[0045]圖5為本發(fā)明實(shí)施例所述獲取并輸出第η目標(biāo)子文件的實(shí)現(xiàn)流程示意圖;
[0046]圖6為本發(fā)明實(shí)施例第一播放器緩存并播放第η目標(biāo)子文件的時(shí)刻示意圖;
[0047]圖7為本發(fā)明實(shí)施例所述控制第二播放器輸出第η+1目標(biāo)子文件的實(shí)現(xiàn)流程示意圖;
[0048]圖8為本發(fā)明實(shí)施例實(shí)現(xiàn)視頻文件播放的應(yīng)用場(chǎng)景示意圖;
[0049]圖9為本發(fā)明實(shí)施例播放進(jìn)度條上的拖動(dòng)時(shí)間表示圖;
[0050]圖10為本發(fā)明實(shí)施例六終端設(shè)備的組成結(jié)構(gòu)示意圖;
[0051]圖11為本發(fā)明實(shí)施例七所述終端設(shè)備的硬件結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0052]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)一步詳細(xì)闡述。
[0053]實(shí)施例一:
[0054]本發(fā)明實(shí)施例提供一種播放處理方法,所述方法應(yīng)用于終端設(shè)備和服務(wù)器進(jìn)行協(xié)同通信,如圖1所述,所述方法包括:
[0055]步驟101、終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0056]其中,所述目標(biāo)文件可以為音視頻文件。
[0057]這里,所述終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分的方式包括等份劃分和非等份劃分。舉例來講,以等份劃分為例,終端設(shè)備可以將藍(lán)光視頻文件(1080P)切片劃分成每20分鐘一片的視頻、將總時(shí)長為I小時(shí)的電影視頻切片劃分成3個(gè)分片子視頻、或?qū)⒏咔?480P)視頻等份劃分為每5分鐘一片的子視頻;以非等份為例,終端設(shè)備可以根據(jù)預(yù)先設(shè)定的劃分規(guī)則、如分別以I分鐘、3分鐘、5分鐘等分片時(shí)長遞增的方式對(duì)目標(biāo)文件進(jìn)行非等份劃分。當(dāng)然,在實(shí)際應(yīng)用中,終端設(shè)備還可以以分片時(shí)長遞減或其他任意劃分規(guī)則對(duì)所述目標(biāo)文件進(jìn)行劃分。
[0058]很顯然,本發(fā)明實(shí)施例與現(xiàn)有的基于HLS協(xié)議的小段TS流播放技術(shù)相比,在對(duì)目標(biāo)文件進(jìn)行劃分時(shí),并不涉及文件格式、分片時(shí)長等的限制。
[0059]步驟102、終端設(shè)備獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0060]具體地,終端設(shè)備可以默認(rèn)將目標(biāo)文件的開頭作為第一時(shí)間點(diǎn),還可以根據(jù)拖動(dòng)播放進(jìn)度條所到位置處作為第一時(shí)間點(diǎn);之后,終端設(shè)備基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定出第η目標(biāo)子文件。這里,當(dāng)終端設(shè)備將目標(biāo)文件的開頭作為第一時(shí)間點(diǎn)時(shí),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定出的第η目標(biāo)子文件,即為第一目標(biāo)子文件。
[0061]步驟103、設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢從服務(wù)器側(cè)獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件。
[0062]其中,本發(fā)明實(shí)施例所述控制所述第一播放器以及所述第二播放器輪詢從服務(wù)器側(cè)獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括:控制第一播放器從服務(wù)器側(cè)獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器從服務(wù)器側(cè)獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器從服務(wù)器側(cè)獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0063]在一應(yīng)用示例中,終端設(shè)備將總時(shí)長為I小時(shí)的視頻文件的開頭作為第一時(shí)間點(diǎn)進(jìn)行等份劃分,得到如圖2所示的4個(gè)分片的視頻子文件,分別為分片視頻1、分片視頻2、分片視頻3及分片視頻4,且每個(gè)分片時(shí)長為15分鐘;進(jìn)一步地,如圖2所示,終端設(shè)備設(shè)置第一播放器PlayerO和第二播放器Playerl開始輪詢從服務(wù)器側(cè)緩存并播放從視頻開頭,即第一個(gè)分片的視頻子文件分片視頻I及其之后的分片視頻2、分片視頻3及分片視頻4。具體地,終端設(shè)備控制PlayerO緩存并播放分片視頻I,在分片視頻I播放完成之前,控制Playerl緩存分片視頻2;檢測(cè)到PlayerO的分片視頻I播放完成,控制Player I開始播放分片視頻2;在Playerl的分片視頻2播放完成之前,控制PlayerO緩存分片視頻3;以此類推,直到Playerl的分片視頻4播放完成為止。
[0064]在一實(shí)施方式中,終端設(shè)備在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件,包括:在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;解析所述第η+1目標(biāo)子文件。
[0065]在一應(yīng)用示例中,如圖3所示,在終端設(shè)備控制所述第一播放器緩存所述第η目標(biāo)子文件完畢之前,如檢測(cè)有所述第一播放器距離緩存完成所述第η目標(biāo)子文件的時(shí)刻小于I秒時(shí),控制所述第二播放器啟動(dòng)緩存第η+1目標(biāo)子文件。
[0066]通過本發(fā)明實(shí)施例所述播放處理方法,終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件;獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件;設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件。如此,通過控制兩個(gè)播放器對(duì)分片視頻流進(jìn)行交替緩存并播放,能夠大大縮短首次緩存時(shí)間;而且,整個(gè)視頻播放處理過程中,能夠靈活實(shí)現(xiàn)目標(biāo)文件的分片播放,不受分片時(shí)間和編碼方式等限制,有效實(shí)現(xiàn)多分片視頻播放時(shí)的無縫切換。
[0067]實(shí)施例二:
[0068]本發(fā)明實(shí)施例提供一種播放處理方法,所述方法應(yīng)用于終端設(shè)備和服務(wù)器進(jìn)行協(xié)同通信,如圖4所述,所述方法包括:
[0069]步驟401、終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0070]其中,所述目標(biāo)文件可以為音視頻文件。
[0071]這里,所述終端設(shè)備基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分的方式包括等份劃分和非等份劃分。舉例來講,以等份劃分為例,終端設(shè)備可以將藍(lán)光視頻文件(1080Ρ)切片劃分成每20分鐘一片的視頻、將總時(shí)長為I小時(shí)的電影視頻切片劃分成3個(gè)分片子視頻、或?qū)⒏咔?480Ρ)視頻等份劃分為每5分鐘一片的子視頻;以非等份為例,終端設(shè)備可以根據(jù)預(yù)先設(shè)定的劃分規(guī)則、如分別以I分鐘、3分鐘、5分鐘等分片時(shí)長遞增的方式對(duì)目標(biāo)文件進(jìn)行非等份劃分。當(dāng)然,在實(shí)際應(yīng)用中,終端設(shè)備還可以以分片時(shí)長遞減或其他任意劃分規(guī)則對(duì)所述目標(biāo)文件進(jìn)行劃分。
[0072]很顯然,本發(fā)明實(shí)施例與現(xiàn)有的基于HLS協(xié)議的小段TS流播放技術(shù)相比,在對(duì)目標(biāo)文件進(jìn)行劃分時(shí),并不涉及文件格式、分片時(shí)長等的限制。
[0073]步驟402、終端設(shè)備獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0074]具體地,終端設(shè)備可以默認(rèn)將目標(biāo)文件的開頭作為第一時(shí)間點(diǎn),還可以根據(jù)拖動(dòng)播放進(jìn)度條所到位置處作為第一時(shí)間點(diǎn);之后,終端設(shè)備基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定出第η目標(biāo)子文件。這里,當(dāng)終端設(shè)備將目標(biāo)文件的開頭作為第一時(shí)間點(diǎn)時(shí),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定出的第η目標(biāo)子文件,即為第一目標(biāo)子文件。
[0075]步驟403、設(shè)置第一播放器,控制第一播放器從服務(wù)器側(cè)獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;
[0076]步驟404、設(shè)置第二播放器,在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器從服務(wù)器側(cè)獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;
[0077]在一實(shí)施方式中,終端設(shè)備在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件,包括:在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;解析所述第η+1目標(biāo)子文件。
[0078]在一應(yīng)用示例中,如圖3所示,在終端設(shè)備控制所述第一播放器緩存所述第η目標(biāo)子文件完畢之前,如檢測(cè)有所述第一播放器距離緩存完成所述第η目標(biāo)子文件的時(shí)刻小于I秒時(shí),控制所述第二播放器啟動(dòng)緩存第η+1目標(biāo)子文件。
[0079]步驟405、檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;
[0080]步驟406、在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器從服務(wù)器側(cè)獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;
[0081 ] 步驟407、依此類推,循環(huán)執(zhí)行步驟404?406,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0082]在一應(yīng)用示例中,終端設(shè)備將總時(shí)長為I小時(shí)的視頻文件的開頭作為第一時(shí)間點(diǎn)進(jìn)行等份劃分,得到如圖2所示的4個(gè)分片的視頻子文件,分別為分片視頻1、分片視頻2、分片視頻3及分片視頻4,且每個(gè)分片時(shí)長為15分鐘;進(jìn)一步地,如圖2所示,終端設(shè)備設(shè)置第一播放器PlayerO和第二播放器Playerl開始輪詢從服務(wù)器側(cè)緩存并播放從視頻開頭,即第一個(gè)分片的視頻子文件分片視頻I及其之后的分片視頻2、分片視頻3及分片視頻4。具體地,終端設(shè)備控制PlayerO緩存并播放分片視頻I,在分片視頻I播放完成之前,控制Playerl緩存分片視頻2;檢測(cè)到PlayerO的分片視頻I播放完成,控制Player I開始播放分片視頻2;在Playerl的分片視頻2播放完成之前,控制PlayerO緩存分片視頻3;以此類推,直到Playerl的分片視頻4播放完成為止。
[0083]通過本發(fā)明實(shí)施例所述播放處理方法,終端設(shè)備通過控制兩個(gè)播放器對(duì)分片視頻流進(jìn)行交替緩存并播放,能夠大大縮短首次緩存時(shí)間;而且,整個(gè)視頻播放處理過程中,能夠靈活實(shí)現(xiàn)目標(biāo)文件的分片播放,不受分片時(shí)間和編碼方式等限制,有效實(shí)現(xiàn)多分片視頻播放時(shí)的無縫切換。
[0084]實(shí)施例三
[0085]如圖5所示,基于本發(fā)明實(shí)施例一和實(shí)施例二,本發(fā)明實(shí)施例所述控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件,包括:
[0086]步驟501、控制所述第一播放器處于緩存狀態(tài);
[0087]步驟502、基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件;
[0088]步驟503、解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。
[0089]在一應(yīng)用示例中,如圖6所示,本發(fā)明實(shí)施例終端設(shè)備在獲取并輸出第η目標(biāo)子文件所對(duì)應(yīng)的Tl?Τ6過程中,終端設(shè)備在Tl時(shí)刻根據(jù)第η目標(biāo)子文件在整個(gè)目標(biāo)文件上所對(duì)應(yīng)的時(shí)間維度設(shè)置所述第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,如統(tǒng)一資源定位符(Uniform Resource Locator ,URL),即設(shè)置播放地址;在T2時(shí)刻控制所述第一播放器鏈接所述URL,以從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件的頭信息,即所述第一播放器實(shí)現(xiàn)首次緩存;在Τ3時(shí)刻,終端設(shè)備控制所述第一播放器解析所述第η目標(biāo)子文件的頭信息,即所述第一播放器準(zhǔn)備好播放,首幀畫面出現(xiàn);在Τ4?Τ6時(shí)刻,終端設(shè)備控制所述第一播放器播放所述第η目標(biāo)子文件的頭文件的同時(shí),繼續(xù)緩存所述第η目標(biāo)子文件的剩余部分,即開始播放,在播放的過程中,繼續(xù)緩存并播放,直至完成所述第η目標(biāo)子文件的播放為止;從Τ6時(shí)刻起,所述第一播放器重新開始新的目標(biāo)子文件的緩存和播放。
[0090]通過本發(fā)明實(shí)施例所述播放處理方法,終端設(shè)備通過控制第一播放器在緩存第η目標(biāo)子文件的頭文件后即可開始播放所述第η目標(biāo)子文件,如此,能夠大大縮短首次緩存時(shí)間。
[0091]實(shí)施例四
[0092]如圖7所示,基于本發(fā)明實(shí)施例一至實(shí)施例三,本發(fā)明實(shí)施例所述檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件,包括:
[0093]步驟701、檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差;
[0094]步驟702、判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài);
[0095]這里,所述第一預(yù)設(shè)門限值的取值可以綜合考慮整個(gè)播放處理速率及播放器的緩存能力來確定。
[0096]步驟703、檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。
[0097]這里,所述檢測(cè)所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻的方式有如下兩種:
[0098]方式一:檢測(cè)所述第一播放器播放所述第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻是否大于等于所述第η目標(biāo)子文件的時(shí)長,若大于等于,則確定所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻。舉例來說,如圖3所示,檢測(cè)所述第一播放器的當(dāng)前輸出時(shí)刻大于等于所述第η目標(biāo)子文件的時(shí)長,即播放點(diǎn)> =時(shí)長時(shí),切換播放渲染,即控制第二播放器輸出所述第η+1目標(biāo)子文件。
[0099]方式二:啟動(dòng)定時(shí)器偵聽是否發(fā)生有播放結(jié)束事件,即通過定時(shí)器偵聽所述第一播放器中是否已完成所述第η目標(biāo)子文件最后一幀視頻流的播放,若完成,則偵聽到播放結(jié)束事件,即確定所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻。舉例來說,如圖3所示,當(dāng)檢測(cè)有所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差小于第一預(yù)設(shè)門限值,如小于1.5秒時(shí),所述第一播放器啟動(dòng)定時(shí)器來偵聽播放結(jié)束事件,當(dāng)偵聽到播放結(jié)束事件后,去除所述播放偵聽事件,控制第二播放器開始輸出第η+1目標(biāo)子文件的頭文件。
[0100]通過本發(fā)明實(shí)施例所述播放處理方法,終端設(shè)備通過控制兩個(gè)播放器對(duì)分片視頻流進(jìn)行交替緩存并播放,有效實(shí)現(xiàn)多分片視頻播放時(shí)的無縫切換。
[0101]實(shí)施例五
[0102]基于本發(fā)明實(shí)施例一至實(shí)施例四,結(jié)合如圖8所示的實(shí)現(xiàn)視頻文件播放的應(yīng)用場(chǎng)景,所述應(yīng)用場(chǎng)景將拖動(dòng)播放進(jìn)度條所到位置處作為第一時(shí)間點(diǎn),本發(fā)明實(shí)施例基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,包括:基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。
[0103]在一實(shí)施方式中,本發(fā)明實(shí)施例所述輸出所述第η目標(biāo)子文件,包括:基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)亥IJ;基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件。
[0104]在一應(yīng)用示例中,如圖9所示,對(duì)于拖動(dòng)播放進(jìn)度條播放處理而言,所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件的確定方式為:η=[相對(duì)于整個(gè)目標(biāo)文件的拖動(dòng)總時(shí)長Tl/分片時(shí)長S];所述基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻,即相對(duì)于單個(gè)分片文件的拖動(dòng)時(shí)間Τ2,Τ2 =拖動(dòng)總時(shí)長Tl-拖動(dòng)到第幾個(gè)分片η*分片時(shí)長S;進(jìn)一步地,基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件,包括:如果拖動(dòng)到第η個(gè)視頻是當(dāng)前播放PlayerO正在播放的分片視頻,直接調(diào)用PlayerO的查詢seek接口 [seek: Τ2];如果是緩存播放器Player I正在緩存的視頻,把Playerl切換成正在播放的播放器,播放清染View置頂,然后調(diào)用Player I的查詢seek接口 [ seek:T2];如果非前述兩種情況,則直接重置reset兩個(gè)播放器PlayerO和Playerl,即重新啟動(dòng)新的播放過程,設(shè)置第η片播放地址URL給PlayerO,由Playerl緩存第η+1片視頻。這里,播放進(jìn)度條總時(shí)長=分片時(shí)長S*分片總數(shù)目η;進(jìn)度條當(dāng)前正在播放的時(shí)間T =已經(jīng)播放過分片數(shù)*分片時(shí)長S+當(dāng)前分片視頻正在播放的時(shí)間。
[0105]實(shí)施例六
[0106]本發(fā)明實(shí)施例提供了一種終端設(shè)備,如圖10所示,所述終端設(shè)備包括劃分模塊1001、確定模塊1002和控制模塊1003;
[0107]所述劃分模塊1001,用于基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0108]所述確定模塊1002,用于獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0109]所述控制模塊1003,用于設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件;
[0110]其中,所述控制模塊1003控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括:控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0111]在一實(shí)施方式中,所述控制模塊1003,還用于控制所述第一播放器處于緩存狀態(tài);基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件;解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。
[0112]在一實(shí)施方式中,所述控制模塊1003,還用于在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;解析所述第η+1目標(biāo)子文件。
[0113]在一實(shí)施方式中,所述控制模塊1003,還用于檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差;判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài);檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。
[0114]在一實(shí)施方式中,所述確定模塊1002,還用于基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。
[0115]在一實(shí)施方式中,所述控制模塊1003,還用于基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻;基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件。
[0116]在實(shí)際應(yīng)用中,所述終端設(shè)備所包括的劃分模塊1001、確定模塊1002和控制模塊1003均可對(duì)應(yīng)于處理器。所述處理器具體的結(jié)構(gòu)可以為中央處理器CPU、微處理器M⑶、數(shù)字信號(hào)處理器DSP或可編程邏輯器件PLC等具有處理功能的電子元器件或電子元器件的集合。其中,所述處理器包括可執(zhí)行代碼,所述可執(zhí)行代碼存儲(chǔ)在存儲(chǔ)介質(zhì)中,所述處理器可以通過總線等通信接口與所述存儲(chǔ)介質(zhì)中相連,在執(zhí)行具體的各模塊的對(duì)應(yīng)功能時(shí),從所述存儲(chǔ)介質(zhì)中讀取并運(yùn)行所述可執(zhí)行代碼。所述存儲(chǔ)介質(zhì)用于存儲(chǔ)所述可執(zhí)行代碼的部分優(yōu)選為非瞬間存儲(chǔ)介質(zhì)。
[0117]所述劃分模塊1001、確定模塊1002和控制模塊1003可以集成對(duì)應(yīng)于同一處理器,或分別對(duì)應(yīng)不同的處理器;當(dāng)集成對(duì)應(yīng)于同一處理器時(shí),所述處理器采用時(shí)分處理所述劃分模塊1001、確定模塊1002和控制模塊1003對(duì)應(yīng)的功能。
[0118]本發(fā)明實(shí)施例六所述終端設(shè)備,為實(shí)施例一至五所述的方法提供了具體實(shí)現(xiàn)的硬件,能用于實(shí)現(xiàn)實(shí)施例一至五中任意所述的技術(shù)方案,同樣的,通過控制兩個(gè)播放器對(duì)分片視頻流進(jìn)行交替緩存并播放,能夠大大縮短首次緩存時(shí)間;而且,整個(gè)視頻播放處理過程中,能夠靈活實(shí)現(xiàn)目標(biāo)文件的分片播放,不受分片時(shí)間和編碼方式等限制,有效實(shí)現(xiàn)多分片視頻播放時(shí)的無縫切換。
[0119]實(shí)施例七:
[0120]本實(shí)施例基于上述實(shí)施例六中的終端設(shè)備實(shí)施例提供一個(gè)具體的硬件,如圖11所示,所述裝置包括處理器1102、存儲(chǔ)介質(zhì)1104以及至少一個(gè)外部通信接口 1101;所述處理器1102、存儲(chǔ)介質(zhì)1104以及外部通信接口 1101均通過總線1103連接。所述處理器1102可為微處理器、中央處理器、數(shù)字信號(hào)處理器或可編程邏輯陣列等具有處理功能的電子元器件。所述存儲(chǔ)介質(zhì)1104中存儲(chǔ)有計(jì)算機(jī)可執(zhí)行代碼。
[0121]所述硬件可以為所述終端設(shè)備。
[0122]當(dāng)所述硬件為所述終端設(shè)備時(shí),所述處理器1102執(zhí)行所述計(jì)算機(jī)可執(zhí)行代碼時(shí),至少能實(shí)現(xiàn)以下功能;
[0123]基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);
[0124]獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù);
[0125]設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件;
[0126]其中,所述控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括:控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。
[0127]在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的設(shè)備和方法,可以通過其它的方式實(shí)現(xiàn)。以上所描述的設(shè)備實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,如:多個(gè)單元或組件可以結(jié)合,或可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設(shè)備或單元的間接耦合或通信連接,可以是電性的、機(jī)械的或其它形式的。
[0128]上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元;既可以位于一個(gè)地方,也可以分布到多個(gè)網(wǎng)絡(luò)單元上;可以根據(jù)實(shí)際的需要選擇其中的部分或全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
[0129]另外,在本發(fā)明各實(shí)施例中的各功能單元可以全部集成在一個(gè)處理單元中,也可以是各單元分別單獨(dú)作為一個(gè)單元,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中;上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。
[0130]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:移動(dòng)存儲(chǔ)設(shè)備、只讀存儲(chǔ)器(Read-Only Memory,ROM)、隨機(jī)存取存儲(chǔ)器(Random Access Memory,RAM)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0131]或者,本發(fā)明上述集成的單元如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。基于這樣的理解,本發(fā)明實(shí)施例的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分。而前述的存儲(chǔ)介質(zhì)包括:移動(dòng)存儲(chǔ)設(shè)備、ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0132]以上所述,僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種播放處理方法,其特征在于,所述方法包括: 基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù);獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù); 設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件; 其中,所述控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括: 控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+ 1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件,包括: 控制所述第一播放器處于緩存狀態(tài); 基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件; 解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+1目標(biāo)子文件,包括: 在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài); 基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件; 解析所述第η+1目標(biāo)子文件。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件,包括: 檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差; 判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài); 檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,包括: 基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述輸出所述第η目標(biāo)子文件,包括: 基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻; 基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文件。7.一種終端設(shè)備,其特征在于,所述終端設(shè)備包括劃分模塊、確定模塊和控制模塊; 所述劃分模塊,用于基于時(shí)間維度對(duì)目標(biāo)文件中的內(nèi)容劃分,得到N個(gè)目標(biāo)子文件,N為大于等于2的整數(shù); 所述確定模塊,用于獲取到第一時(shí)間點(diǎn),基于所述第一時(shí)間點(diǎn)從所述N個(gè)目標(biāo)子文件中確定第η目標(biāo)子文件,η為大于等于I且小于等于N的整數(shù); 所述控制模塊,用于設(shè)置第一播放器以及第二播放器,控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件; 其中,所述控制模塊控制所述第一播放器以及所述第二播放器輪詢獲取并輸出第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件,包括: 控制第一播放器獲取到第η目標(biāo)子文件并輸出所述第η目標(biāo)子文件;在所述第η目標(biāo)子文件輸出結(jié)束之前,控制所述第二播放器獲取時(shí)間維度上與所述第η目標(biāo)子文件相鄰的第η+ 1目標(biāo)子文件;檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出結(jié)束,控制第二播放器輸出所述第η+1目標(biāo)子文件;在所述第η+1目標(biāo)子文件輸出結(jié)束之前,控制所述第一播放器獲取到時(shí)間維度上與所述第η+1目標(biāo)子文件相鄰的第η+2目標(biāo)子文件;以此類推,直至所述第η目標(biāo)子文件及其之后的至少一個(gè)目標(biāo)子文件全部輸出結(jié)束。8.根據(jù)權(quán)利要求7所述的終端設(shè)備,其特征在于, 所述控制模塊,還用于控制所述第一播放器處于緩存狀態(tài);基于所述目標(biāo)文件中第η目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η目標(biāo)子文件;解析所述第η目標(biāo)子文件,將所述第一播放器由緩存狀態(tài)切換至輸出狀態(tài),控制輸出所述第η目標(biāo)子文件。9.根據(jù)權(quán)利要求7所述的終端設(shè)備,其特征在于, 所述控制模塊,還用于在所述第η目標(biāo)子文件開始輸出時(shí),控制所述第二播放器進(jìn)入緩存狀態(tài);基于所述目標(biāo)文件中第η+1目標(biāo)子文件在服務(wù)器側(cè)的地址信息,從所述服務(wù)器側(cè)獲取并緩存所述第η+1目標(biāo)子文件;解析所述第η+1目標(biāo)子文件。10.根據(jù)權(quán)利要求7所述的終端設(shè)備,其特征在于, 所述控制模塊,還用于檢測(cè)所述第一播放器的第η目標(biāo)子文件的當(dāng)前輸出時(shí)刻與所述第η目標(biāo)子文件的結(jié)束時(shí)刻之間的時(shí)間差;判斷所述時(shí)間差是否小于第一預(yù)設(shè)門限值,若小于,則控制第二播放器由緩存狀態(tài)切換至輸出狀態(tài);檢測(cè)到所述第一播放器的第η目標(biāo)子文件輸出達(dá)到結(jié)束時(shí)刻時(shí),控制第二播放器輸出所述第η+1目標(biāo)子文件。11.根據(jù)權(quán)利要求7所述的終端設(shè)備,其特征在于, 所述確定模塊,還用于基于所述第一時(shí)間點(diǎn)與所述N個(gè)目標(biāo)子文件中每一個(gè)目標(biāo)子文件的時(shí)長,確定所述第一時(shí)間點(diǎn)對(duì)應(yīng)的第η目標(biāo)子文件。12.根據(jù)權(quán)利要求11所述的終端設(shè)備,其特征在于, 所述控制模塊,還用于基于所述第一時(shí)間點(diǎn)、以及所述第η目標(biāo)子文件的時(shí)長,確定針對(duì)所述第η目標(biāo)子文件的初始輸出子時(shí)刻;基于所述初始輸出子時(shí)刻輸出所述第η目標(biāo)子文 件。
【文檔編號(hào)】H04N21/845GK105898625SQ201610289582
【公開日】2016年8月24日
【申請(qǐng)日】2016年4月29日
【發(fā)明人】吳峰凱
【申請(qǐng)人】騰訊科技(深圳)有限公司