一種流媒體文件的下載方法及用戶終端的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種流媒體文件的下載方法及用戶終端。
【背景技術(shù)】
[0002]在網(wǎng)絡上傳輸音/視頻等多媒體文件,目前主要有全部下載和流式傳輸兩種方式。全部下載方式需要多媒體文件全部下載完畢才能播放,由于多媒體文件通常較大,同時由于網(wǎng)絡帶寬的限制,采用全部下載方式常常需要數(shù)分鐘甚至數(shù)小時才能下載完畢一個多媒體文件,因此,采用全部下載這種處理方法的延遲很大。
[0003]流式傳輸方式是指將音/視頻等多媒體文件由多媒體信息服務器向客戶端連續(xù)、實時傳送的方式。使用流式傳輸技術(shù)傳輸?shù)倪B續(xù)時基媒體稱為流媒體。在這種流式傳輸方式下,用戶不必等到整個文件全部下載完畢,而只需經(jīng)過幾秒或十數(shù)秒的下載即可進行觀看播放數(shù)據(jù)。其特點是數(shù)據(jù)流隨時傳送隨時播放,當流媒體數(shù)據(jù)在客戶端上播放時,流媒體文件的剩余部分將在后臺從服務器內(nèi)繼續(xù)下載。采用流式傳輸方式的流媒體播放技術(shù)避免了用戶必須等待整個文件全部從網(wǎng)絡上下載完畢才能觀看的缺點。
[0004]在流媒體播放技術(shù)中,在開始播放流媒體數(shù)據(jù)之前需要將流媒體數(shù)據(jù)下載到一個流媒體緩沖區(qū)(以下簡稱緩沖區(qū))中。等待流媒體數(shù)據(jù)下載到緩沖區(qū)的過程稱為緩沖,一般分為首次緩沖和再次緩沖。首次緩沖是指在流媒體文件開始播放前需要等待下載指定數(shù)據(jù)量(足以播放的數(shù)據(jù)量)的流媒體數(shù)據(jù)到緩沖區(qū)的過程,首次緩沖的等待時間是指從開始下載到下載了指定數(shù)據(jù)量的流媒體數(shù)據(jù)的時間。當下載的流媒體數(shù)據(jù)量達到指定數(shù)據(jù)量后,則讀出該緩沖區(qū)內(nèi)的流媒體數(shù)據(jù)進行播放,并在讀出數(shù)據(jù)進行播放的同時繼續(xù)向該緩沖區(qū)內(nèi)下載后續(xù)的流媒體數(shù)據(jù),從而連續(xù)播放。
[0005]再次緩沖是指一旦出現(xiàn)緩沖區(qū)內(nèi)的流媒體數(shù)據(jù)被讀取完,而發(fā)生的等待流媒體數(shù)據(jù)下載指定數(shù)據(jù)量(足以播放的數(shù)據(jù)量)的流媒體數(shù)據(jù)到緩沖區(qū)的過程。再次緩沖的等待時間是指從開始等待到下載了指定數(shù)據(jù)量(足以播放的數(shù)據(jù)量)的流媒體數(shù)據(jù)的時間。首次緩沖的等待時間、再次緩沖的幾率以及再次緩沖的等待時間是衡量流媒體播放效率的重要指標。其中,再次緩沖的幾率尤其是一個非常重要的效率指標,如果再次緩沖的次數(shù)較多,則會嚴重影響播放效率,最終影響用戶對整個流媒體文件的播放體驗。
[0006]目前的流媒體緩沖播放技術(shù)方案中,緩沖區(qū)的緩沖量是固定的。例如設(shè)置能夠播放5秒鐘的數(shù)據(jù)量作為緩沖量,假設(shè)能夠播放5秒鐘的流媒體數(shù)據(jù)的數(shù)據(jù)量為512字節(jié),則首次緩沖和再次緩沖都需要下載512字節(jié)的流媒體數(shù)據(jù)。如果用戶終端下載完512字節(jié)的流媒體數(shù)據(jù),則不再從服務器下載流媒體數(shù)據(jù),直到當前緩存的數(shù)據(jù)量小于緩沖區(qū)的緩沖量的一半(如256字節(jié)),才開始從服務器下載流媒體數(shù)據(jù)。
[0007]按照現(xiàn)有技術(shù)的上述機制,如果用戶終端當前需要從服務器下載流媒體數(shù)據(jù),而用戶終端當前所處的網(wǎng)絡環(huán)境較差,則用戶終端無法正常下載流媒體數(shù)據(jù),從而導致流媒體文件不能連續(xù)播放,影響用戶體驗。
【發(fā)明內(nèi)容】
[0008]本發(fā)明實施例提供了一種流媒體文件的下載方法及用戶終端,用以解決現(xiàn)有技術(shù)中存在的用戶終端當前所處的網(wǎng)絡環(huán)境較差,無法正常下載流媒體數(shù)據(jù),從而導致流媒體文件不能連續(xù)播放,影響用戶體驗的問題。
[0009]本發(fā)明實施例提供一種流媒體文件的下載方法,所述方法包括:
[0010]用戶終端確定即將進入切換區(qū)域或弱覆蓋區(qū)域;
[0011]所述用戶終端在確定當前沒有從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或在確定當前正在從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求;
[0012]所述用戶終端接收所述服務器發(fā)送的流媒體數(shù)據(jù)。
[0013]采用本發(fā)明實施例的方案,由于提前預知用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域,提前下載流體數(shù)據(jù),可避免后續(xù)由于無線環(huán)境變差導致流媒體數(shù)據(jù)無法正常下載、流媒體文件播放中斷的問題。
[0014]可選地,用戶終端確定即將進入切換區(qū)域或弱覆蓋區(qū)域,具體包括:
[0015]所述用戶終端對服務小區(qū)和鄰區(qū)的信號強度進行持續(xù)測量;
[0016]所述用戶終端根據(jù)測量得到的服務小區(qū)和鄰區(qū)的信號強度確定即將進入切換區(qū)域或弱覆蓋區(qū)域。
[0017]如此,用戶終端可自發(fā)判斷自身是否即將進入切換區(qū)域或弱覆蓋區(qū)域,效率較高。
[0018]可選地,用戶終端確定即將進入切換區(qū)域或弱覆蓋區(qū)域,具體包括:
[0019]所述用戶終端對服務小區(qū)和鄰區(qū)的信號強度進行持續(xù)測量;
[0020]所述用戶終端將測量得到的服務小區(qū)和鄰區(qū)的信號強度上報給基站;
[0021]所述用戶終端接收所述基站通過無線資源控制RRC信令發(fā)送的所述用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域的通知。
[0022]如此,用戶終端可根據(jù)基站的通知確定自身即將進入切換區(qū)域或弱覆蓋區(qū)域,可減少用戶終端的處理過程,減少用戶終端資源的損耗。
[0023]可選地,所述用戶終端在確定當前沒有從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或在確定當前正在從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求,具體包括:
[0024]所述用戶終端的RRC層向應用層發(fā)送通知消息,其中,所述通知消息中包含所述用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域的信息,或所述通知消息中包含指示所述用戶終端的應用層下載流媒體數(shù)據(jù)的信息;
[0025]所述用戶終端的應用層在確定當前沒有從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或在確定當前正在從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求。
[0026]如此,即可由用戶終端的應用層來判決是否需要向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求。
[0027]可選地,所述用戶終端的應用層向服務器發(fā)送下載流媒體數(shù)據(jù)的請求之前,還包括:
[0028]所述用戶終端的應用層確定當前緩存的流媒體數(shù)據(jù)的數(shù)據(jù)量小于預設(shè)的緩存數(shù)據(jù)量閾值。
[0029]如此,即可避免頻繁地從服務器下載流媒體數(shù)據(jù),且可保證后續(xù)從服務器下載的流媒體數(shù)據(jù)可以緩存。
[0030]可選地,所述通知消息中還包含所述RRC層預估的數(shù)據(jù)傳輸中斷時長,所述用戶終端的應用層向服務器發(fā)送下載流媒體數(shù)據(jù)的請求之前,還包括:
[0031]所述用戶終端的應用層確定當前緩存的流媒體數(shù)據(jù)能夠播放的時長小于所述數(shù)據(jù)傳輸中斷時長與從服務器下載預設(shè)數(shù)據(jù)量的流媒體數(shù)據(jù)的時長之和。
[0032]如此,即可結(jié)合實際緩存的流媒體數(shù)據(jù)的數(shù)據(jù)量、數(shù)據(jù)傳輸中斷時長和流媒體數(shù)據(jù)的下載時長判斷是否需要從服務器下載流媒體數(shù)據(jù)。
[0033]本發(fā)明實施例還提供一種用戶終端,所述用戶終端包括:
[0034]確定模塊,用于確定即將進入切換區(qū)域或弱覆蓋區(qū)域;
[0035]處理模塊,用于在確定當前沒有從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或在確定當前正在從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求;
[0036]接收模塊,用于接收所述服務器發(fā)送的流媒體數(shù)據(jù)。
[0037]由于提前預知用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域,提前下載流體數(shù)據(jù),可避免后續(xù)由于無線環(huán)境變差導致流媒體數(shù)據(jù)無法正常下載、流媒體文件播放中斷的問題。
[0038]可選地,所述確定模塊具體用于:
[0039]對服務小區(qū)和鄰區(qū)的信號強度進行持續(xù)測量,并根據(jù)測量得到的服務小區(qū)和鄰區(qū)的信號強度確定即將進入切換區(qū)域或弱覆蓋區(qū)域。
[0040]如此,用戶終端可自發(fā)判斷自身是否即將進入切換區(qū)域或弱覆蓋區(qū)域,效率較高。
[0041]可選地,所述確定模塊具體用于:
[0042]對服務小區(qū)和鄰區(qū)的信號強度進行持續(xù)測量,將測量得到的服務小區(qū)和鄰區(qū)的信號強度上報給基站,并接收所述基站通過無線資源控制RRC信令發(fā)送的所述用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域的通知。
[0043]如此,用戶終端可根據(jù)基站的通知確定自身即將進入切換區(qū)域或弱覆蓋區(qū)域,可減少用戶終端的處理過程,減少用戶終端資源的損耗。
[0044]可選地,所述處理模塊包括RRC層子模塊和應用層子模塊,其中:
[0045]所述RRC層子模塊,用于向應用層子模塊發(fā)送通知消息,其中,所述通知消息中包含所述用戶終端即將進入切換區(qū)域或弱覆蓋區(qū)域的信息,或所述通知消息中包含指示所述用戶終端的應用層子模塊下載流媒體數(shù)據(jù)的信息;
[0046]所述應用層子模塊,用于在確定當前沒有從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或在確定當前正在從服務器下載流媒體數(shù)據(jù)時向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求。
[0047]如此,即可由用戶終端的應用層來判決是否需要向服務器發(fā)送下載流媒體數(shù)據(jù)的請求,或向服務器發(fā)送加速下載流媒體數(shù)據(jù)的請求。<