亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

流媒體內(nèi)容的播放方法、裝置及系統(tǒng)的制作方法

文檔序號:7896445閱讀:145來源:國知局
專利名稱:流媒體內(nèi)容的播放方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種流媒體內(nèi)容的播放方法、裝置及系統(tǒng)。
背景技術(shù)
流媒體是一種采用流式傳輸?shù)姆绞皆诰W(wǎng)絡(luò)上傳輸?shù)拿襟w格式?,F(xiàn)有技術(shù)播放流媒 體內(nèi)容的方法是由內(nèi)容源提供數(shù)據(jù)來源;內(nèi)容準備模塊根據(jù)數(shù)據(jù)來源的內(nèi)容輸入及相關(guān) 環(huán)境信息進行內(nèi)容分片和生成元數(shù)據(jù),并將內(nèi)容分片和元數(shù)據(jù)發(fā)布到流媒體服務(wù)器;流媒 體播放器獲取到元數(shù)據(jù)的網(wǎng)頁地址(Uniform/Universal Resource Locator,URL),并到流 媒體服務(wù)器請求獲取元數(shù)據(jù),其中,元數(shù)據(jù)用于描述分片信息;流媒體服務(wù)器將元數(shù)據(jù)發(fā)送 給流媒體播放器;流媒體播放器解析獲得的元數(shù)據(jù),得到內(nèi)容分片信息,并根據(jù)內(nèi)容分片信 息到流媒體服務(wù)器請求內(nèi)容分片;流媒體服務(wù)器將內(nèi)容分片發(fā)送給流媒體播放器;流媒體 播放器播放內(nèi)容分片。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn),現(xiàn)有技術(shù)至少存在如下問題采用分片方式 播放流媒體內(nèi)容,需要增加內(nèi)容準備模塊,用于元數(shù)據(jù)和分片的生成,實現(xiàn)成本較高;由于 不同帶寬、不同流媒體播放器對內(nèi)容分片大小需求不一,導致較難控制內(nèi)容分片大小,增加 了流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度;內(nèi)容分片的產(chǎn)生增加了流媒體內(nèi)容的播放系統(tǒng)的 管理難度,并且在節(jié)目源較多的情況下,會產(chǎn)生很多內(nèi)容分片,容易造成流媒體內(nèi)容的播放 系統(tǒng)的性能的降低。

發(fā)明內(nèi)容
本發(fā)明的實施例提供一種流媒體內(nèi)容的播放方法、裝置及系統(tǒng),能夠使用終端增 強的方式實現(xiàn)流媒體內(nèi)容的播放。一方面,提供了一種流媒體內(nèi)容的播放方法,包括流媒體播放器接收待播放的流 媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流媒體數(shù)據(jù)是新流媒體格式的流媒體數(shù)據(jù),所述新 流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引hdex,以及一個或多個新流媒體包, 其中Head用于描述文件的媒體信息,^dex用于存放視頻關(guān)鍵幀位置的索引表,所述^dex 中的元素按照時間戳從小到大的順序存放;所述新流媒體包用于存放一個視頻幀或者一個 或多個音頻幀,所述新流媒體包按照時間戳從小到大的順序存放;緩存并解析所述新流媒 體格式的流媒體數(shù)據(jù),當接收到的流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,播放所述 流媒體數(shù)據(jù)對應的流媒體內(nèi)容。另一方面,提供了一種流媒體播放器,包括接收模塊,用于接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流媒體數(shù) 據(jù)是新流媒體格式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head, 索引hdex,以及一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于 存放視頻關(guān)鍵幀位置的索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所 述新流媒體包用于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從 小到大的順序存放;
內(nèi)容播放模塊,用于緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),當接收到的流 媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。又一方面,提供了一種新流媒體格式轉(zhuǎn)換模塊裝置,包括格式轉(zhuǎn)換模塊,用于將待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù)轉(zhuǎn)換成新流媒體格 式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引hdex,以及 一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放視頻關(guān)鍵幀 位置的索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所述新流媒體包用 于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到大的順序存 放;數(shù)據(jù)流發(fā)送模塊,用于發(fā)送所述新流媒體格式的流媒體數(shù)據(jù)。又一方面,還提供了包含上述新流媒體格式轉(zhuǎn)換模塊裝置的一種系統(tǒng),進一步包 含流媒體服務(wù)器和編碼器,其中所述新流媒體格式轉(zhuǎn)換模塊裝置可以獨立設(shè)置,也可以設(shè) 置在所述流媒體服務(wù)器或者所述編碼器上。本發(fā)明實施例提供的流媒體內(nèi)容的播放方法、裝置及系統(tǒng),流媒體播放器接收流 媒體服務(wù)器按照流媒體內(nèi)容的播放順序發(fā)送的流媒體數(shù)據(jù),可以保證播放流媒體內(nèi)容時, 不會出錯;流媒體播放器緩沖流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限時,流媒體播放 器可以實現(xiàn)流媒體內(nèi)容的正常播放,不需要對流媒體數(shù)據(jù)進行內(nèi)容分片,使播放流媒體內(nèi) 容的實現(xiàn)成本降低、流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度降低以及降低管理難度和能夠提 高流媒體內(nèi)容的播放系統(tǒng)的性能。本發(fā)明實施例解決了現(xiàn)有技術(shù)中,由于采用分片方式播 放流媒體內(nèi)容,造成的流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度高的問題。


圖IA為一實施例提供的流媒體內(nèi)容的播放系統(tǒng)的組織架構(gòu)示意圖;圖IB為一實施例提供的新流媒體格式的數(shù)據(jù)結(jié)構(gòu)示意圖;圖2為一實施例提供的流媒體內(nèi)容的播放方法的流程示意圖;圖3為另一實施例提供的點播流媒體內(nèi)容的播放方法的流程示意圖;圖4為另一實施例提供的直播播流媒體內(nèi)容的播放方法的流程示意圖;圖5為一實施例提供的流媒體播放器結(jié)構(gòu)示意圖;圖6為另一實施例提供的流媒體播放器結(jié)構(gòu)示意圖;圖7為圖5所示的本發(fā)明實施例提供的流媒體播放器中接收模塊結(jié)構(gòu)示意圖;圖8為一實施例提供的新流媒體格式轉(zhuǎn)化裝置的結(jié)構(gòu)示意圖;圖9為圖8所示的新流媒體格式轉(zhuǎn)化裝置,及圖1所示系統(tǒng)的工作原理示意具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整的描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于 本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的其他實施 例,都屬于本發(fā)明保護的范圍。為了解決現(xiàn)有技術(shù)由于采用內(nèi)容分片方式播放流媒體內(nèi)容,造成的流媒體內(nèi)容的度高的問題,本發(fā)明實施例提供一種流媒體內(nèi)容的播放方法、裝置及 系統(tǒng)。參考圖1A,一個系統(tǒng)組網(wǎng)的示意圖,其中包括1.編碼器用于將流媒體源文件進行編碼后發(fā)給流媒體服務(wù)器。在本實施方式 中,可以先發(fā)送給新流媒體格式轉(zhuǎn)換裝置,經(jīng)過相應處理后發(fā)送給流媒體服務(wù)器。根據(jù)播放 的源文件的類型的不同,編碼器可以分為離線編碼器和在線編碼器,其中離線編碼器,用 于對點播的源文件進行編碼,并按照時間順序?qū)?shù)據(jù)進行排列組裝,并同步給流媒體服務(wù) 器。在線編碼器,用于根據(jù)直播的數(shù)據(jù)源的輸入順序(即時間順序)對數(shù)據(jù)進行打包并實 時發(fā)送給流媒體服務(wù)器。上述編碼器可以是硬件,或者軟硬件的結(jié)合體,可以由一臺普通計算機、一塊高清 視頻采集卡和流媒體編碼軟件組成。2.新流媒體格式轉(zhuǎn)換裝置,用于將傳統(tǒng)的直播流媒體數(shù)據(jù)和點播流媒體數(shù)據(jù)轉(zhuǎn)換 成新流媒體格式,可以單獨設(shè)置,也可以集成在流媒體服務(wù)器或者編碼器當中實現(xiàn)。具體 的,上述新流媒體格式為本實施例提供的一種新的流媒體格式,為描述方便,簡稱為HPEM 格式,High Power Engine Media,其數(shù)據(jù)結(jié)構(gòu)如下,參考圖IB (1)該新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括了三個部分 消息頭Head 用于描述文件的媒體信息。 索引^idex 用于存放視頻關(guān)鍵幀位置的索引表。 新流媒體包,即HPEM包用于存放實際的視音頻數(shù)據(jù)幀。(2) Index表中存放了所有關(guān)鍵幀的位置信息。(3) Index表中的元素按照時間戳從小到大的順序存放。(4)每個新流媒體包存放一幀視頻或多幀音頻。(具體的,對于音頻幀可以采取合 并的方式存放)。(5)各新流媒體包按照時間戳從小到大的順序存放。需要說明的是,新流媒體格式可以進一步擴展,包括所有滿足其基本要求的更為 具體的媒體格式。該新流媒體格式轉(zhuǎn)換裝置可以是硬件,或者軟件與硬件的結(jié)合體,例如滿 足該新流媒體格式的編碼軟件和計算機的結(jié)合。3.流媒體服務(wù)器用于接收編碼器編碼后的流媒體數(shù)據(jù),根據(jù)流媒體播放器的請 求向流媒體播放器發(fā)送流媒體數(shù)據(jù)。本實施例中,流媒體服務(wù)器接收的流媒體數(shù)據(jù)是上述 新流媒體格式轉(zhuǎn)換裝置經(jīng)過處理后的新流媒體格式的流媒體數(shù)據(jù),并根據(jù)流媒體播放器的 請求進行相應處理。該流媒體服務(wù)器,可以支持各種流媒體播放的承載協(xié)議,例如HTTP協(xié)議,或者RTP 協(xié)議,即可以以HTTP或者RTP方式發(fā)送和接收數(shù)據(jù)。以HTTP協(xié)議為例,對于點播內(nèi)容,流媒 體服務(wù)器可以在http協(xié)議中返回Content-Length信息,向流媒體播放器表明點播文件的 實際大小。對于直播內(nèi)容,流媒體服務(wù)器可以在http返回Content-Length信息,指示一個 自定義的值,通??梢詾樽畲笞匀粩?shù)值或者由流媒體播放器與流媒體服務(wù)器約定一個值, 流媒體終端接收后可以忽略這個值,既不影響HTTP協(xié)議的實現(xiàn),還可以保證流媒體播放器 實現(xiàn)的簡潔性?,F(xiàn)實中,流媒體服務(wù)器可以由流媒體軟件系統(tǒng)的服務(wù)器部分和一臺硬件服務(wù)器組
6成,負責管理、存儲、分發(fā)編碼器傳上來的流媒體節(jié)目。4.流媒體播放器可以是運行在移動設(shè)備中的流媒體客戶端也可以是獨立的移 動終端,具備業(yè)務(wù)瀏覽和流媒體播放能力。本實施例提供的流媒體播放器,可以按照HTTP 下載方式或者RTP等多種承載方式從流媒體服務(wù)器獲取新流媒體格式的流媒體數(shù)據(jù),緩存 并解析該新流媒體格式的流媒體數(shù)據(jù),當接收到的流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存 門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。更為具體的,對于直播,流媒體播放器可以進一步用于忽略流媒體服務(wù)器返回的 Content-Length信息,持續(xù)從流媒體服務(wù)器獲取數(shù)據(jù)進行解碼播放直到用戶停止。類似的,對于點播,流媒體播放器可以進一步用于實現(xiàn)SEEK功能。具體的,用戶進 行%4操作,例如點擊快進、快退、或者拖動播放進度等控制鍵,流媒體播放器流媒體播放 器可以接收用戶的^ek操作請求,根據(jù)kek操作請求中攜帶的位置信息計算需要定位的 文件位置,并在向流媒體服務(wù)器重新發(fā)送的http請求的Range字段攜帶前述文件位置,流 媒體服務(wù)器根據(jù)Range字段從相應的文件位置返回流媒體數(shù)據(jù)。其中,Seek操作是針對流媒體播放的暫停、播放、快進、快退、慢進,慢退,或者向前 /向后拖動播放進度等對流媒體播放位置進行改變的操作指令?,F(xiàn)實中的終端播放器,也可以叫解碼器,可以由流媒體系統(tǒng)的播放軟件和計算機 組成,可以用來播放用戶想要收看的流媒體服務(wù)器上的視頻節(jié)目。如圖IB所示,一個本發(fā)明實施例提供的流媒體內(nèi)容的播放方法,可以包括步驟101,流媒體播放器接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù)。其中,流媒 體數(shù)據(jù)是符合前文所述的新流媒體數(shù)據(jù)結(jié)構(gòu)的,可以使播放流媒體內(nèi)容時,按照流媒體內(nèi) 容的本來的播放順序在終端上進行播放,不會出現(xiàn)播放錯誤,并且該格式比現(xiàn)有技術(shù)中的 內(nèi)容分片格式簡單,易于實現(xiàn)播放系統(tǒng)的簡化和各種功能的實現(xiàn)。步驟102,流媒體播放器緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),如果接收到 的流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,該流媒體播放器播放流媒體數(shù)據(jù)對應的流 媒體內(nèi)容。具體的,流媒體數(shù)據(jù)緩存門限可以是在流媒體播放請求時或者播放過程中,終端 處理能力和/或網(wǎng)絡(luò)處理能力設(shè)置的值。例如,該值指新流媒體格式的流媒體數(shù)據(jù)的HPEM 包的量達到自然數(shù)M。也就是說,當接收到的新流媒體格式的數(shù)據(jù)包括Header,hdex,且包 含M個HPEM包時,即認為達到了緩存門限。其中,當終端處理能力越低,或者網(wǎng)絡(luò)處理能力 越好的時候,可以將M設(shè)置的較小一些;當終端處理能力越高,或者網(wǎng)絡(luò)處理能力越差的時 候,可以將M設(shè)置的較高一些;也可以將終端處理能力和網(wǎng)絡(luò)處理能力進行綜合考慮,確定 一個一方面終端能夠流暢處理另一方面不受網(wǎng)絡(luò)處理能力限制的M值。更具體的,流媒體播放器可以進步一根據(jù)流媒體內(nèi)容的長度進行進一步的限定, 也就是說,前述M應該小于待播放流媒體內(nèi)容的長度。在點播的過程中,該長度是流媒體內(nèi) 容的實際長度,在直播的過程中,該長度可以是約定的長度,但是流媒體播放器也可以忽略 這個流媒體內(nèi)容的長度。另一個可以替換的方案中,流媒體數(shù)據(jù)緩存門限可以是預先接收用戶或者系統(tǒng)的 指令,根據(jù)所述指令設(shè)置的。該指令可以以方便用戶或者系統(tǒng)操作員的方式,例如以時間為 單位,例如5秒,10秒,或者其它合適的值。流媒體終端可以將該以時間為單位的緩存門限轉(zhuǎn)化為前述新流媒體格式中的HPEM包的個數(shù)M,或者還可以直接以HPEM包中的時間戳信息 判斷是否達到該以時間為單位的緩存門限??偠灾?,該新流媒體格式下,流媒體數(shù)據(jù)的緩存門限將比內(nèi)容分片形式下的緩 存門限更為簡單,既便于簡單的攜帶也便于簡單的解析,從而整體上節(jié)約了流媒體播放系 統(tǒng)的通信資源。本實施例提供的流媒體內(nèi)容的播放方法,可以采用HTTP協(xié)議或者RTP協(xié)議。實際 接收和發(fā)送數(shù)據(jù)可以有多種方式,在此不一一贅述。本實施例提供的流媒體內(nèi)容的播放方法,接收流媒體服務(wù)器按照流媒體內(nèi)容的播 放順序發(fā)送的流媒體數(shù)據(jù),可以保證播放流媒體內(nèi)容時,不會出錯;緩沖流媒體數(shù)據(jù)總流量 達到流媒體數(shù)據(jù)緩存門限時,可以實現(xiàn)流媒體內(nèi)容的正常播放,不需要對流媒體數(shù)據(jù)進行 內(nèi)容分片,使播放流媒體內(nèi)容的實現(xiàn)成本降低、流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度降低 以及降低管理難度和能夠提高流媒體內(nèi)容的播放系統(tǒng)的性能。本發(fā)明實施例解決了現(xiàn)有技 術(shù)中,由于采用分片方式播放流媒體內(nèi)容,造成的流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度高 問題。前述的流媒體內(nèi)容的播放方法,還可以包括由網(wǎng)絡(luò)系統(tǒng),例如上述新流媒體格式 轉(zhuǎn)換裝置、流媒體服務(wù)器以及編碼器構(gòu)成的系統(tǒng),將待播放的一般格式的流媒體數(shù)據(jù)轉(zhuǎn)化 為所述新流媒體格式的流媒體數(shù)據(jù)并發(fā)送給所述流媒體播放器,即按照待播放的流媒體內(nèi) 容的播放順序,向流媒體播放器發(fā)送流媒體內(nèi)容對應的流媒體數(shù)據(jù),以使得流媒體播放器 在接收到的流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限時,播放流媒體數(shù)據(jù)對應的流媒體 內(nèi)容。參考圖3,以承載協(xié)議為HTTP協(xié)議為例,對于點播情況下的流媒體播放流程,具體 包括301.點播編碼器(即離線編碼器)請求新流媒體格式轉(zhuǎn)換裝置將傳統(tǒng)格式轉(zhuǎn)換成 新流媒體格式媒體文件。302.新流媒體格式轉(zhuǎn)換裝置將傳統(tǒng)格式轉(zhuǎn)換成新流媒體格式媒體文件后,發(fā)送給 點播編碼器。303.點播編碼器將新流媒體格式同步給流媒體服務(wù)器。需要說明的是以上步驟301-303也可以是新流媒體格式轉(zhuǎn)碼裝置將流媒體數(shù)據(jù) 直接同步給流媒體服務(wù)器等方式。上述點播編碼器、新流媒體格式轉(zhuǎn)換裝置以及流媒體服 務(wù)器中的任一兩個或者三個可以設(shè)置在一個實體設(shè)備上,上述步驟301-303可能因為實體 設(shè)備的設(shè)置不同而不同,只要實現(xiàn)流媒體服務(wù)器上待播放的流媒體內(nèi)容以前文的新流媒體 格式存儲即可。304.流媒體播放器獲取點播節(jié)目源的播放地址。305.流媒體播放器向流媒體服務(wù)器發(fā)送HTTP播放請求。306.流媒體服務(wù)器向流媒體播放器返回播放響應,例如,HTTP 2000K,其中可以在 Content-Length字段中返回點播的流媒體內(nèi)容的實際文件大小。307.流媒體服務(wù)器返回實際的內(nèi)容數(shù)據(jù),即以新流媒體格式發(fā)送給流媒體播放
器ο308.流媒體播放器解析獲取到的新流媒體格式的數(shù)據(jù),確定需要緩沖的數(shù)據(jù)(即確定緩存門限)并緩沖相應數(shù)據(jù)后,進行解碼播放。如前文所述,流媒體播放器可以根據(jù)當前獲取到的流媒體數(shù)據(jù)的文件信息,參考 終端能力信息或者網(wǎng)絡(luò)能力信息,臨時確定緩存門限,緩存門限可以為至少包括消息頭 Head,索引hdex,以及自然數(shù)M個新流媒體包,所述M小于所述待播放的流媒體內(nèi)容的長度信息。也可能是事先接收用戶或者系統(tǒng)的緩存門限指令,例如用戶或者系統(tǒng)可以指令緩 存門限為5秒,10秒或者任意一時間段,可以是符合人們觀看的合適的經(jīng)驗值。309.用戶發(fā)起%4操作(例如暫停、播放、快進、快退、慢進、慢退或者拖動播放進 度等操作)。310.流媒體播放器根據(jù)kek操作中攜帶的的位置信息計算相應的文件位置。311.流媒體播放器重新發(fā)起Http請求,并其中Range字段攜帶該kek操作指向 的文件位置?,F(xiàn)實中,該文件位置也可以是相對時間點。312.流媒體服務(wù)器根據(jù)Range字段定位到相應的文件位置,并從所述文件位置起 下發(fā)媒體數(shù)據(jù)。313.流媒體播放器完成播放后,可以關(guān)閉連接。上述圖3所示的實施例是以HTTP協(xié)議為例的,本領(lǐng)域技術(shù)人員可以理解,其它協(xié) 議例如RTSP/RTP協(xié)議中可以根據(jù)協(xié)議的不同進行適應性的調(diào)整,例如對于RTSP/RTP協(xié)議 中的SEEK操作,可以通過命令Pause+Play完成,當流媒體播放器發(fā)出Play命令的時候?qū)?kek操作指向的文件位置(例如時間點)通知給流媒體服務(wù)器。由于采取了前述所述的新流媒體格式,seek操作所指向的文件位置可以簡單的以 時間點或者第一 N個新流媒體包來簡單的標識,從而方便的實現(xiàn)流媒體播放過程中的各種 播放控制功能。而在現(xiàn)有技術(shù)以內(nèi)容分片的格式存儲的流媒體文件,很難如此簡單的說明 流媒體內(nèi)容的所在位置,因為該位置的流媒體內(nèi)容可能分別存在在多個內(nèi)容分片(即小的 媒體文件)上。參考圖4,另一個具體實施方式
中,也以HTTP協(xié)議為例,直播情況下的流媒體播放 流程包括401.流媒體播放器獲取直播節(jié)目源的播放地址。402.流媒體播放器向流媒體服務(wù)器發(fā)送HTTP播放請求。403.流媒體服務(wù)器向流媒體播放器返回響應,例如HTTP 200 0K,其中可以包含內(nèi) 容長度Content-Length字段,其值可以為一個系統(tǒng)允許的最大自然數(shù)值或者與流媒體播 放器經(jīng)過協(xié)商的約定值。404.流媒體服務(wù)器向直播編碼器(即在線編碼器)發(fā)送媒體請求。405.直播編碼器接收前述媒體請求后向新流媒體格式轉(zhuǎn)換裝置發(fā)送格式轉(zhuǎn)換請 求。 406.新流媒體格式轉(zhuǎn)換裝置將轉(zhuǎn)換后的新流媒體格式流發(fā)送給直播編碼器。407.直播編碼器將新流媒體格式的流媒體數(shù)據(jù)發(fā)送給流媒體服務(wù)器。需要說明的是,以上步驟401-407也可以是新流媒體格式轉(zhuǎn)碼裝置將流媒體數(shù)據(jù) 直接同步給流媒體服務(wù)器等方式。上述直播編碼器、新流媒體格式轉(zhuǎn)換裝置以及流媒體服 務(wù)器中的任一兩個或者三個可以設(shè)置在一個實體設(shè)備上,上述步驟401-407可能因為實體設(shè)備的設(shè)置不同而不同,只要實現(xiàn)流媒體服務(wù)器上待播放的流媒體內(nèi)容以前述的新流媒體 格式存儲即可。408.流媒體服務(wù)器向流媒體播放器返回實際的流媒體數(shù)據(jù),該流媒體數(shù)據(jù)為該新 流媒體格式的數(shù)據(jù)。409.流媒體播放器忽略前述403中的Content-Length字段,并解析獲取到的數(shù) 據(jù),根據(jù)終端能力或者網(wǎng)絡(luò)能力或者根據(jù)預先的設(shè)定值確定需要緩沖的數(shù)據(jù)量,并緩沖相 應數(shù)據(jù)后,進行解碼播放。410.流媒體播放器完成播放后,可以關(guān)閉連接。從上述圖4所示的實施例可以看出,在直播的過程中,流媒體播放器不會出現(xiàn)需 要調(diào)整播放位置的需求。該實施例清楚的說明,本發(fā)明實施例中提供的新流媒體格式可以 方便的以HTTP協(xié)議或者RTSP/RTP等不同協(xié)議進行承載,而不需要改變前述協(xié)議中的任何 信令。具體的,流媒體終端在直播和點播的不同情況下,可以約定利用或者不利用前述協(xié)議 中某些信令中的值(例如Content-Length字段中的流媒體文件大小的值),簡單的實現(xiàn)播 放的過程。本實施例提供的流媒體內(nèi)容的播放方法,流媒體播放器接收流媒體服務(wù)器按照流 媒體內(nèi)容的播放順序發(fā)送的流媒體數(shù)據(jù),可以保證播放流媒體內(nèi)容時,不會出錯;流媒體播 放器緩沖流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限時,流媒體播放器可以實現(xiàn)流媒體內(nèi) 容的正常播放,不需要對流媒體數(shù)據(jù)進行內(nèi)容分片,使播放流媒體內(nèi)容的實現(xiàn)成本降低、流 媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度降低以及降低管理難度和能夠提高流媒體內(nèi)容的播放 系統(tǒng)的性能。本發(fā)明實施例解決了現(xiàn)有技術(shù)中,由于采用分片方式播放流媒體內(nèi)容,造成的 流媒體內(nèi)容的播放系統(tǒng)實現(xiàn)的復雜度高以及管理難度大和系統(tǒng)性能低的問題。實施方式中 的新流媒體格式簡單,要求低,新流媒體轉(zhuǎn)換模塊能夠很方便的支持傳統(tǒng)流行的文件格式, 如3gp等。并且,新流媒體轉(zhuǎn)換模塊實現(xiàn)簡單;該新流媒體格式有效負載高,便于低帶寬網(wǎng) 絡(luò)中數(shù)據(jù)的傳輸。如圖5所示的另一實施例提供的流媒體播放器的結(jié)構(gòu)示意圖,該流媒體播放器包 括接收模塊501,用于接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流 媒體數(shù)據(jù)是新流媒體格式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭 Head,索引hdex,以及一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index 用于存放視頻關(guān)鍵幀位置的索引表,所述^dex中的元素按照時間戳從小到大的順序存 放;所述新流媒體包用于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時 間戳從小到大的順序存放;內(nèi)容播放模塊502,用于緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),當接收到的 流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。在本實施例中,內(nèi)容播放模塊502可以不需要對流媒體內(nèi)容進行內(nèi)容分片,從而 簡單的實現(xiàn)流媒體內(nèi)容的播放。進一步的,進一步的,如圖6所示,流媒體播放器還可以包括第一設(shè)置子模塊5031,用于根據(jù)終端處理能力和/或網(wǎng)絡(luò)處理能力設(shè)置所述流媒 體數(shù)據(jù)緩存門限,所述流媒體數(shù)據(jù)緩存門限為至少包括消息頭Head,索引hdex,以及自然數(shù)M個新流媒體包。具體而言,第一設(shè)置子模塊5031,可以用于進一步獲取所述待播放的流媒體內(nèi)容 的長度信息,進一步根據(jù)所述流媒體內(nèi)容的長度信息設(shè)置所述流媒體數(shù)據(jù)緩存門限,所述M 小于所述待播放的流媒體內(nèi)容的長度信息。該待播放的流媒體內(nèi)容的長度信息可以是由 流媒體服務(wù)器在響應消息的Content-Length字段中返回點播的流媒體內(nèi)容的實際文件大 小,或者直播的流媒體的系統(tǒng)允許的最大自然數(shù)值或者流媒體服務(wù)器與流媒體播放器的經(jīng) 過協(xié)商的約定值?;蛘撸鐖D6所示,流媒體播放器還可以包括第二設(shè)置子模塊5032,用于預先接收用戶或者系統(tǒng)的指令,根據(jù)所述用戶或者系 統(tǒng)的指令設(shè)置所述流媒體數(shù)據(jù)緩存門限。其具體實現(xiàn)可以參見前述方法。在本實施例中,節(jié)目源是直播節(jié)目源時,接收模塊501可以忽略流媒體服務(wù)器向 流媒體播放器發(fā)送的響應信息中的流媒體內(nèi)容的長度信息,直接接收流媒體服務(wù)器向流媒 體播放器發(fā)送的流媒體數(shù)據(jù)。進一步的,為了可以在實現(xiàn)流媒體內(nèi)容的點播播放時,實現(xiàn)流媒體內(nèi)容的播放位 置操作,即seek操作,接收模塊501,如圖7所示,還可以包括seek獲取子模塊5011,用于接收用戶發(fā)起的播放時間kek操作,根據(jù)所述kek 操作攜帶的位置信息計算所述^ek操作指向的文件位置。seek發(fā)送子模塊5012,用于向流媒體服務(wù)器發(fā)送播放請求,并在所述播放請求中 (例如HTTP協(xié)議的Range字段或者RTSP/RTP協(xié)議的Play命令)攜帶所述kek操作指向 的文件位置;數(shù)據(jù)流接收子模塊5013用于接收所述流媒體服務(wù)器從所述文件位置起下發(fā)媒體 數(shù)據(jù)起發(fā)送的流媒體數(shù)據(jù)。本發(fā)明另一實施例提供的一種新流媒體格式轉(zhuǎn)換模塊裝置,如圖10所示,包括格 式轉(zhuǎn)換模塊801,用于將待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù)轉(zhuǎn)換成新流媒體格式的流 媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引hdex,以及一個或 多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放視頻關(guān)鍵幀位置的 索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所述新流媒體包用于存放 一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到大的順序存放;數(shù)據(jù)流發(fā)送模塊802,用于發(fā)送所述新流媒體格式的流媒體數(shù)據(jù)。其中上述新流媒體格式轉(zhuǎn)換模塊裝置可以獨立設(shè)置,也可以設(shè)置在所述流媒體服 務(wù)器或者所述編碼器上??梢跃唧w工作原理可以參考前文圖2、圖3,圖4所示的方法。另一個實施方式中,提供一種網(wǎng)絡(luò)系統(tǒng),同樣參考圖1,圖9,可以包括前述的圖8 所示的新流媒體格式轉(zhuǎn)換裝置;以及,流媒體服務(wù)器,用于向所述流媒體播放器發(fā)送流媒體 數(shù)據(jù);編碼器,用于將流媒體源文件進行編碼發(fā)給流媒體服務(wù)器;其中所述新流媒體格式 轉(zhuǎn)換模塊裝置可以獨立設(shè)置,也可以設(shè)置在所述流媒體服務(wù)器或者所述編碼器上。前述網(wǎng)絡(luò)系統(tǒng)的具體實現(xiàn)原理和系統(tǒng)結(jié)構(gòu)在前述圖2,圖3,圖4所示的各實施例 中清楚的進行了介紹,可以根據(jù)其工作原理以說明各裝置的功能和結(jié)構(gòu),尤其是各種執(zhí)行 的具體細節(jié)都可以在沒有技術(shù)障礙的前提下進行組合,在此不贅述。本領(lǐng)域技術(shù)人員可以理解的是,上述各裝置可以以硬件,或者軟件結(jié)合硬件的方式實現(xiàn)。各裝置之間可以根據(jù)功能關(guān)系集成或者分散設(shè)置,相關(guān)的方法可以設(shè)置在計算機 可讀介質(zhì)上,以便于在計算機讀取時控制相關(guān)設(shè)備完成前述的方案。前述實施方式中提供 的一種新的數(shù)據(jù)結(jié)構(gòu),即新的流媒體數(shù)據(jù)結(jié)構(gòu),也可以單獨或者與其載體一起作為本發(fā)明 的具體實施方式
之一。本發(fā)明實施例提供的流媒體播放方法、裝置及系統(tǒng),不僅支持傳統(tǒng)流行的文件格 式,還支持自定義的文件格式,可以廣泛的應用于IPTV、DTV、WEBTV等流媒體方案中。以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何 熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應涵 蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應所述以權(quán)利要求的保護范圍為準。
權(quán)利要求
1.一種流媒體內(nèi)容的播放方法,其特征在于,包括流媒體播放器接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流媒體數(shù)據(jù)是 新流媒體格式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引 hdex,以及一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放 視頻關(guān)鍵幀位置的索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所述新 流媒體包用于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到 大的順序存放;緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),當接收到的流媒體數(shù)據(jù)總流量達到流媒 體數(shù)據(jù)緩存門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。
2.根據(jù)權(quán)利要求1所述的流媒體內(nèi)容的播放方法,其特征在于,還包括將待播放的一般格式的流媒體數(shù)據(jù)轉(zhuǎn)化為所述新流媒體格式的流媒體數(shù)據(jù)并發(fā)送給 所述流媒體播放器。
3.根據(jù)權(quán)利要求2所述的流媒體內(nèi)容的播放方法,其特征在于,所述方法包括根據(jù)終端處理能力和/或網(wǎng)絡(luò)處理能力設(shè)置所述流媒體數(shù)據(jù)緩存門限,所述流媒體數(shù)據(jù)緩存門限為新流媒體包的數(shù)量達到自然數(shù)M個。
4.根據(jù)權(quán)利要求3所述的流媒體內(nèi)容的播放方法,其特征在于,所述方法包括進一步獲取所述待播放的流媒體內(nèi)容的長度信息,進一步根據(jù)所述流媒體內(nèi)容的長度 信息設(shè)置所述流媒體數(shù)據(jù)緩存門限,所述M小于所述待播放的流媒體內(nèi)容的長度。
5.根據(jù)權(quán)利要求2所述的流媒體內(nèi)容的播放方法,其特征在于,所述方法包括預先接收用戶或者系統(tǒng)的指令,根據(jù)所述指令設(shè)置所述流媒體數(shù)據(jù)緩存門限。
6.根據(jù)權(quán)利要求1所述的流媒體內(nèi)容的播放方法,其特征在于,當所述流媒體內(nèi)容是 點播內(nèi)容時,包括所述流媒體播放器接收用戶發(fā)起的播放時間kek操作;根據(jù)所述^ek操作攜帶的位置信息計算所述kek操作指向的文件位置;發(fā)送播放請求,并在所述播放請求中中攜帶所述kek操作指向的文件位置,以便于流 媒體服務(wù)器從所述文件位置起下發(fā)流媒體數(shù)據(jù);接收所述流媒體服務(wù)器從所述文件位置起發(fā)送的流媒體數(shù)據(jù)。
7.一種流媒體播放器,其特征在于,包括接收模塊,用于接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流媒體數(shù)據(jù)是 新流媒體格式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引 Index,以及一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放 視頻關(guān)鍵幀位置的索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所述新 流媒體包用于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到 大的順序存放;內(nèi)容播放模塊,用于緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),當接收到的流媒體 數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。
8.根據(jù)權(quán)利要求7所述的流媒體播放器,其特征在于,包括第一設(shè)置子模塊,用于根據(jù)終端處理能力和/或網(wǎng)絡(luò)處理能力設(shè)置所述流媒體數(shù)據(jù)緩 存門限,所述流媒體數(shù)據(jù)緩存門限為至少包括消息頭Head,索引hdex,以及自然數(shù)M個新流媒體包。
9.根據(jù)權(quán)利要求8所述的流媒體播放器,其特征在于,包括第一設(shè)置子模塊,進一步用于獲取所述待播放的流媒體內(nèi)容的長度信息,進一步根據(jù) 所述流媒體內(nèi)容的長度信息設(shè)置所述流媒體數(shù)據(jù)緩存門限,所述M小于所述待播放的流媒 體內(nèi)容的長度信息。
10.根據(jù)權(quán)利要求7所述的流媒體播放器,其特征在于,包括第二設(shè)置子模塊,用于預先接收用戶或者系統(tǒng)的指令,根據(jù)所述用戶或者系統(tǒng)的指令 設(shè)置所述流媒體數(shù)據(jù)緩存門限。
11.根據(jù)權(quán)利要求7所述的流媒體播放器,其特征在于,當所述流媒體內(nèi)容是點播內(nèi)容 時,所述接收模塊,包括seek獲取子模塊,用于接收用戶發(fā)起的播放時間%4操作,根據(jù)所述%4操作攜帶的 位置信息計算所述kek操作指向的文件位置;seek發(fā)送子模塊,用于向流媒體服務(wù)器發(fā)送播放請求,在所述播放請求中攜帶所述 kek操作指向的文件位置;數(shù)據(jù)流接收子模塊,用于接收所述流媒體服務(wù)器從所述文件位置起下發(fā)媒體數(shù)據(jù)起發(fā) 送的流媒體數(shù)據(jù)。
12.一種新流媒體格式轉(zhuǎn)換模塊裝置,其特征在于,包括格式轉(zhuǎn)換模塊,用于將待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù)轉(zhuǎn)換成新流媒體格式的 流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引hdex,以及一個 或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放視頻關(guān)鍵幀位置 的索引表,所述^dex中的元素按照時間戳從小到大的順序存放;所述新流媒體包用于存 放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到大的順序存放;數(shù)據(jù)流發(fā)送模塊,用于發(fā)送所述新流媒體格式的流媒體數(shù)據(jù)。
13.一種流媒體內(nèi)容的播放系統(tǒng),包括流媒體服務(wù)器,用于向所述流媒體播放器發(fā)送流 媒體數(shù)據(jù);編碼器,用于將流媒體源文件進行編碼發(fā)給流媒體服務(wù)器;其特征在于,進一步 包括權(quán)利要求12所述的新流媒體格式轉(zhuǎn)換模塊裝置;其中所述新流媒體格式轉(zhuǎn)換模塊裝置可以獨立設(shè)置,也可以設(shè)置在所述流媒體服務(wù)器 或者所述編碼器上。
全文摘要
本發(fā)明公開了一種流媒體內(nèi)容的播放方法,流媒體播放器接收待播放的流媒體內(nèi)容對應的流媒體數(shù)據(jù),其中,所述流媒體數(shù)據(jù)是新流媒體格式的流媒體數(shù)據(jù),所述新流媒體格式的數(shù)據(jù)結(jié)構(gòu)依次包括消息頭Head,索引Index,以及一個或多個新流媒體包,其中Head用于描述文件的媒體信息,Index用于存放視頻關(guān)鍵幀位置的索引表,所述Index中的元素按照時間戳從小到大的順序存放;所述新流媒體包用于存放一個視頻幀或者一個或多個音頻幀,所述新流媒體包按照時間戳從小到大的順序存放;緩存并解析所述新流媒體格式的流媒體數(shù)據(jù),當接收到的流媒體數(shù)據(jù)總流量達到流媒體數(shù)據(jù)緩存門限,播放所述流媒體數(shù)據(jù)對應的流媒體內(nèi)容。
文檔編號H04N21/238GK102131106SQ20101060069
公開日2011年7月20日 申請日期2010年12月22日 優(yōu)先權(quán)日2010年12月22日
發(fā)明者夏斌, 王菲, 黃鵬 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1