專利名稱:實(shí)現(xiàn)基于http的流媒體業(yè)務(wù)的方法、系統(tǒng)和網(wǎng)絡(luò)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于超文本傳輸協(xié)議HTTP的流 媒體業(yè)務(wù)的方法、網(wǎng)絡(luò)系統(tǒng)、服務(wù)器和網(wǎng)絡(luò)設(shè)備。
背景技術(shù):
流媒體服務(wù)隨著互聯(lián)網(wǎng)的普及得到迅速的發(fā)展。流媒體服務(wù)可以采用超文本傳輸 協(xié)議(Hyper Text Transfer Protocol,HTTP)。大量的基礎(chǔ)設(shè)施,包括web服務(wù)器、內(nèi)容分 發(fā)網(wǎng)絡(luò)(⑶N),都可以支持HTTP傳輸,采用HTTP的流媒體正在成為發(fā)展的趨勢。流媒體服務(wù)有兩種不同的服務(wù)類型錄播和直播。錄播是指播出的媒體內(nèi)容是事 先制作然后播出的,是非實(shí)時(shí)的,播放電影就是錄播的一個(gè)典型例子。直播是和錄播相對 的,是實(shí)時(shí)地播放媒體內(nèi)容,典型的例子是現(xiàn)場轉(zhuǎn)播一場體育比賽,一方面發(fā)送者實(shí)時(shí)地對 內(nèi)容進(jìn)行制作,包括內(nèi)容編碼,編輯等,另一方面接收者能夠同步地接收到發(fā)送者實(shí)時(shí)制作 的內(nèi)容。在傳統(tǒng)的流媒體服務(wù)中,客戶端建立和服務(wù)器的連接后,以一個(gè)特殊定義的時(shí)間 “現(xiàn)在” (now)指示指示服務(wù)器需要播放,客戶端就可以接收直播內(nèi)容。在這個(gè)過程中,客戶 端不需要知道內(nèi)容存放的位置,服務(wù)器作為控制的主體,把當(dāng)前內(nèi)容發(fā)送到客戶端。在基 于HTTP的流媒體服務(wù)中,服務(wù)器是被動的服務(wù)提供者,服務(wù)器只能根據(jù)客戶端的請求把一 個(gè)文件或者一個(gè)文件的某一部分發(fā)送給客戶端,客戶端需要明確地指示所請求的文件(用 URL)或者文件的某一部分(用URL加上位置區(qū)間)。在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題在現(xiàn)有的基于HTTP的流媒體業(yè)務(wù)中,由于直播的媒體數(shù)據(jù)是實(shí)時(shí)生成的,客戶端 不可能事先知道當(dāng)前生成的媒體數(shù)據(jù)的準(zhǔn)確位置,這樣客戶端就無法請求最新制作的媒體 數(shù)據(jù),給直播服務(wù)帶來了困難。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法、 服務(wù)器、客戶端設(shè)備和網(wǎng)絡(luò)系統(tǒng),可以使客戶端獲得服務(wù)器上媒體數(shù)據(jù)的位置信息,實(shí)現(xiàn)基 于HTTP的流媒體直播服務(wù)。本發(fā)明實(shí)施例提供一種實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法,包 括服務(wù)器向客戶端發(fā)送直播開始時(shí)間和所述服務(wù)器的當(dāng)前時(shí)間,以使客戶端根據(jù)直 播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定客戶端需要播放的媒體片斷的位置指示信息;服務(wù)器接收來自客戶端的需要播放的媒體片斷的位置指示信息;服務(wù)器根據(jù)位置指示信息,獲取該位置指示信息對應(yīng)的媒體片斷文件,向客戶端 發(fā)送媒體片斷文件。本發(fā)明實(shí)施例還提供一種實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法,包括接收來自服務(wù)器的直播開始時(shí)間和所述服務(wù)器的當(dāng)前時(shí)間;根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷的位置指示信 息;向服務(wù)器發(fā)送所述需要播放的媒體片斷的位置指示信息;接收來自服務(wù)器的與所述位置指示信息對應(yīng)的媒體片斷文件;播放媒體片斷文件。本發(fā)明實(shí)施例還提供一種服務(wù)器,包括時(shí)間信息發(fā)送單元,用于向客戶端發(fā)送直播開始時(shí)間和該服務(wù)器的當(dāng)前時(shí)間,以 使客戶端根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷文件的位置指 不信息;位置指示信息接收單元,用于接收來自客戶端的需要播放的媒體片斷文件的位置 指不信息;媒體片斷文件獲取單元,用于根據(jù)客戶端的需要播放的媒體片斷文件的位置指示 信息,獲取媒體片斷文件;媒體片斷文件發(fā)送單元,用于向客戶端發(fā)送媒體片斷文件。本發(fā)明實(shí)施例還提供一種客戶端設(shè)備,包括時(shí)間信息接收單元,用于接收來自服務(wù)器的直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間;確定單元,用于根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷 的位置指示信息;位置指示信息發(fā)送單元,用于向服務(wù)器發(fā)送需要播放的媒體片斷文件的位置指示 fn息;媒體片斷文件接收單元,用于接收來自服務(wù)器的與需要播放的媒體片斷的位置指 示信息對應(yīng)的媒體片斷文件;播放單元,用于播放媒體片斷文件。本發(fā)明實(shí)施例還提供一種網(wǎng)絡(luò)系統(tǒng),包括服務(wù)器,用于向客戶端發(fā)送直播開始時(shí)間和該服務(wù)器的當(dāng)前時(shí)間,以使客戶端根 據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷的位置指示信息;接收來自 客戶端的需要播放的媒體片斷的位置指示信息;根據(jù)客戶端的需要播放的媒體片斷的位置 指示信息,獲取媒體片斷文件;向客戶端發(fā)送媒體片斷文件;客戶端設(shè)備,用于接收來自服務(wù)器的直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間;根據(jù)直 播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷文件的位置指示信息;向服務(wù)器 發(fā)送需要播放的媒體片斷的位置指示信息;接收來自服務(wù)器的與需要播放的媒體片斷的位 置指示信息對應(yīng)的媒體片斷文件;播放媒體片斷文件。本發(fā)明實(shí)施例提供的實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法、服務(wù) 器、客戶端設(shè)備和網(wǎng)絡(luò)系統(tǒng),通過由服務(wù)器向客戶端發(fā)送直播開始時(shí)間和所述服務(wù)器的當(dāng) 前時(shí)間,可以使得客戶端根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷 的位置指示信息,從而實(shí)現(xiàn)基于HTTP的流媒體直播服務(wù)。
為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例中所需要使用的 附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普 通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例的實(shí)現(xiàn)基于HTTP的流媒體業(yè)務(wù)的方法流程圖;圖2為本發(fā)明實(shí)施例的另一實(shí)現(xiàn)基于HTTP的流媒體業(yè)務(wù)的方法流程3為本發(fā)明實(shí)施例的另一實(shí)現(xiàn)基于HTTP的流媒體業(yè)務(wù)的方法流程4為本發(fā)明實(shí)施例的媒體呈現(xiàn)描述文件的結(jié)構(gòu)示意圖;圖5為本發(fā)明實(shí)施例的媒體文件組織形式示意圖;圖6為本發(fā)明實(shí)施例的媒體片段示意圖;圖7為本發(fā)明實(shí)施例的服務(wù)器結(jié)構(gòu)示意圖;圖8為本發(fā)明實(shí)施例的另一服務(wù)器結(jié)構(gòu)示意圖;圖9為本發(fā)明實(shí)施例的另一服務(wù)器結(jié)構(gòu)示意圖;圖10為本發(fā)明實(shí)施例的客戶端設(shè)備結(jié)構(gòu)示意圖;圖11為本發(fā)明實(shí)施例的另一客戶端設(shè)備結(jié)構(gòu)示意圖;圖12為本發(fā)明實(shí)施例的另一客戶端設(shè)備結(jié)構(gòu)示意圖;圖13為本發(fā)明實(shí)施例的網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā) 明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施 例,都屬于本發(fā)明保護(hù)的范圍。以下對本發(fā)明實(shí)施例的一些術(shù)語進(jìn)行說明媒體片斷(fragment),可以是指一種媒體數(shù)據(jù)封裝形式,包含一個(gè)時(shí)間間隔的媒 體數(shù)據(jù)以及該媒體數(shù)據(jù)相關(guān)的信息。每個(gè)媒體片斷可以存儲為一個(gè)獨(dú)立的文件,稱為媒體 片斷文件。媒體呈現(xiàn)描述文件(Media Presentation Description File),描述了媒體呈現(xiàn) 的基本信息,如媒體的分量、編碼數(shù)據(jù)的屬性(例如對于視頻分量、其編解碼類型、視頻的 比特率、幀率、分辨率等)、是否直播、媒體片斷的時(shí)間長度、如何獲取相關(guān)的媒體數(shù)據(jù)等。媒體分量(Media Component),可以是指媒體呈現(xiàn)中的一個(gè)分量,如視頻分量、音頻分量、文字分量等。媒體分量時(shí)間間隔(Media Component hterval),對應(yīng)于一個(gè)時(shí)間窗的一個(gè)媒體 分量。把所有的媒體分量時(shí)間間隔串接在一起就得到該媒體分量的全部。媒體分量時(shí)間間隔相互不重疊??商娲木幋a表述(Alternative r印resentation),可以是指應(yīng)用一組參數(shù)對一 個(gè)媒體分量的編碼表述,比如某一碼率以及時(shí)間和空間的分辨率。編碼片斷(kgment),可以是指在一個(gè)時(shí)間間隔對某一媒體分量的編碼數(shù)據(jù)。通過 指明媒體分量,媒體分量間隔以及可替代的編碼表述,客戶端可以請求編碼片斷。編碼片斷可以被獨(dú)立地解碼而不依賴于其他的編碼片斷。媒體編碼數(shù)據(jù),可以是指對某一媒體分量進(jìn)行編碼生成的數(shù)據(jù),如對視頻按照某 一比特率、幀率、分辨率編碼生成的數(shù)據(jù)。如圖1所示,本發(fā)明實(shí)施例提供一種實(shí)現(xiàn)基于HTTP的流媒體業(yè)務(wù)的方法,所述媒 體呈現(xiàn)的每個(gè)媒體片斷分別以單個(gè)文件的方式存儲在服務(wù)器中。在本發(fā)明實(shí)施例中,方法 包括S102.服務(wù)器向客戶端發(fā)送直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間;獲得直播開始時(shí)間可以有不同的方式。當(dāng)客戶端請求直播服務(wù)時(shí),首先向服務(wù) 器請求獲取媒體呈現(xiàn)描述文件,服務(wù)器可以在對客戶端的響應(yīng)中攜帶超文本傳輸協(xié)議頭 Last-Modified把直播開始時(shí)間送給客戶端。Last-Modified中的時(shí)間是媒體呈現(xiàn)描述文 件的最后修改時(shí)間,這個(gè)文件是在直播開始時(shí)生成的,所以這個(gè)時(shí)間可以認(rèn)為是直播開始 時(shí)間。直播開始時(shí)間也可以包含在媒體呈現(xiàn)描述文件發(fā)送給客戶端。服務(wù)器在對客戶端請求媒體呈現(xiàn)描述文件的響應(yīng)中,通過超文本傳輸協(xié)議頭Date 把直播開始時(shí)間送給客戶端。Date中的時(shí)間是該響應(yīng)產(chǎn)生的時(shí)間,可以忽略服務(wù)器的發(fā)送 延遲,這個(gè)時(shí)間就是服務(wù)器當(dāng)前的時(shí)間。S104.客戶端接收來自服務(wù)器的直播開始時(shí)間和所述服務(wù)器的當(dāng)前時(shí)間,根據(jù)服 務(wù)器上的直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷文件的位置指示信 息,向服務(wù)器發(fā)送需要播放的媒體片斷文件的位置指示信息;客戶端可以根據(jù)服務(wù)器當(dāng)前時(shí)間和客戶端的本地時(shí)間,計(jì)算并保存時(shí)間偏移,根 據(jù)這個(gè)時(shí)間偏移值,可以很容易地得到任何本地時(shí)間所對應(yīng)的服務(wù)器時(shí)間。這個(gè)過程忽略 可以傳輸?shù)臅r(shí)延。更具體地,在本發(fā)明實(shí)施例中,客戶端還可以從服務(wù)器或者從本地獲取媒體片斷 的時(shí)間長度,該參數(shù)可以從媒體呈現(xiàn)描述文件中獲得(該參數(shù)也可以事先約定,或可以標(biāo) 準(zhǔn)化),根據(jù)所述直播開始時(shí)間、服務(wù)器的當(dāng)前時(shí)間以及所述媒體片斷的時(shí)間長度,確定需 要播放的媒體片斷的位置信息;該位置信息可以是多種形式,比如是需要播放的媒體片斷 的序號;客戶端可以將該序號直接發(fā)送給服務(wù)器,由服務(wù)器根據(jù)該序號轉(zhuǎn)換為媒體片斷文 件的位置(比如URL);客戶端也可以從服務(wù)器或者從本地獲取統(tǒng)一資源定位符模板,然后 根據(jù)該序號和統(tǒng)一資源定位符模板,生成需要播放的媒體片斷文件對應(yīng)的統(tǒng)一資源定位符 URL。本發(fā)明實(shí)施例的位置指示信息可以是統(tǒng)一資源定位符(Uniform ResourceLocator, URL),也可以是文件索引號等指示文件位置的信息,后續(xù)各實(shí)施例中的 位置指示信息可以如上述說明,但不限于上述說明。在本實(shí)施例中,客戶端需要播放的媒體片斷可以是最新的正在直播的媒體片斷, 也可以是客戶端根據(jù)實(shí)際需要指定從過去的某個(gè)時(shí)間開始觀看的媒體片斷。后續(xù)各實(shí)施例 中的“需要播放的媒體片斷”可以如上述說明,但不限于上述說明。在本實(shí)施例中,位置指示信息可以攜帶在由客戶端向服務(wù)器發(fā)送的媒體片斷請求 中。在后續(xù)各實(shí)施例中也可以作類似處理。S106.服務(wù)器接收來自客戶端的需要播放的媒體片斷的位置指示信息;
S108.服務(wù)器根據(jù)該位置指示信息,獲取該位置指示信息對應(yīng)的媒體片斷文件,向 客戶端發(fā)送媒體片斷文件;S108.客戶端接收來自服務(wù)器的與需要播放的媒體片斷文件的位置指示信息對應(yīng) 的媒體片斷文件;S110.客戶端播放媒體片斷文件;S112.客戶端繼續(xù)順序獲取并播放上述媒體片斷之后的媒體文件。如圖2所示,本發(fā)明實(shí)施例的方法在步驟S102之前,還可以包括S100-2.當(dāng)客戶端需要獲取直播服務(wù)時(shí),客戶端向服務(wù)器發(fā)送請求;在本步驟中,客戶端向服務(wù)器發(fā)送的請求中,可以攜帶對媒體呈現(xiàn)描述文件的請 求。媒體呈現(xiàn)描述文件可以是描述媒體數(shù)據(jù)的基本信息,比如媒體片斷的時(shí)間長度、 媒體數(shù)據(jù)的存儲位置、媒體分量(media component,如音頻、視頻、文字等)、媒體數(shù)據(jù)的屬 性(如對于視頻數(shù)據(jù)、其編解碼類型、視頻的比特率、幀率、分辨率等),該文件可以是在直 播開始時(shí)生成的。前面所述的統(tǒng)一資源定位符模板、直播開始時(shí)間、媒體片斷的時(shí)間長度都 可以攜帶在媒體呈現(xiàn)描述文件中。S100-4.服務(wù)器向客戶端發(fā)送媒體呈現(xiàn)描述文件;S100-6.客戶端接收來自服務(wù)器的媒體呈現(xiàn)描述文件;客戶端可以從該文件提取統(tǒng)一資源定位符模板、直播開始時(shí)間、媒體片斷的時(shí)間 長度,以生成需要播放的媒體片斷的統(tǒng)一資源定位符。本發(fā)明實(shí)施例方法可以根據(jù)實(shí)際需要對各個(gè)步驟順序進(jìn)行調(diào)整。在本發(fā)明實(shí)施例中,服務(wù)器向客戶端發(fā)送的直播開始時(shí)間可以由超文本傳輸協(xié)議 頭Last-Modified或者媒體呈現(xiàn)描述文件攜帶,向客戶端發(fā)送的服務(wù)器的當(dāng)前時(shí)間可以由 超文本傳輸協(xié)議頭Date攜帶。但不限于上述協(xié)議和字段,還可以是其他協(xié)議和字段。利用 上述兩個(gè)字段,則無須對HTTP協(xié)議進(jìn)行擴(kuò)展,能夠保護(hù)投資。通過本發(fā)明實(shí)施例,服務(wù)器向客戶端發(fā)送直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間,使 得客戶端能夠根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間獲得客戶端需要播放的媒體片斷文 件的位置指示信息,進(jìn)而從服務(wù)器上獲取該位置指示信息對應(yīng)的媒體片斷文件,從而實(shí)現(xiàn) 基于HTTP的流媒體直播服務(wù)。通過本發(fā)明實(shí)施例,無須對HTTP協(xié)議進(jìn)行擴(kuò)展,無須對服務(wù) 器增加額外的功能,可以充分利用已有的基礎(chǔ)設(shè)施,保護(hù)投資,降低成本。在本發(fā)明另一實(shí)施例中,對基于超文本傳輸協(xié)議HTTP的流媒體直播的方法進(jìn)行 更深入具體的說明。參見圖3,本發(fā)明實(shí)施例的方法包括S302.當(dāng)客戶端需要獲取直播服務(wù)時(shí),向服務(wù)器發(fā)出請求;該請求可以是GET消 息,攜帶對媒體呈現(xiàn)描述文件的請求;S304.服務(wù)器接收來自客戶端的直播服務(wù)請求,根據(jù)請求向客戶端返回?cái)y帶媒體 呈現(xiàn)描述文件的響應(yīng)RESPONSE ;特別地,可以將媒體呈現(xiàn)描述文件產(chǎn)生的時(shí)間,即直播開始的時(shí)間攜帶在媒體呈 現(xiàn)描述文件或超文本傳輸協(xié)議HTTP頭Last-Modified中,可以將該響應(yīng)產(chǎn)生(originate) 的時(shí)間,即服務(wù)器當(dāng)前的時(shí)間攜帶在超文本傳輸協(xié)議HTTP頭Date中。通過上述方式,服務(wù) 器將直播開始的時(shí)間和服務(wù)器當(dāng)前的時(shí)間告知客戶端?!癓ast Modified”和“Date”中的時(shí)間可以是以格林威治標(biāo)準(zhǔn)時(shí)間(Greenwich Mean Time,GMT)描述的,最小單位可以為秒。由 于直播開始時(shí)間是由服務(wù)器記錄的時(shí)間,當(dāng)前時(shí)間也來自服務(wù)器,這樣兩個(gè)時(shí)間來源一致, 避免了由于服務(wù)器和客戶端時(shí)間不一致帶來的影響。S306.客戶端建立和服務(wù)器的時(shí)間同步關(guān)系。在本步驟中,客戶端可以根據(jù)服務(wù)器當(dāng)前時(shí)間和本地時(shí)間,計(jì)算并保存時(shí)間偏移 ΔΤ=本地時(shí)間-服務(wù)器當(dāng)前時(shí)間。根據(jù)這個(gè)時(shí)間偏移值Δ T,很容易得到任何本地時(shí)間所 對應(yīng)的服務(wù)器時(shí)間。S308.客戶端確定需要播放的媒體片斷的統(tǒng)一資源定位符URL ;客戶端可以根據(jù)服務(wù)器當(dāng)前時(shí)間和直播開始的時(shí)間計(jì)算需要播放的媒體片斷,需 要播放的媒體片斷可以是最新生成的媒體片斷,也可以是客戶端根據(jù)實(shí)際需要指定從過去 的某個(gè)時(shí)間開始觀看的媒體片斷。舉個(gè)例子,可以設(shè)置本地變量N,該變量N代表待獲取的文件序號??蛻舳丝梢愿?據(jù)服務(wù)器當(dāng)前時(shí)間和直播開始的時(shí)間計(jì)算最新的正在直播的媒體片斷文件序號L,將文件 序號L賦給本地變量N。L可以按照如下的公式計(jì)算得到L = int( (T-TO)/Ts)其中T為服務(wù)器當(dāng)前時(shí)間,TO為直播開始的時(shí)間,Ts為媒體片斷的時(shí)間長度(該 參數(shù)可以從服務(wù)器發(fā)送的信息中獲得,也可以事先約定,或可以標(biāo)準(zhǔn)化);int()為取整函 數(shù),int(x)表示不超過χ的最大整數(shù)??蛻舳艘部梢灾付◤倪^去的某個(gè)時(shí)間Tl開始觀看,根據(jù)服務(wù)器當(dāng)前時(shí)間和本地 時(shí)間的時(shí)間偏移值Δ Τ,得到其所對應(yīng)的服務(wù)器時(shí)間Τ2 = Tl-Δ Τ, Τ2滿足T0 ^ Τ2 ^ Τ,根 據(jù)公式L’ = int((T2-T0)/Ts)計(jì)算出指定從過去的Tl開始觀看的媒體片斷文件序號L’, 將文件序號L’賦給本地變量N。在本實(shí)施例中,直播內(nèi)容的制作是按照固定的時(shí)間生成媒體片斷。每個(gè)媒體片斷 在服務(wù)器中存儲為單個(gè)獨(dú)立的文件,稱為媒體片斷文件??蛻舳擞么@取的文件序號N,替 代統(tǒng)一資源定位符模板中的變量,生成該媒體片斷對應(yīng)的統(tǒng)一資源定位符(URL)。S310.客戶端向服務(wù)器發(fā)送需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符以請求該 媒體片斷文件。S312.服務(wù)器接收來自客戶端的統(tǒng)一資源定位符,獲取對應(yīng)的媒體片斷文件,返回 媒體片斷文件;S314.客戶端接收服務(wù)器返回的媒體片斷文件并播放;S316.客戶端修改后續(xù)待獲取的文件序號,即令N = N+1,替代統(tǒng)一資源定位符 模板中的變量,生成待獲取的媒體片斷對應(yīng)的統(tǒng)一資源定位符(URL),并重復(fù)上述步驟 S310 S316,不斷請求并獲取后續(xù)的媒體片斷文件??蛻舳藦慕邮盏降谝粋€(gè)媒體片斷文件開始播放,依次播放所獲取的媒體片斷文 件。特別注意的是,該步驟S310 S316可以是并行的,即在播放序號為N的文件時(shí),客戶 端在獲取序號為N+1的文件。本發(fā)明實(shí)施例方法可以根據(jù)實(shí)際需要對各個(gè)步驟順序進(jìn)行調(diào)整。下面對媒體呈現(xiàn)描述文件進(jìn)行說明。媒體呈現(xiàn)描述文件可以是在直播開始時(shí),由 服務(wù)器生成。該文件描述了即將生成的媒體數(shù)據(jù)的基本信息,如媒體的分量、編碼數(shù)據(jù)的屬性(例如對于視頻分量、其編解碼類型、視頻的比特率、幀率、分辨率等)、是否直播、媒體 片斷的時(shí)間長度、如何獲取相關(guān)的媒體數(shù)據(jù)等。媒體呈現(xiàn)描述文件的結(jié)構(gòu)如圖4所示,該文件在ISO基礎(chǔ)文件格式和3GP文件格 式的基礎(chǔ)上有所擴(kuò)展。該文件在文件層次包含了三個(gè)對象,“ftyp”標(biāo)識文件類型、說明文件 所遵從的規(guī)范;“moov”容納多個(gè)對象,這些對象定義了一個(gè)媒體呈現(xiàn)的元數(shù)據(jù);“meta”中 含有元數(shù)據(jù)。每個(gè)對象中又嵌套了其他的對象?!癿oov”包含了對媒體數(shù)據(jù)的基本信息的描述,不同的” trak”給出不同的媒體分量 的描述,比如trak 1描述了視頻分量的信息,如編解碼器、比特率、幀率、分辨率等;trak 2描述了音頻分量的信息,如語言、音量、單聲道或者立體聲等。在本實(shí)施例中,媒體片斷文件的位置可以以統(tǒng)一資源定位符模板(URLtemplate) 來描述。所謂的統(tǒng)一資源定位符模板,是一個(gè)以空字符(mill)結(jié)束的字符串,其中含有變 量,在構(gòu)造實(shí)際使用的統(tǒng)一資源定位標(biāo)記時(shí)需要替換其中的變量,如模板為http://WWW. huawei. com/v/audio/aUndex}. dat,生成統(tǒng)一資源定位符號時(shí)用文件序號8替代其中的 {index}得到http://www. huawei. com/v/audio/a8. dat。描述媒體片斷文件的位置的資源定位符模板存儲在對象“dref”中,“dref”包含 在對象“trak”中,而“trak”包含在對象“moov”中。在本例中,媒體片斷的時(shí)間長度包含在對象“meta”中,具體而言又是在“xml”中 給出的。本發(fā)明實(shí)施例中的媒體文件組織形式如圖5所示。圖5中的媒體包括視頻分量和音頻分量,視頻分量有3種不同碼率的編碼表述,音 頻有2種不同語言的編碼表述。每種編碼表述的信息,如編解碼器類型、編碼速率、幀率、 分辨率、音量等媒體的基本信息都包括在圖中的媒體呈現(xiàn)描述文件中。媒體呈現(xiàn)描述文件 通過統(tǒng)一資源定位符模板描述了媒體片斷文件的位置。媒體呈現(xiàn)描述文件中還可以包括媒 體片斷的時(shí)間長度。本發(fā)明實(shí)施例提供一種媒體呈現(xiàn)描述文件,該文件可以包括統(tǒng)一資源定位符模 板,該模版可以用于由客戶端生成需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符,該統(tǒng)一資 源定位符可以用于指示需要播放的媒體片斷文件的位置;該文件還可以包括媒體片斷的時(shí) 間長度,用于由客戶端根據(jù)其確定需要播放的媒體片斷的位置信息。在制作直播內(nèi)容時(shí),可以按照固定的時(shí)間間隔生成媒體片斷,每個(gè)媒體片斷存儲 為一個(gè)獨(dú)立的文件。媒體片斷文件中包含單一媒體表述或者不同媒體表述的組合。每個(gè) 媒體片斷文件可以唯一地被訪問。文件的名字可以包括兩個(gè)部分基本名稱和序號,形如 al. dat, a2. dat,.....。第一個(gè)媒體片斷對應(yīng)的文件序號為1,按時(shí)間順序以步長1遞增。 采用相同編碼表述或者編碼表述組合的媒體片斷文件存儲在同一路徑下,可以用一個(gè)統(tǒng)一 資源定位符來描述這些文件的位置。每個(gè)媒體片斷文件可以包含單一的編碼表述,以便于不同編碼表述的靈活組合, 而且沒有冗余節(jié)省存儲空間。在每個(gè)媒體片斷也可以允許不同編碼表述的組合,比如某一 速率的視頻編碼表述和某一語言的音頻編碼表述。圖6為本發(fā)明實(shí)施例的媒體片段示意圖,參見圖6,媒體片斷包括以下部分,“moof”用于描述該媒體片斷的元數(shù)據(jù),因?yàn)橹辈ブ忻襟w制作是實(shí)時(shí)的,無法事先得到所有 媒體數(shù)據(jù)的信息,在“moof”中只有媒體的基本信息,“moof”描述了該媒體片斷的特殊元數(shù) 據(jù)?!癿dat”用于封裝該片斷的媒體數(shù)據(jù),即編碼片斷,可以有單一的媒體分量的編碼表述或 者不同媒體分量的編碼表述的組合。虛線框中的“mfra”是可選的部分,用于描述該媒體片 斷中的隨機(jī)接入點(diǎn)。在媒體片斷中允許有不同媒體分量的編碼表述的組合。通過本發(fā)明實(shí)施例,服務(wù)器向客戶端發(fā)送直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間,使 得客戶端能夠根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間獲得客戶端需要播放的媒體片斷文 件的位置指示信息,進(jìn)而從服務(wù)器上獲取該位置指示信息對應(yīng)的媒體片斷文件,從而實(shí)現(xiàn) 基于HTTP的流媒體直播服務(wù)。通過本發(fā)明實(shí)施例,無須對HTTP協(xié)議進(jìn)行擴(kuò)展,無須對服務(wù) 器增加額外的功能,可以充分利用已有的基礎(chǔ)設(shè)施,保護(hù)投資,降低成本。此外,由于每個(gè)媒 體片斷以單獨(dú)文件的方式存儲在服務(wù)器上,所以,可以通過位置指示信息直接獲取媒體片 斷,避免對同一索引文件進(jìn)行頻繁地存取訪問,提高直播的效率。如圖7所示,本發(fā)明實(shí)施例提供一種服務(wù)器,具體可以是流媒體服務(wù)器,其包括時(shí)間信息發(fā)送單元702,用于向客戶端發(fā)送直播開始時(shí)間和該服務(wù)器的當(dāng)前時(shí) 間,以使所述客戶端根據(jù)所述直播開始時(shí)間和所述服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒 體片斷文件的位置指示信息;位置指示信息可以是統(tǒng)一資源定位符(Uniform Resource Locator, URL),也可以是文件索引號等指示文件位置的信息??蛻舳诵枰シ诺拿襟w片斷 可以是最新的正在直播的媒體片斷,也可以是客戶端根據(jù)實(shí)際需要指定從過去的某個(gè)時(shí)間 開始觀看的媒體片斷。位置指示信息接收單元704,用于接收來自客戶端的需要播放的媒體片斷文件的 位置指示信息;媒體片斷獲取單元706,用于根據(jù)客戶端的需要播放的媒體片斷的位置指示信息, 從存儲單元中獲取媒體片斷文件;媒體片斷文件發(fā)送單元708,用于向客戶端發(fā)送媒體片斷文件。進(jìn)一步地,如圖8所示,該服務(wù)器還可以包括存儲單元802,用于以單個(gè)文件的方 式分別存儲流媒體的每個(gè)媒體片斷;媒體片斷的格式與上述實(shí)施例所說明的類似,在此不 再贅述。媒體片斷文件獲取單元706用于根據(jù)客戶端的需要播放的媒體片斷文件的位置指 示信息,從存儲單元802中獲取媒體片斷文件。
進(jìn)一步地,如圖9所示,該服務(wù)器還可以包括統(tǒng)一資源定位符模板發(fā)送單元902, 用于將統(tǒng)一資源定位符模板發(fā)送給客戶端設(shè)備,以使客戶端設(shè)備根據(jù)該統(tǒng)一資源定位符模 板生成需要播放的媒體片斷文件對應(yīng)的統(tǒng)一資源定位符;媒體片斷文件獲取單元706用于根據(jù)來自客戶端的需要播放的媒體片斷文件的 統(tǒng)一資源定位符,從存儲單元802中獲取媒體片斷文件。在本發(fā)明實(shí)施例中,服務(wù)器向客戶端發(fā)送的直播開始時(shí)間可以由超文本傳輸協(xié)議 頭Last-Modified或者媒體呈現(xiàn)描述文件攜帶,向客戶端發(fā)送的服務(wù)器的當(dāng)前時(shí)間可以由 超文本傳輸協(xié)議頭Date攜帶。但不限于上述協(xié)議和字段,還可以是其他協(xié)議和字段。利用 上述兩個(gè)字段,則無須對HTTP協(xié)議進(jìn)行擴(kuò)展,能夠保護(hù)投資。本發(fā)明實(shí)施例的各個(gè)單元可以集成于一體,也可以分離部署。上述單元可以合并 為一個(gè)單元,也可以進(jìn)一步拆分成多個(gè)子單元。
在本發(fā)明實(shí)施例中,服務(wù)器可以是流媒體服務(wù)器等,客戶端設(shè)備可以是手機(jī)、計(jì)算 機(jī)、個(gè)人數(shù)碼助理(Personal Digital AssistantiPDA)、小型服務(wù)器、家用電器、路由器、交 換機(jī)、基站以及各種電子設(shè)備、網(wǎng)絡(luò)設(shè)備或計(jì)算機(jī)相關(guān)設(shè)備等。通過本發(fā)明實(shí)施例,由服務(wù)器的時(shí)間信息發(fā)送單元向客戶端發(fā)送直播開始時(shí)間和 服務(wù)器的當(dāng)前時(shí)間,使得客戶端能夠根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間獲得客戶端需 要播放的媒體片斷文件的位置指示信息,進(jìn)而從服務(wù)器上獲取該位置指示信息對應(yīng)的媒體 片斷文件,從而實(shí)現(xiàn)基于HTTP的流媒體直播服務(wù)。無須對HTTP協(xié)議進(jìn)行擴(kuò)展,無須對服務(wù) 器增加額外的功能,可以充分利用已有的基礎(chǔ)設(shè)施,保護(hù)投資,降低成本。此外,由于每個(gè)媒 體片斷以單獨(dú)文件的方式存儲在服務(wù)器的存儲單元上,所以,可以通過位置指示信息直接 獲取媒體片斷,避免對同一索引文件進(jìn)行頻繁地存取訪問,提高直播的效率。如圖10所示,本發(fā)明實(shí)施例提供一種客戶端設(shè)備,其包括時(shí)間信息接收單元1002,用于接收來自服務(wù)器的直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí) 間;確定單元1004,用于根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒 體片斷文件的位置指示信息;客戶端需要播放的媒體片斷可以是最新的正在直播的媒體片 斷,也可以是客戶端根據(jù)實(shí)際需要指定從過去的某個(gè)時(shí)間開始觀看的媒體片斷。位置指示信息發(fā)送單元1006,用于向服務(wù)器發(fā)送需要播放的媒體片斷文件的位置 指示信息;位置指示信息可以是統(tǒng)一資源定位符(Uniform ResourceLocatonURL),也可以 是文件索引號等指示文件位置的信息。媒體片斷文件接收單元1008,用于接收來自服務(wù)器的與需要播放的媒體片斷文件 的位置指示信息對應(yīng)的媒體片斷文件;播放單元1010,用于播放媒體片斷文件。進(jìn)一步地,如圖11所示,客戶端設(shè)備還可以包括媒體片斷時(shí)間長度獲取單元 1102,用于獲取媒體片斷時(shí)間長度;媒體片斷時(shí)間長度可以從服務(wù)器或者從本地獲取。確定單元1004用于根據(jù)所述直播開始時(shí)間、服務(wù)器的當(dāng)前時(shí)間以及媒體片斷的 時(shí)間長度,確定需要播放的媒體片斷的位置信息,根據(jù)該位置信息生成需要播放的媒體片 斷文件的位置指示信息。進(jìn)一步地,如圖12所示,客戶端設(shè)備還可以包括統(tǒng)一資源定位符模板獲取單元1202,用于獲取統(tǒng)一資源定位符模板;統(tǒng)一資源定 位符模板可以從服務(wù)器或者從本地獲取。確定單元1004包括子確定單元1004-2,用于根據(jù)直播開始時(shí)間、服務(wù)器的當(dāng)前時(shí)間以及媒體片斷的 時(shí)間長度,確定需要播放的媒體片斷的序號;生成單元1004-4,用于根據(jù)所述序號和統(tǒng)一資源定位符模板,生成需要播放的媒 體片斷文件對應(yīng)的統(tǒng)一資源定位符。在本發(fā)明實(shí)施例中,服務(wù)器向客戶端發(fā)送的直播開始時(shí)間可以由超文本傳輸協(xié)議 頭Last-Modified或者媒體呈現(xiàn)描述文件攜帶,向客戶端發(fā)送的服務(wù)器的當(dāng)前時(shí)間可以由 超文本傳輸協(xié)議報(bào)文頭Date攜帶。但不限于上述協(xié)議和字段,還可以是其他協(xié)議和字段。 利用上述兩個(gè)字段,則無須對HTTP協(xié)議進(jìn)行擴(kuò)展,能夠保護(hù)投資。
本發(fā)明實(shí)施例的各個(gè)單元可以集成于一體,也可以分離部署。上述單元可以合并 為一個(gè)單元,也可以進(jìn)一步拆分成多個(gè)子單元。在本發(fā)明實(shí)施例中,服務(wù)器可以是流媒體服務(wù)器等,客戶端設(shè)備可以是手機(jī)、計(jì)算 機(jī)、個(gè)人數(shù)碼助理(Personal Digital AssistantiPDA)、小型服務(wù)器、家用電器、路由器、交 換機(jī)、基站以及各種電子設(shè)備、網(wǎng)絡(luò)設(shè)備或計(jì)算機(jī)相關(guān)設(shè)備等。通過本發(fā)明實(shí)施例,由服務(wù)器的時(shí)間信息發(fā)送單元向客戶端發(fā)送直播開始時(shí)間和 所述服務(wù)器的當(dāng)前時(shí)間,使得客戶端能夠根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間獲得客戶 端需要播放的媒體片斷文件的位置指示信息,進(jìn)而從服務(wù)器上獲取該位置指示信息對應(yīng)的 媒體片斷文件,從而實(shí)現(xiàn)基于HTTP的流媒體直播服務(wù)。無須對HTTP協(xié)議進(jìn)行擴(kuò)展,無須對 服務(wù)器增加額外的功能,可以充分利用已有的基礎(chǔ)設(shè)施,保護(hù)投資,降低成本。如圖13所示,本發(fā)明實(shí)施例提供一種網(wǎng)絡(luò)系統(tǒng),其包括服務(wù)器1302,用于向客戶端發(fā)送直播開始時(shí)間和該服務(wù)器的當(dāng)前時(shí)間,以使客戶 端根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷文件的位置指示信息; 接收來自客戶端的需要播放的媒體片斷文件的位置指示信息;根據(jù)客戶端的需要播放的媒 體片斷文件的位置指示信息,獲取媒體片斷文件;向客戶端發(fā)送媒體片斷文件;客戶端設(shè)備1304,用于接收來自服務(wù)器的直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間;根 據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間確定需要播放的媒體片斷文件的位置指示信息;向服 務(wù)器發(fā)送需要播放的媒體片斷文件的位置指示信息;接收來自服務(wù)器的與需要播放的媒體 片斷文件的位置指示信息對應(yīng)的媒體片斷文件;播放媒體片斷文件。服務(wù)器1302還可以用于以單個(gè)文件的方式分別存儲流媒體的每個(gè)媒體片斷。在本發(fā)明實(shí)施例中,服務(wù)器向客戶端發(fā)送的直播開始時(shí)間可以由超文本傳輸協(xié)議 頭Last-Modified或者媒體呈現(xiàn)描述文件攜帶,向客戶端發(fā)送的服務(wù)器的當(dāng)前時(shí)間可以由 超文本傳輸協(xié)議頭Date攜帶。在本發(fā)明實(shí)施例中,服務(wù)器1302可以是流媒體服務(wù)器等,客戶端設(shè)備1304可以 是手機(jī)、計(jì)算機(jī)、個(gè)人數(shù)碼助理(Personal DigitalAssistant, PDA)、小型服務(wù)器、家用電 器、路由器、交換機(jī)、基站以及各種電子設(shè)備、網(wǎng)絡(luò)設(shè)備或計(jì)算機(jī)相關(guān)設(shè)備等。網(wǎng)絡(luò)系統(tǒng)的 連接方式可以是有線連接或無線連接,無線連接方式可以是全球移動通信系統(tǒng)(Global System for Mobile Communications, GSM)、寬帶石馬分多址(Wideband-Code Division Multiple Access,WCDMA)、時(shí)分同步碼分多址接入(Time Division-Synchronized Code Division Multiple Access, TD-SCDMA)、碼分多址(Code-Division Multiple Access, CDMA)、全球微波互聯(lián)接入(Worldwide Interoperability for Microwave Access,UMAX) > ^C^i^^N (Wireless Local Area Network, WLAN) ^HJiiii (Long Term Evolution, LTE)等。通過本發(fā)明實(shí)施例,由服務(wù)器的時(shí)間信息發(fā)送單元向客戶端發(fā)送直播開始時(shí)間和 服務(wù)器的當(dāng)前時(shí)間,使得客戶端能夠根據(jù)直播開始時(shí)間和服務(wù)器的當(dāng)前時(shí)間獲得客戶端需 要播放的媒體片斷文件的位置指示信息,進(jìn)而從服務(wù)器上獲取該位置指示信息對應(yīng)的媒體 片斷文件,從而實(shí)現(xiàn)基于HTTP的流媒體直播服務(wù)。無須對HTTP協(xié)議進(jìn)行擴(kuò)展,無須對服務(wù) 器增加額外的功能,可以充分利用已有的基礎(chǔ)設(shè)施,保護(hù)投資,降低成本。此外,由于每個(gè)媒 體片斷以單獨(dú)文件的方式存儲在服務(wù)器上,所以,可以通過位置指示信息直接獲取媒體片斷,避免對同一文件進(jìn)行頻繁地存取訪問,提高了直播的效率。結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、 計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明 中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式 來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對每個(gè)特定的應(yīng) 用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的 軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存儲器 (ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或任意其它 形式的存儲介質(zhì)中。以上所述,僅為本發(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)利要求
1.一種實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法,其特征在于,所述方法包括服務(wù)器接收來自客戶端的請求,根據(jù)所述對媒體呈現(xiàn)描述文件請求向客戶端返回?cái)y帶 媒體呈現(xiàn)描述文件的響應(yīng);服務(wù)器和客戶端之間建立時(shí)間同步關(guān)系。服務(wù)器接收來自客戶端的統(tǒng)一資源定位符,獲取對應(yīng)的媒體片斷文件,向客戶端返回 所述媒體片斷文件用于客戶端播放,其中,所述統(tǒng)一資源定位符為客戶端確定需要播放的 媒體片段的統(tǒng)一資源定位符,用以客戶端向服務(wù)器請求所述媒體片段文件。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于服務(wù)器根據(jù)所述對媒體呈現(xiàn)描述文件請 求向客戶端返回?cái)y帶媒體呈現(xiàn)描述文件的響應(yīng)還包括將所述媒體呈現(xiàn)描述文件產(chǎn)生的時(shí) 間攜帶在媒體呈現(xiàn)描述文件或超文本傳輸協(xié)議HTTP頭Last-Modif ied中,將該響應(yīng)產(chǎn)生的 時(shí)間攜帶在超文本傳輸協(xié)議HTTP頭Date中告知客戶端。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于服務(wù)器在直播開始時(shí)產(chǎn)生所述媒體呈現(xiàn)描述文件,所述媒體呈現(xiàn)描述文件描述即將生 成的媒體數(shù)據(jù)的基本信息。
4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述媒體呈現(xiàn)描述文件包括統(tǒng)一資 源定位符模板,所述模版用于客戶端生成需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符,所 述統(tǒng)一資源定位符用于指示需要播放的媒體片斷文件的位置。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述媒體呈現(xiàn)描述文件還包括媒體片斷 的時(shí)間長度,所述媒體片斷的時(shí)間長度用于客戶端根據(jù)其確定需要播放的媒體片斷的位置 fn息ο
6.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述媒體片斷文件中包括單一媒體表 述或者不同媒體表述的組合。
7.一種實(shí)現(xiàn)基于超文本傳輸協(xié)議HTTP的流媒體業(yè)務(wù)的方法,其特征在于,所述方法包括客戶端向服務(wù)器發(fā)出請求,所述請求用于使服務(wù)器根據(jù)所述請求向客戶端返回?cái)y帶媒 體呈現(xiàn)描述文件的響應(yīng);客戶端建立和服務(wù)器的時(shí)間同步關(guān)系; 客戶端確定需要播放的媒體片斷的統(tǒng)一資源定位符URL ;客戶端向服務(wù)器發(fā)送需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符以請求媒體片斷文件;客戶端接收服務(wù)器返回的對應(yīng)所述統(tǒng)一資源定位符的媒體片斷文件并播放。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述方法還包括客戶端將文件序號順序遞增作為后續(xù)待獲取的文件序號,替代統(tǒng)一資源定位符模板中 的變量,生成待獲取的媒體片斷對應(yīng)的統(tǒng)一資源定位符URL,不斷請求并獲取后續(xù)的媒體片 斷文件。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于所述媒體呈現(xiàn)描述文件在直播開始時(shí)由服務(wù)器產(chǎn)生,描述即將生成的媒體數(shù)據(jù)的基本 fn息ο
10.根據(jù)權(quán)利要求7或9所述的方法,其特征在于客戶端根據(jù)服務(wù)器當(dāng)前時(shí)間和直播開始的時(shí)間計(jì)算最新的正在直播的媒體片斷文件 序號L,所述將文件序號L賦給代表待獲取的文件序號的本地變量N,其中,L如下得到L = int( (T-TO)/Ts),T為服務(wù)器當(dāng)前時(shí)間,TO為直播開始的時(shí)間,Ts為媒體片斷的時(shí)間長度,int()為取整 函數(shù),int(x)表示不超過χ的最大整數(shù)。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于若客戶端指定從過去的某個(gè)時(shí)間Tl開始觀看,根據(jù)服務(wù)器當(dāng)前時(shí)間和本地時(shí)間的時(shí) 間偏移值Δ T,得到其所對應(yīng)的服務(wù)器時(shí)間Τ2 = Τ1-ΔΤ,Τ2滿足T0 ^ Τ2 ^ Τ,根據(jù)公式 L’ = int((T2-T0)/Ts)計(jì)算出指定從過去的Tl開始觀看的媒體片斷文件序號L’,將文件 序號L’賦給本地變量N。
12.根據(jù)權(quán)利要求7或8所述的方法,其特征在于,所述媒體呈現(xiàn)描述文件包括統(tǒng)一 資源定位符模板,所述模版用于客戶端生成需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符, 所述統(tǒng)一資源定位符用于指示需要播放的媒體片斷文件的位置。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述媒體呈現(xiàn)描述文件還包括媒體片 斷的時(shí)間長度,所述媒體片斷的時(shí)間長度用于客戶端根據(jù)其確定需要播放的媒體片斷的位 直fe息。
14.根據(jù)權(quán)利要求7或8所述的方法,其特征在于,所述媒體片斷文件中包括單一媒體 表述或者不同媒體表述的組合。
全文摘要
本發(fā)明實(shí)施例公開了一種實(shí)現(xiàn)基于超文本傳輸協(xié)議的流媒體業(yè)務(wù)的方法,包括客戶端向服務(wù)器發(fā)出請求,所述請求用于使服務(wù)器根據(jù)所述請求向客戶端返回?cái)y帶媒體呈現(xiàn)描述文件的響應(yīng),客戶端建立和服務(wù)器的時(shí)間同步關(guān)系,客戶端確定需要播放的媒體片斷的統(tǒng)一資源定位符URL,客戶端向服務(wù)器發(fā)送需要播放的媒體片斷對應(yīng)的統(tǒng)一資源定位符以請求媒體片斷文件,客戶端接收服務(wù)器返回的對應(yīng)所述統(tǒng)一資源定位符的媒體片斷文件并播放。通過本發(fā)明實(shí)施例實(shí)現(xiàn)基于HTTP的流媒體直播服務(wù)。
文檔編號H04L29/08GK102055789SQ20101028218
公開日2011年5月11日 申請日期2009年11月9日 優(yōu)先權(quán)日2009年11月9日
發(fā)明者張少波 申請人:華為技術(shù)有限公司