專利名稱:視頻點播的方法、系統(tǒng)及機頂盒的制作方法
技術領域:
本發(fā)明涉及視頻點播(VOD, Video on Demand)技術,尤其涉及視頻 點播的方法、系統(tǒng)及機頂盒(STB, SetTopBox)。
背景技術:
目前,基于通用分組無線服務(GPRS, General Packet Radio Service)技術 實現(xiàn)的視頻點播方法具有點播速率慢的特點,下面通過圖l對該方法進行說 明,其包括以下步驟
步驟101,機頂盒通過設置于其內(nèi)的GPRS模塊向前端服務器發(fā)送描述 (DESCRIBE)命令。
機頂盒內(nèi)存儲了前端服務器下發(fā)的片源的統(tǒng)一資源定位符(URL, Uniform Resource Locator),進行點播時,機頂盒從服務器下發(fā)的片源的URL中選取請 求進行點播的視頻節(jié)目的URL,對選取的URL進行解析。通過對URL的解析, 可以得到該視頻節(jié)目所在的前端服務器的IP地址和端口號,還可以得到前端 服務器推送該視頻節(jié)目時的頻點以及該視頻節(jié)目的節(jié)目號。
本步驟具體包括機頂盒根據(jù)解析得到的前端服務器的IP地址和端口 號向相應的前端服務器發(fā)送描述命令,該描述命令中包括機頂盒狀態(tài),如機 頂盒支持的協(xié)議。
步驟102,前端服務器接收描述命令后,向機頂盒返回描述應答消息。 前端服務器將自身支持的協(xié)議攜帶在描述應答消息中返回給機頂盒。 步驟103,機頂盒通過GPRS模塊向前端服務器發(fā)送建立(setup )命令。 所述建立命令包括請求點播的視頻節(jié)目的節(jié)目號以及頻點。 步驟104,前端服務器接收建立命令后,向機頂盒返回建立應答消息。前端服務器接收建立命令,對建立命令中包含的節(jié)目號和頻點進行確認 后,向機頂盒返回建立應答消息。
步驟105,機頂盒通過GPRS模塊向前端服務器發(fā)送點播消息(Play) 命令。
點播消息命令表示機頂盒可以接收前端服務器推送的視頻流。
步驟106,前端服務器接收點播消息命令后,向機頂盒返回點播應答消
自
該點播應答消息用于通知機頂盒準備接收^L頻流。
機頂盒接收點播應答消息后,通過高頻頭在相應頻點上進行鎖頻,等待 接收前端服務器推送的視頻流。
可見,對于現(xiàn)有的視頻點播,在機頂盒接收到前端服務器推送的視頻流 之前,需要機頂盒與前端服務器之間進行至少六次消息傳輸。由于單次消息 傳輸至少需要1.2s,這樣,在機頂盒接收到前端服務器推送的視頻流之前, 需要至少7.2s的等待時間,這導致點播速率慢。
發(fā)明內(nèi)容
本發(fā)明提供一種視頻點播的方法,該方法能夠加速視頻點播的速率。 本發(fā)明提供一種視頻點播的系統(tǒng),該系統(tǒng)能夠加速視頻點播的速率。 本發(fā)明提供一種機頂盒,該機頂盒能夠加速視頻點播的速率。 一種視頻點播的方法,該方法包括
機頂盒組裝點播消息命令,該點播消息命令中包括點播命令、指示為點播
命令的第一序號、頻點和節(jié)目號;
機頂盒將組裝的點播消息命令發(fā)送給前端服務器,并保存點播消息命令;
機頂盒在所述頻點上進行鎖頻,等待接收前端服務器推送的視頻流;
機頂盒將保存的點播消息在設定時間點重新發(fā)送給前端服務器,前端服務
器對包含第一序號的點播消息命令不做重復處理。
一種視頻點播的系統(tǒng),該系統(tǒng)包括機頂盒和前端服務器;所述機頂盒,用于組裝點播消息命令,該點播消息命令中包括點播命令、
指示為點播命令的第一序號、頻點和節(jié)目號;將組裝的點播消息命令發(fā)送給前 端服務器,并保存點播消息命令;在所述頻點上進行鎖頻,等待接收前端服務 器推送的視頻流;將保存的點播消息在設定時間點重新發(fā)送給前端服務器;
所述前端服務器,用于接收機頂盒發(fā)送的點播消息命令,在所述頻點上將 所述節(jié)目號對應的視頻節(jié)目通過^f見頻流的方式推送給機頂盒;并且,前端服務 器對包含第一序號的點播消息命令不做重復處理。
一種機頂盒,該機頂盒包括消息命令發(fā)送模塊、高頻頭、消息命令重發(fā)模
塊;
所述消息命令發(fā)送模塊,用于組裝點播消息命令,該點播消息命令中包括 點播命令、指示為點播命令的第一序號、頻點和節(jié)目號;將組裝的點播消息命 令發(fā)送給前端服務器,并將點播消息命令保存到消息命令重發(fā)模塊;將所述頻 點發(fā)送給高頻頭;
所述高頻頭,用于在所述頻點上進行鎖頻,等待接收前端服務器推送的視 頻流;
所述消息命令重發(fā)模塊,將保存的點播消息在設定時間點重新發(fā)送給前端 服務器。
采用本發(fā)明方案進行視頻點播,通常情況下,在接收到前端服務器推送 的視頻流之前,與前端服務器之間的消息傳輸為一次,即向前端服務器發(fā)送 一次點播消息命令;為避免前端服務器沒有接收到點播消息命令的情況出 現(xiàn),本發(fā)明將保存的點播消息在設定時間點重新發(fā)送給前端服務器,前端服 務器對包含第一序號的點播消息命令不做重復處理。可見,與現(xiàn)有技術中在 接收到前端服務器推送的視頻流之前需要與前端服務器之間進行至少六次 消息傳輸相比較,節(jié)省了時間,加快了視頻點播的速率。
圖1為現(xiàn)有技術中視頻點播的方法流程圖;圖2為本發(fā)明視頻點播的方法示例性流程圖3為本發(fā)明視頻點播的方法流程圖實例一,由圖3-A、圖3-B組成; 圖4為本發(fā)明視頻點播的方法流程圖實例二; 圖5為本發(fā)明視頻點播的系統(tǒng)結構示意圖。
具體實施例方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,下面結合實施例和 附圖,對本發(fā)明進一步詳細說明。
本發(fā)明中,在機頂盒接收到前端服務器推送的視頻流之前,機頂盒與前 端服務器只進行一次消息傳輸,即機頂盒向前端服務器發(fā)送一次點播消息命 令,該點播消息命令中包括點播命令、第一序號、頻點和節(jié)目號,前端服務 器根據(jù)接收到的點播消息命令推送視頻;并且,為避免前端服務器沒有接收 到點播消息命令的情況出現(xiàn),本發(fā)明將保存的點播消息在設定時間點重新發(fā) 送給前端服務器,前端服務器對包含第一序號的點播消息命令不做重復處 理。
下面通過圖2對本發(fā)明視頻點播的方法進行說明,該方法包括以下步
驟
步驟201,組裝點播消息命令。
機頂盒內(nèi)存儲了前端服務器下發(fā)的片源的URL,進行點播時,機頂盒從服 務器下發(fā)的片源的URL中選取請求進行點播的視頻節(jié)目的URL,對選取的URL 進行解析。通過對URL的解析,可以得到該視頻節(jié)目所在的前端服務器的IP 地址和端口號,還可以得到前端服務器推送該視頻節(jié)目時的頻點以及該視頻 節(jié)目的節(jié)目號。
本步驟組裝的該點播消息命令中包括控制命令、第一序號、頻點和節(jié)目號, 該控制命令為點播命令。
步驟202,將組裝的點播消息命令發(fā)送給前端服務器,并保存點播消息命令。本步驟具體包括機頂盒根據(jù)解析得到的前端服務器的IP地址和端口號向相應的前端服務器發(fā)送點播消息命令。
組裝點播消息命令、發(fā)送點播消息命令和保存點播消息命令,都在機頂盒的內(nèi)存中進行,使用內(nèi)存時需要獲取與該內(nèi)存的地址對應的信號量,在同一時刻,該信號量只能被唯一使用,也就是,該信號量的使用是互相排斥的;因此,本發(fā)明可以在步驟201之前預先創(chuàng)建對應內(nèi)存空間的發(fā)送數(shù)據(jù)互斥量,創(chuàng)建了發(fā)送數(shù)據(jù)互斥量,等待發(fā)送數(shù)據(jù)互斥量成功后再進行上述步驟,便可保證上述步驟的正常執(zhí)行。本步驟中,保存點播消息命令之后,可釋放創(chuàng)建的該發(fā)送數(shù)據(jù)互斥量。釋放后,后續(xù)可再次使用該發(fā)送數(shù)據(jù)互斥量,再次使用時,需等待發(fā)送數(shù)據(jù)互斥量,如果等待發(fā)送數(shù)據(jù)互斥量成功,便可使用。相反地,如果在步驟201之前預先不創(chuàng)建保護發(fā)送消息命令的發(fā)送數(shù)據(jù)互斥量,而直接執(zhí)行步驟201,則可能出現(xiàn)請求使用的內(nèi)存不處于空閑狀態(tài),則不能保證上述步驟的正常執(zhí)行。
在本發(fā)明的視頻點播流程中,創(chuàng)建發(fā)送數(shù)據(jù)互斥量的技術為可選。步驟203,在所述頻點上進行鎖頻,等待接收前端服務器推送的視頻流。具體地,機頂盒的高頻頭進行鎖頻,以等待接收前端服務器推送的視頻流。步驟204,將保存的點播消息在設定時間點重新發(fā)送給前端服務器??蛇x地,所述設定時間點的到達提醒通過對定時器的設置實現(xiàn),該設定時間點為至少一個。
通過實際測試獲知,向前端服務器發(fā)送一次點播消息命令,基本就能實現(xiàn)從前端服務器獲取到請求的視頻節(jié)目;為了使本發(fā)明方案達到更好的效果,防止前端服務器沒有接收到第一次發(fā)送的點播消息命令的情形出現(xiàn),本步驟還將保存的點播消息命令在設定時間點重新發(fā)送給前端服務器。并且,為了減少對機頂盒存儲空間的占用,將保存的點播消息命令在所有的設定時間點重新發(fā)送給前端服務器之后,可刪除保存的點播消息命令。
前端服務器對包含第一序號的點播消息命令不做重復處理。在視頻點播過程中,機頂盒向前端服務器發(fā)送不同的消息命令,例如,可以是關于請求點播
9的點播消息命令,還可以是關于視頻控制的視頻控制消息命令,所述視頻控制包括對視頻節(jié)目的暫停、快進、快退、恢復等操作,不同的消息命令中包含的序號不同,例如,本發(fā)明將關于請求點播的點播消息命令中包含的序號用第一序號表示,第一序號指示了點播命令,將關于視頻控制的視頻控制消息命令中包含的序號用第二序號表示,第二序號指示了視頻控制命令。
本步驟中,前端服務器接收到點播消息命令后,如果根據(jù)序號判斷出已經(jīng)接收過該點播消息命令,則丟棄當前接收到的該點播消息命令,不進行相應操
作,即不再根據(jù)該點播消息命令向機頂盒推送視頻流;如果根據(jù)序號判斷出之前沒有接收過該點播消息命令,則根據(jù)該點播消息命令向機頂盒推送視頻流。
接收到前端服務器推送的視頻流,進行播放之后,還可對播放的視頻節(jié)目進行暫停、快進、快退、恢復等操作。這些操作的流程類似,這里以暫停、快進或快退進行舉例說明,此時,機頂盒內(nèi)的流程包括
接收用戶輸入的視頻控制指令;組裝視頻控制消息命令,將組裝的視頻控制消息命令發(fā)送給前端服務器,并保存視頻控制消息命令,該視頻控制消息命令中包括視頻控制命令、第二序號、頻點、節(jié)目號和速率;將保存的視頻控制消息命令在設定時間點重新發(fā)送給前端服務器,前端服務器對包含第二序號的視頻控制消息命令不做重復處理。并且,為了減少對機頂盒存儲空間的占用,將保存的視頻控制消息命令在所有設定時間點重新發(fā)送給前端服務器之后,可刪除保存的視頻控制消息命令。
若所述視頻控制命令為暫停,則所述速率為0;若所述視頻控制命令為快進,則所述速率為快進速率;若所述視頻控制命令為快退,則所述速率為快退速率。
下面通過圖3和圖4的流程對本發(fā)明方案進行舉例說明,圖3為機頂盒向前端服務器發(fā)送點播消息命令,請求視頻流的實例,圖4為機頂盒向前端服務器發(fā)送視頻控制消息命令,請求進行暫停、快進或快退操作的實例。
圖3-A、 3-B的流程包括以下步驟
步驟301,創(chuàng)建定時器。關于定時器的創(chuàng)建,將在步驟307中進行詳細說明。
步驟302,解析前端服務器下發(fā)的片源的URL,如果解析成功,則執(zhí)行步驟303,否則,結束流程。
機頂盒內(nèi)存儲了前端服務器下發(fā)的片源的URL,進行點播時,機頂盒從服務器下發(fā)的片源的URL中選取請求進行點播的視頻節(jié)目的URL,對選取的URL進行解析。通過對URL的解析,可以得到該視頻節(jié)目所在的前端服務器的IP地址和端口號,還可以得到前端服務器推送該;現(xiàn)頻節(jié)目時的頻點以及該視頻節(jié)目的節(jié)目號。
步驟303,創(chuàng)建保護發(fā)送消息命令的發(fā)送數(shù)據(jù)互斥量。
步驟304,等待創(chuàng)建的發(fā)送數(shù)據(jù)互斥量是否成功,如果成功,則執(zhí)行步驟305;否則,結束點播流程。
步驟305,組裝點播消息命令,將組裝的點播消息命令發(fā)送給前端服務器,并保存點播消息命令。
點播消息命令包括點播命令、第一序號、步驟302中解析得到的請求的視頻節(jié)目的頻點、以及該視頻節(jié)目的節(jié)目號??蛇x地,點播消息命令中還包括該機頂盒的標識,才幾頂盒的標識可用于前端服務器對相應機頂盒進行識別。
本步驟所述將組裝的點播消息命令發(fā)送給前端服務器具體包括首先將點播消息命令發(fā)送給機頂盒內(nèi)的GPRS模塊,再根據(jù)步驟302中解析得到的視頻節(jié)目所在的前端服務器的IP地址和端口號,由GPRS模塊向相應的前端服務器發(fā)送點播消息命令。
步驟306,通知高頻頭在點播消息命令包括的頻點上鎖頻,在該頻點上等待前端服務器推送的視頻流。
步驟307,釋放步驟303創(chuàng)建的發(fā)送數(shù)據(jù)互斥量,啟動步驟301中創(chuàng)建的定時器的第一設定時間操作。
向前端服務器發(fā)送點播消息命令之后,前端服務器可能沒有接收到點播消息命令,機頂盒就接收不到前端服務器推送的視頻流,為了避免前端服務器沒有接收到點播消息命令而導致點播失敗,在發(fā)送點播消息命令之后,啟動定時器,在設定時間點向前端服務器重新發(fā)送點播消息命令。
定時器的i殳定時間點可根據(jù)實際情況進行設定。這里,以定時器的設定時
間點依次為250ms, 500ms, 1000ms, 2000ms, 3000ms進行舉例說明,本步驟所述第一設定時間操作為250ms重發(fā)操作。這樣,在第一次發(fā)送點播消息命令之后,啟動定時器的250ms重發(fā)操作,在第一次發(fā)送點播消息命令后的250ms時向前端服務器重新發(fā)送點播消息命令,并啟動定時器的500ms重發(fā)操作,停止定時器的250ms重發(fā)操作;這樣,在第一次發(fā)送點播消息命令后的500ms時向前端服務器重新發(fā)送點播消息命令,并啟動定時器的1000ms重發(fā)操作,停止定時器的500ms重發(fā)操作;類似地,后續(xù)將相繼啟動2000ms重發(fā)操作,3000ms重發(fā)操作。本實施例為了進一步確定前端服務器能夠接收到點播消息命令,設置了 250ms, 500ms, 1000ms, 2000ms和3000ms五個設定時間點;實際測試表明, 一般情況下,最多在500ms內(nèi)便可接收到前端服務器推送的視頻流。上述流程中,步驟306和步驟307可以無序執(zhí)行。
步驟308,判斷定時器是否到達當前設定時間點,如果是,則執(zhí)行步驟309;否則,繼續(xù)等待,直到到達當前設定時間點。
本步驟所述的當前設定時間點為在第一次發(fā)送點播消息命令后的250ms。
步驟309,等待步驟303創(chuàng)建的發(fā)送數(shù)據(jù)互斥量是否成功,如果成功,則執(zhí)行步驟310;否則,結束點播流程。
步驟310,將保存的點播消息命令發(fā)送給前端服務器。
步驟311,釋放發(fā)送數(shù)據(jù)互斥量,停止定時器的當前設定時間操作,啟動下一設定時間操作。
本步驟所述定時器的當前設定時間操作為第一設定時間操作,即250ms重發(fā)操作,所述下一設定時間操作為第二設定時間操作,即500ms重發(fā)操作。
步驟312,判斷定時器的下一設定時間點是否小于或等于3000ms,如果是,則"^丸行步驟308,否則結束流程。
如果大于3000ms還沒有接收到前端服務器推送的視頻流,則放棄此次點播。
通過圖3的流程,機頂盒可以接收前端服務器推送的視頻流,在接收視頻
流之后,還可對播放的視頻節(jié)目進行暫停、快進、快退、恢復等操作。圖4為機頂盒向前端服務器發(fā)送視頻控制消息命令,以請求進行暫停操作的實例,該實例中,向前端服務器發(fā)送的視頻控制消息命令為暫??刂葡⒚?。對于視頻控制消息命令為快進控制消息命令、快退控制消息命令、恢復控制消息命令等其它視頻控制消息命令的情況,可根據(jù)圖4的流程經(jīng)過簡單的變換得到。
圖4的流程包括以下步驟
步驟401,接收到用戶輸入的暫??刂浦噶睢?br>
用戶在觀看視頻節(jié)目的過程中,通過遙控器按鍵向機頂盒輸入暫??刂浦噶?。
步驟402,終止當前定時器。
本步驟所述當前定時器,也就是圖3流程中步驟301創(chuàng)建的定時器。終止當前定時器,也就是,將定時器的計時清零。
步驟403,等待圖3流程中步驟303創(chuàng)建的發(fā)送數(shù)據(jù)互斥量是否成功,如果成功,則執(zhí)行步驟404;否則,結束流程。
步驟404,組裝暫??刂葡⒚?,保存暫??刂葡⒚畈⑾蚯岸朔掌靼l(fā)送暫??刂葡⒚?。
暫停控制消息命令包括視頻控制命令、第二序號、該視頻節(jié)目的頻點、節(jié)目號以及速率。其中,視頻控制命令為暫停命令;其中的第二序號可采用對圖3步驟305使用的第一序號加一得到??蛇x地,暫停消息命令中還包括機頂盒的標識,機頂盒的標識可用于前端服務器對相應機頂盒進行識別。
向前端服務器發(fā)送暫??刂葡⒚畹木唧w步驟包括首先將暫停消息命令發(fā)送給機頂盒內(nèi)的GPRS模塊,再根據(jù)該視頻節(jié)目所在的前端服務器的IP地址和端口號,由GPRS模塊向相應的前端服務器發(fā)送暫停消息命令。
步驟405,釋放步驟403中使用的發(fā)送數(shù)據(jù)互斥量,啟動定時器的第三設定時間操作。
這里,假設本步驟所述第三設定時間操作為250ms重發(fā)操作。
定時器的設定時間可根據(jù)實際情況進行設定。這里,假設定時器的設定時間可以依次為250ms, 500ms, 1000ms, 2000ms, 3000ms。
步驟406,獲取已經(jīng)播放的時間、命令切換時間點和設置暫停的時間點等信息,并顯示這些信息;同時保存播放速率。
本步驟是為了將視頻播放過程中的某些信息顯示給用戶。其中,已經(jīng)播放的時間,是指該視頻節(jié)目已經(jīng)播放的時間;命令切換時間點,是指當前操作與上一次操作之間的時間差,本步驟中,當前操作為暫停操作;設置暫停的時間點也就是當前時間;對于暫停操作而言,保存的播放速率為0。本步驟的實現(xiàn)與現(xiàn)有技術類似,這里不贅述。
步驟405和406可以無序4丸行。
步驟405中啟動定時器的第三設定時間操作之后,后續(xù)的流程與圖3中的步驟308-步驟312類似判斷定時器是否到達當前設定時間點,如果是,則向前端服務器發(fā)送保存的暫??刂葡⒚?,并同時啟動定時器的下 一設定時間操作;否則,繼續(xù)等待,直到到達當前設定時間點。
現(xiàn)有技術中,當需要對正在播放的視頻節(jié)目進行包括暫停、快進、快退、恢復等操作時,需要向前端服務器發(fā)送相應的消息命令;前端服務器接收該消息命令后,向機頂盒返回相應的命令應答消息,通知機頂盒前端服務器即將對視頻節(jié)目進行相應的操作;然后,前端服務器再對視頻節(jié)目進行相應的操作。此流程需要機頂盒與前端服務器之間進行至少兩次消息傳輸。而采用本發(fā)明的方案, 一般情況下機頂盒與前端服務器之間只需要一次消息傳輸即可,也就是,通常情況下機頂盒向前端服務器發(fā)送一次相應的命令消息即可,乂人而節(jié)省了時間。
參見圖5,為本發(fā)明視頻點播的系統(tǒng)結構示意圖,該系統(tǒng)包括機頂盒和前端服務器;
所述機頂盒,用于組裝點播消息命令,該點播消息命令中包括點播命令、第一序號、頻點和節(jié)目號;將組裝的點播消息命令發(fā)送給前端服務器,并保存 點播消息命令;在所述頻點上進行鎖頻,等待接收前端服務器推送的視頻流; 將保存的點播消息在設定時間點重新發(fā)送給前端服務器;
所述前端服務器,用于接收機頂盒發(fā)送的點播消息命令,在所述頻點上將 所述節(jié)目號對應的視頻節(jié)目通過視頻流的方式推送給機頂盒;并且,前端服務 器對包含第 一序號的點播消息命令不做重復處理。
可選地,該機頂盒包括消息命令發(fā)送模塊、高頻頭、消息命令重發(fā)模塊;
所述消息命令發(fā)送模塊,用于組裝點播消息命令,該點播消息命令中包括 點播命令、第一序號、頻點和節(jié)目號;將組裝的點播消息命令發(fā)送給前端服務 器,并將點播消息命令保存到消息命令重發(fā)模塊;將所述頻點發(fā)送給高頻頭;
所述高頻頭,用于在所述頻點上進行鎖頻,等待接收前端服務器推送的視 頻流;
所述消息命令重發(fā)模塊,將保存的點播消息在設定時間點重新發(fā)送給前端 服務器。
可選地,所述消息命令發(fā)送模塊包括視頻控制消息命令發(fā)送子模塊,所述 消息命令重發(fā)模塊包括視頻控制消息命令重發(fā)子模塊;
所述視頻控制消息命令發(fā)送子模塊,用于接收用戶輸入的視頻控制指令, 組裝視頻控制消息命令,將組裝的視頻控制消息命令發(fā)送給前端服務器,并將 視頻控制消息命令保存到視頻控制消息命令重發(fā)子模塊,該視頻控制消息命令 中包括視頻控制命令、第二序號、頻點、節(jié)目號和速率;
所述視頻控制消息命令重發(fā)子模塊,用于將保存的視頻控制消息命令在 設定時間點重新發(fā)送給前端服務器。前端服務器對包含第二序號的視頻控制 消息命令不做重復處理。
需要說明的是,在點播過程中機頂盒向前端服務器發(fā)送的各種消息命令 可以采用傳輸控制協(xié)議(TCP, Transmission Control Protocol)數(shù)據(jù)包的形 式,也可采用用戶數(shù)據(jù)報協(xié)議(UDP, UDP User Datagram Protocol)數(shù)據(jù) 包的形式。采用本發(fā)明方案進行視頻點播, 一般情況下,機頂盒接收到前端服務器 推送的視頻流之前,與前端服務器之間的交互為一次,即機頂盒向前端服務
器發(fā)送一次點播消息命令;同時,為避免前端服務器沒有接收到點播消息命 令的情況出現(xiàn),本發(fā)明將保存的點播消息在設定時間點重新發(fā)送給前端服務 器,前端服務器對包含第一序號的點播消息命令不做重復處理。通過實際測 試獲知,采用本發(fā)明方案進行視頻點播,在機頂盒接收到前端服務器推送的 -魄頻流之前需要最多2000ms至3000ms,即2s至3s,相比現(xiàn)有技術中需要 的至少7.2s,節(jié)省了時間,加快了點播速率。
以上所述的具體實施例,對本發(fā)明的目的、技術方案和有益效果進行了進 一步詳細說明,所應理解的是,以上所述僅為本發(fā)明的具體實施例而已,并不 用于限定本發(fā)明的保護范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、 等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1、一種視頻點播的方法,其特征在于,該方法包括機頂盒組裝點播消息命令,該點播消息命令中包括點播命令、指示為點播命令的第一序號、頻點和節(jié)目號;機頂盒將組裝的點播消息命令發(fā)送給前端服務器,并保存點播消息命令;機頂盒在所述頻點上進行鎖頻,等待接收前端服務器推送的視頻流;機頂盒將保存的點播消息在設定時間點重新發(fā)送給前端服務器,前端服務器對包含第一序號的點播消息命令不做重復處理。
2、 如權利要求l所述的方法,其特征在于,所述設定時間點的到達提醒通 過對定時器的設置實現(xiàn)。
3、 如權利要求l所述的方法,其特征在于,所述設定時間點為至少一個。
4、 如權利要求l所述的方法,其特征在于,所述機頂盒組裝點播消息命令 之前,該方法進一步包括機頂盒創(chuàng)建保護發(fā)送消息命令的發(fā)送數(shù)據(jù)互斥量;機頂盒等待所述發(fā)送數(shù) 據(jù)互斥量,如果等待所述發(fā)送數(shù)據(jù)互斥量成功,則執(zhí)行所述組裝點播消息命令 的步驟,如果等待所述發(fā)送數(shù)據(jù)互斥量失敗,則結束流程;所述保存點播消息命令之后,該方法進一步包括釋放所述發(fā)送數(shù)據(jù)互斥量;所述機頂盒將保存的點播消息命令在設定時間點重新發(fā)送給前端服務器之 前,該方法進一步包括機頂盒等待所述發(fā)送數(shù)據(jù)互斥量,如果等待所述發(fā)送 數(shù)據(jù)互斥量成功,則執(zhí)行所述將保存的點播消息命令在設定時間點重新發(fā)送給 前端服務器的步驟,如果等待所述發(fā)送數(shù)據(jù)互斥量失敗,則結束流程;所述機頂盒將保存的點播消息命令在設定時間點重新發(fā)送給前端服務器之 后,該方法進一步包括機頂盒釋放所述發(fā)送數(shù)據(jù)互斥量。
5、 如權利要求l所述的方法,其特征在于,機頂盒在所述頻點上接收到前 端服務器推送的視頻流之后,該方法進一步包括機頂盒接收用戶輸入的視頻控制指令;機頂盒組裝視頻控制消息命令,將組裝的視頻控制消息命令發(fā)送給前端服 務器,并保存視頻控制消息命令,該視頻控制消息命令中包括視頻控制命令、 指示為視頻控制命令的第二序號、頻點、節(jié)目號和速率;機頂盒將保存的視頻控制消息命令在設定時間點重新發(fā)送給前端服務器, 前端服務器對包含第二序號的視頻控制消息命令不做重復處理。
6、 如權利要求5所述的方法,其特征在于,若所述視頻控制命令為暫停, 則所述速率為0;若所述視頻控制命令為快進,則所述速率為快進速率;若所 述視頻控制命令為快退,則所述速率為快退速率。
7、 一種視頻點播的系統(tǒng),其特征在于,該系統(tǒng)包括機頂盒和前端服務器; 所述機頂盒,用于組裝點播消息命令,該點播消息命令中包括點播命令、指示為點播命令的第一序號、頻點和節(jié)目號;將組裝的點播消息命令發(fā)送給前 端服務器,并保存點播消息命令;在所述頻點上進行鎖頻,等待接收前端服務 器推送的視頻流;將保存的點播消息在設定時間點重新發(fā)送給前端服務器;所述前端服務器,用于接收機頂盒發(fā)送的點播消息命令,在所述頻點上將 所述節(jié)目號對應的視頻節(jié)目通過視頻流的方式推送給機頂盒;并且,前端服務 器對包含第 一序號的點播消息命令不做重復處理。
8、 一種機頂盒,其特征在于,該機頂盒包括消息命令發(fā)送模塊、高頻頭、 消息命令重發(fā)模塊;所述消息命令發(fā)送模塊,用于組裝點播消息命令,該點播消息命令中包括 點播命令、指示為點播命令的第一序號、頻點和節(jié)目號;將組裝的點播消息命 令發(fā)送給前端服務器,并將點播消息命令保存到消息命令重發(fā)模塊;將所述頻 點發(fā)送給高頻頭;所述高頻頭,用于在所述頻點上進行鎖頻,等待接收前端服務器推送的視 頻流;所述消息命令重發(fā)模塊,將保存的點播消息在設定時間點重新發(fā)送給前端 服務器。
9、如權利要求8所述的機頂盒,其特征在于,所述消息命令發(fā)送模塊包括 視頻控制消息命令發(fā)送子模塊,所述消息命令重發(fā)模塊包括視頻控制消息命令 重發(fā)子模塊;所述視頻控制消息命令發(fā)送子模塊,用于接收用戶輸入的視頻控制指令, 組裝視頻控制消息命令,將組裝的視頻控制消息命令發(fā)送給前端服務器,并將 視頻控制消息命令保存到視頻控制消息命令重發(fā)子模塊,該視頻控制消息命令 中包括視頻控制命令、指示為視頻控制命令的第二序號、頻點、節(jié)目號和速率;所述視頻控制消息命令重發(fā)子模塊,用于將保存的視頻控制消息命令在設 定時間點重新發(fā)送給前端服務器,前端服務器對包含第二序號的視頻控制消息 命令不做重復處理。
全文摘要
本發(fā)明公開了視頻點播的方法、系統(tǒng)及機頂盒,其中,該方法包括機頂盒組裝點播消息命令,該點播消息命令中包括點播命令、指示為點播命令的第一序號、頻點和節(jié)目號,將組裝的點播消息命令發(fā)送給前端服務器,并保存點播消息命令,在所述頻點上進行鎖頻,等待接收前端服務器推送的視頻流;機頂盒將保存的點播消息在設定時間點重新發(fā)送給前端服務器,前端服務器對包含第一序號的點播消息命令不做重復處理。本發(fā)明方案能夠加速視頻點播的速率。
文檔編號H04N7/173GK101662662SQ200910175619
公開日2010年3月3日 申請日期2009年9月24日 優(yōu)先權日2009年9月24日
發(fā)明者琳 陳 申請人:深圳市同洲電子股份有限公司