欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

為廣播系統(tǒng)提供視頻點播業(yè)務(wù)的系統(tǒng)和方法

文檔序號:7597732閱讀:214來源:國知局
專利名稱:為廣播系統(tǒng)提供視頻點播業(yè)務(wù)的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明的簡述
本發(fā)明一般涉及數(shù)據(jù)點播系統(tǒng)。具體來說,本發(fā)明涉及視頻點播系統(tǒng)。
本發(fā)明的
背景技術(shù)
視頻點播(VOD)系統(tǒng)是數(shù)據(jù)點播(data-on-demand,DOD)系統(tǒng)的一個類型。在VOD系統(tǒng)中,由服務(wù)器或者服務(wù)器的網(wǎng)絡(luò)基于需求提供視頻數(shù)據(jù)文件給一個或者多個客戶機(jī)。
在常規(guī)的VOD架構(gòu)中,服務(wù)器或者服務(wù)器的網(wǎng)絡(luò)與標(biāo)準(zhǔn)分層客戶機(jī)-服務(wù)器模型中地客戶機(jī)通信。例如,客戶機(jī)發(fā)送對于數(shù)據(jù)文件(例如視頻數(shù)據(jù)文件)的請求給一個服務(wù)器。根據(jù)客戶機(jī)的請求,該服務(wù)器發(fā)送所請求的數(shù)據(jù)文件給該客戶機(jī)。在標(biāo)準(zhǔn)的客戶機(jī)-服務(wù)器模型中,客戶機(jī)對于數(shù)據(jù)文件的請求可以由一個或者多個服務(wù)器滿足。該客戶機(jī)可以有能力在非易失性存儲器中存儲任何在本機(jī)接收的數(shù)據(jù)文件以便以后使用。標(biāo)準(zhǔn)的客戶機(jī)-服務(wù)器模型要求雙向通信基礎(chǔ)設(shè)施。當(dāng)前,雙向通信要求建立新的基礎(chǔ)設(shè)施,因為現(xiàn)有的電纜只可提供單向的通信。雙向通信基礎(chǔ)設(shè)施的例子是混合光纖光學(xué)同軸電纜(HFC)或者所有的光纖基礎(chǔ)設(shè)施。更換現(xiàn)有的電纜費用很高,而能得到的業(yè)務(wù)不是大多數(shù)用戶可支付得起的。
另外,當(dāng)服務(wù)提供者(例如電纜公司)試圖提供VOD服務(wù)給大量的客戶機(jī)時,標(biāo)準(zhǔn)的客戶機(jī)-服務(wù)器模型具有許多限制。標(biāo)準(zhǔn)的客戶機(jī)-服務(wù)器模型的一個限制是服務(wù)提供者必須實現(xiàn)連續(xù)地監(jiān)聽和滿足來自該網(wǎng)絡(luò)內(nèi)的每個客戶機(jī)的每個請求的機(jī)制;因此,可以接收服務(wù)的客戶機(jī)數(shù)量取決于這樣一個機(jī)制的容量。一個機(jī)制使用具有大的和快速盤陣列的大規(guī)模并行計算機(jī)作為本地服務(wù)器。但是,即使最快的現(xiàn)有的本地服務(wù)器同時只可傳送視頻數(shù)據(jù)流給大約1000至2000個客戶機(jī)。因此,為了服務(wù)更多的客戶機(jī),必須增加本地服務(wù)器的數(shù)量。增加本地服務(wù)器要求有更多高級服務(wù)器以維持對本地服務(wù)器的控制。
標(biāo)準(zhǔn)的客戶機(jī)-服務(wù)器模型的另一個限制是每個客戶機(jī)要求它自己的帶寬。因此,所要求的總帶寬直接與預(yù)訂客戶機(jī)的數(shù)量成正比。在本地服務(wù)器內(nèi)的超高速緩沖存儲器已經(jīng)用于改進(jìn)帶寬限制,但是使用超高速緩沖存儲器不解決該問題,因為超高速緩沖存儲器也是有限的。
目前,為了使得視頻點播對于客戶機(jī)更能負(fù)擔(dān)得起,現(xiàn)有的服務(wù)提供者在本地服務(wù)器的能力上面增加每個本地服務(wù)器的客戶機(jī)的比例。通常,一個能夠向1000個客戶機(jī)提供服務(wù)的本地服務(wù)器,實際上承擔(dān)對10,000個客戶機(jī)的服務(wù)。如果大多數(shù)預(yù)訂客戶機(jī)不同時預(yù)訂視頻,這個技術(shù)可以運用。但是,這個技術(shù)會導(dǎo)致故障,因為大多數(shù)客戶機(jī)可能會在同時(即晚間和周末)要觀看視頻,因此,使得本地服務(wù)器變得超載。
因此,希望提供一個系統(tǒng),能夠?qū)嶋H上在任何傳輸媒介上提供點播業(yè)務(wù)給大量的客戶機(jī)而不必更換現(xiàn)有的基礎(chǔ)設(shè)施。
本發(fā)明概述
在一個示例的實施例中,在服務(wù)器端,用于傳送數(shù)據(jù)給客戶機(jī)以便提供數(shù)據(jù)點播業(yè)務(wù)的方法包括步驟接收數(shù)據(jù)文件,指定時間間隔,根據(jù)該時間間隔將該數(shù)據(jù)文件解析為多個數(shù)據(jù)塊,使得每個數(shù)據(jù)塊在該時間間隔期間是可顯示的,確定發(fā)送該數(shù)據(jù)文件要求的時隙數(shù)量,給每個時隙分配該多個數(shù)據(jù)塊之至少一個第一塊和可選地分配一個或者多個附加數(shù)據(jù)塊,使得該多個數(shù)據(jù)塊對于在任何時隙期間訪問該數(shù)據(jù)文件的客戶機(jī)按順序是可用的,和基于該分配步驟發(fā)送該多個數(shù)據(jù)塊。在一個實施例中,該解析步驟包括以下步驟確定估計的數(shù)據(jù)塊長度,確定在頻道服務(wù)器中的存儲器的叢集長度(cluster size),和基于該估計的數(shù)據(jù)塊長度和叢集長度解析該數(shù)據(jù)文件。在另一個實施例中,該確定步驟包括評價資源分配和帶寬可用性的步驟。
在一個示例的實施例中,在客戶機(jī)端,用于處理從服務(wù)器接收的數(shù)據(jù)以便提供數(shù)據(jù)點播業(yè)務(wù)的方法包括步驟(a)在第一時隙期間接收一個數(shù)據(jù)文件之選擇;(b)在第二時隙期間接收該數(shù)據(jù)文件的至少一個數(shù)據(jù)塊;(c)在下一個時隙期間接收尚未被接收的任何數(shù)據(jù)塊,按順序顯示數(shù)據(jù)文件的數(shù)據(jù)塊,和重復(fù)步驟(c)直到該數(shù)據(jù)文件的所有數(shù)據(jù)塊都已經(jīng)被接收和顯示。在一個實施例中,由在客戶機(jī)端的機(jī)頂盒執(zhí)行用于處理從服務(wù)器接收的數(shù)據(jù)的方法。
在一個示例的實施例中,數(shù)據(jù)文件被分成許多數(shù)據(jù)塊和基于數(shù)據(jù)塊的數(shù)量產(chǎn)生一個時間表(scheduling)矩陣。在服務(wù)器端,時間表矩陣提供用于發(fā)送數(shù)據(jù)塊的發(fā)送次序,使得客戶機(jī)可以在隨機(jī)的時間按順序訪問該數(shù)據(jù)塊。在一個示例的實施例中,用于產(chǎn)生用于數(shù)據(jù)文件的時間表矩陣的方法包括步驟(a)接收數(shù)據(jù)文件的數(shù)據(jù)塊的數(shù)量[x];(b)設(shè)置第一變量[j]為零;(c)設(shè)置第二變量[i]為零;(d)清除在參考陣列中的所有的條目;(e)把存儲在一個矩陣中[(i+j)模x]列之矩陣位置中的至少一個數(shù)據(jù)塊寫到參考陣列,如果該參考陣列還沒有包含該數(shù)據(jù)塊;(f)把一個數(shù)據(jù)塊[i]寫到該參考陣列和該矩陣之矩陣位置[(i+j)模x,j],如果該參考陣列沒有包含該數(shù)據(jù)塊[i];(g)第二變量[i]遞增1并且重復(fù)步驟(e)、直到第二變量[i]等于數(shù)據(jù)塊的數(shù)量[x];和(h)第一變量[j]遞增1并且重復(fù)步驟(c)、直到第一變量[j]等于數(shù)據(jù)塊的數(shù)量[x]。在一個實施例中,產(chǎn)生用于一組數(shù)據(jù)文件中的每個數(shù)據(jù)文件的時間表矩陣,并且根據(jù)用于發(fā)送該組數(shù)據(jù)文件的時間表矩陣,應(yīng)用卷積(convolution)方法產(chǎn)生傳送矩陣。
數(shù)據(jù)點播系統(tǒng)包括第一組頻道服務(wù)器;一個中央控制服務(wù)器,用于控制第一組頻道服務(wù)器;第一組上變頻器,連接到第一組頻道服務(wù)器;連接到第一組上變頻器的一個組合器/放大器;和適合于通過傳輸媒介發(fā)送數(shù)據(jù)的一個組合器/放大器。在一個示例的實施例中,該數(shù)據(jù)點播系統(tǒng)還包括一個頻道監(jiān)視模塊,用于監(jiān)視該系統(tǒng);一個開關(guān)矩陣;第二組頻道服務(wù)器和第二組上變頻器。該頻道監(jiān)視模塊用于在出現(xiàn)系統(tǒng)故障時報告給中央控制服務(wù)器。該中央控制服務(wù)器根據(jù)來自頻道監(jiān)視模塊的報告,向該開關(guān)矩陣發(fā)出指令,以便用第二組頻道服務(wù)器中的頻道服務(wù)器代替第一組頻道服務(wù)器中的故障頻道服務(wù)器、及用第二組上變頻器中的上變頻器代替第一組上變頻器中的故障上變頻器。
用于提供數(shù)據(jù)點播業(yè)務(wù)的方法包括步驟計算數(shù)據(jù)文件的傳送矩陣,根據(jù)該傳送矩陣發(fā)送該數(shù)據(jù)文件,使得大量的客戶機(jī)能夠根據(jù)需要觀看該數(shù)據(jù)文件。在一個實施例中,該數(shù)據(jù)文件包含一個視頻文件。
附圖簡述


圖1A說明根據(jù)本發(fā)明的實施例的一個示例的DOD系統(tǒng);
圖1B說明根據(jù)本發(fā)明的另一個實施例的一個示例的DOD系統(tǒng);
圖2說明根據(jù)本發(fā)明的一個實施例的示例的頻道服務(wù)器;
圖3說明根據(jù)本發(fā)明的一個實施例的示例的機(jī)頂盒;
圖4說明根據(jù)本發(fā)明的一個實施例用于產(chǎn)生一個時間表矩陣的示例的過程。
本發(fā)明的詳細(xì)說明
圖1A說明根據(jù)本發(fā)明的實施例的一個示例的DOD系統(tǒng)100。在這個實施例中,DOD系統(tǒng)100根據(jù)需要提供諸如視頻文件的數(shù)據(jù)文件。但是,DOD系統(tǒng)100不限于根據(jù)需要提供視頻文件,也能夠根據(jù)需要提供其它數(shù)據(jù)文件,例如游戲文件。DOD系統(tǒng)100包含一個中央控制服務(wù)器102、一個中央存儲器103、多個頻道服務(wù)器104a-104n、多個上變頻器106a-106n和一個組合器/放大器108。中央控制服務(wù)器102控制頻道服務(wù)器104。中央存儲器103以數(shù)字格式存儲數(shù)據(jù)文件。在示例的實施例中,任何連接在該網(wǎng)絡(luò)上并被授權(quán)的計算機(jī)(比如中央控制服務(wù)器102)通過標(biāo)準(zhǔn)網(wǎng)絡(luò)接口(例如以太網(wǎng)連接)可以訪問存儲在中央存儲器103的數(shù)據(jù)文件。每個頻道服務(wù)器104被分配一個頻道和連接到上變頻器106。頻道服務(wù)器104根據(jù)中央控制服務(wù)器102的指令提供從中央存儲器103檢索的數(shù)據(jù)文件。每個頻道服務(wù)器104的輸出是正交振幅調(diào)制(QAM)調(diào)制的中頻(IF)信號,該信號具有適于相應(yīng)的上變頻器106的頻率。QAM調(diào)制的中頻信號取決于采用的標(biāo)準(zhǔn)。當(dāng)前在美國采用的標(biāo)準(zhǔn)是有線數(shù)據(jù)系統(tǒng)接口規(guī)范(DOCSIS)標(biāo)準(zhǔn),它要求大約43.75MHz的中頻。上變頻器106將從頻道服務(wù)器104接收的中頻信號變換為射頻信號(RF信號)。RF信號包括頻率和帶寬都取決于期望的頻道和采用的標(biāo)準(zhǔn)。例如,根據(jù)美國用于有線電視頻道80的當(dāng)前標(biāo)準(zhǔn),RF信號具有大約559.25MHz的頻率和大約6MHz的帶寬。上變頻器106的輸出施加到組合器/放大器108。組合器/放大器108放大、調(diào)節(jié)和組合所接收的RF信號,然后輸出這些信號至傳輸媒介110。
在一個示例的實施例中,中央控制服務(wù)器102包括一個圖形用戶接口(未示出),使服務(wù)提供者能夠通過拖放式操作來調(diào)度數(shù)據(jù)傳送。另外,中央控制服務(wù)器102驗證和控制頻道服務(wù)器104以便根據(jù)傳送矩陣開始或者停止。在一個示例的實施例中,中央控制服務(wù)器102自動地選擇一個信道并且計算用于在所選擇的信道中發(fā)送數(shù)據(jù)文件的傳送矩陣。中央控制服務(wù)器102提供對數(shù)據(jù)文件信息(例如持續(xù)時間、類別、等級以及/或者簡要敘述)的脫機(jī)增加、刪除和更新。另外,中央控制服務(wù)器102通過更新存儲在其中的數(shù)據(jù)文件和數(shù)據(jù)庫控制該中央存儲器103。
在一個示例的實施例中,現(xiàn)有的有線電視系統(tǒng)120可以繼續(xù)饋送信號到組合器/放大器108以便提供非DOD業(yè)務(wù)給客戶機(jī)。因此,根據(jù)本發(fā)明的DOD系統(tǒng)100并不影響現(xiàn)在的有線電視業(yè)務(wù)。
圖1B說明根據(jù)本發(fā)明的DOD系統(tǒng)100的另一個示例的實施例。除了表示在圖1A中的單元外,該DOD系統(tǒng)100包括一個開關(guān)矩陣112、一個頻道監(jiān)視模塊114、一組后備頻道服務(wù)器116a-116b和一組后備上變頻器118a-118b。在一個實施例中,開關(guān)矩陣112實際上位于上變頻器106和組合器/放大器108之間。開關(guān)矩陣112是由中央控制服務(wù)器102控制的。頻道監(jiān)視模塊114包括多個配置的機(jī)頂盒,它模擬潛在的客戶機(jī),用于監(jiān)視DOD系統(tǒng)100的狀況。監(jiān)視的結(jié)果由頻道監(jiān)視模塊114傳送到中央控制服務(wù)器102。在出現(xiàn)頻道故障(即頻道服務(wù)器故障,上變頻器故障或者通信鏈路故障)的情況下,中央控制服務(wù)器102通過開關(guān)矩陣112斷開故障部件并且連接完好的后備部件116以及/或者118以便重新開始服務(wù)。
在一個示例的實施例中,從DOD系統(tǒng)100廣播的數(shù)據(jù)文件包含在運動圖像專家組(MPEG)文件中。每個MPEG文件被動態(tài)地分成數(shù)據(jù)塊和沿著時間軸映射到數(shù)據(jù)文件的特定部分的子數(shù)據(jù)塊。根據(jù)由中央控制服務(wù)器102提供的三維的傳送矩陣,這些數(shù)據(jù)塊和子數(shù)據(jù)塊在預(yù)先確定的時間期間被發(fā)送。對于DOD系統(tǒng)100而言,提供DOD業(yè)務(wù)并不是必須有反饋信道。但是,如果反饋信道是可用的,該反饋信道可用于其他的目的,諸如計費或者提供因特網(wǎng)服務(wù)。
圖2說明根據(jù)本發(fā)明的一個實施例的示例的頻道服務(wù)器104。頻道服務(wù)器104包括一個服務(wù)器控制器202、一個CPU(中央處理單元)204、一個QAM調(diào)制器206、一個本機(jī)存儲器208和一個網(wǎng)絡(luò)接口210。服務(wù)器控制器202通過命令CPU 204劃分?jǐn)?shù)據(jù)文件為塊(進(jìn)一步劃分為子塊和數(shù)據(jù)分組)控制頻道服務(wù)器104的整個操作,根據(jù)由中央控制服務(wù)器102提供的傳送矩陣選擇用于傳輸?shù)臄?shù)據(jù)塊,編碼所選擇的數(shù)據(jù),壓縮所編碼的數(shù)據(jù),然后傳送所壓縮的數(shù)據(jù)到QAM調(diào)制器206。QAM調(diào)制器206接收通過總線(即PCI、CPU本地總線)或者以太網(wǎng)連接發(fā)送的數(shù)據(jù)。在一個示例的實施例中,QAM調(diào)制器206可以包括一個下行QAM調(diào)制器,具有前向糾錯解碼器的一個上行正交振幅調(diào)制/正交相移鍵控(QAM/QPSK)脈沖解調(diào)器,以及/或者一個上行調(diào)諧器。QAM調(diào)制器206的輸出是一個中頻信號,可以直接地應(yīng)用到上變頻器106。
網(wǎng)絡(luò)接口210連接頻道服務(wù)器104到其它頻道服務(wù)器104以及連接到中央控制服務(wù)器102,以便執(zhí)行來自中央控制服務(wù)器102的時間表和控制指令,報告狀態(tài)送回至中央控制服務(wù)器102,和從中央存儲器103接收數(shù)據(jù)文件。從中央存儲器103檢索的任何數(shù)據(jù)文件可以被存儲在頻道服務(wù)器104的本機(jī)存儲器208,然后根據(jù)來自服務(wù)器控制器202的指令處理該數(shù)據(jù)文件。在一個示例的實施例中,頻道服務(wù)器104可以根據(jù)有線信道的帶寬(例如6,6.5或者8MHz)、QAM調(diào)制(例如QAM 64或者QAM 256)、和DOD數(shù)據(jù)流(即MPEG-1或者M(jìn)PEG-2)的壓縮標(biāo)準(zhǔn)/比特率發(fā)送一個或者多個DOD數(shù)據(jù)流。
圖3說明根據(jù)本發(fā)明的一個實施例的示例的機(jī)頂盒(STB)300。STB 300包括一個QAM解調(diào)器302、一個CPU 304、一個條件訪問模塊306(例如智能卡系統(tǒng))、一個本機(jī)存儲器308、一個緩沖存儲器309、一個STB控制器310、一個解碼器312和一個圖形重疊模塊(graphics overlaymodule)314。STB控制器310通過控制CPU 304和QAM解調(diào)器302控制STB 300的整個操作,以便根據(jù)客戶機(jī)的請求選擇數(shù)據(jù),解碼所選擇的數(shù)據(jù),解壓縮所解碼的數(shù)據(jù),重新裝配所解碼的數(shù)據(jù),在本機(jī)存儲器308或者緩沖存儲器309中存儲所解碼的數(shù)據(jù),和傳送所存儲的數(shù)據(jù)到解碼器312。在一個示例的實施例中,STB控制器310根據(jù)從傳輸媒介110中接收的數(shù)據(jù)分組的標(biāo)題控制STB 300的整個操作。在一個示例的實施例中,本機(jī)存儲器308包括非易失性存儲器(例如硬盤驅(qū)動器),而緩沖存儲器309包括易失性存儲器。
在一個實施例中,QAM解調(diào)器302包括發(fā)射器和接收器模塊以及下面的一個或者多個保密加密/解密模塊、前向糾錯解碼器/編碼器、調(diào)諧器控制器、下行和上行處理器、CPU和存儲器接口電路。QAM解調(diào)器302接收調(diào)制的中頻信號,取樣和解調(diào)該信號以便恢復(fù)數(shù)據(jù)。
當(dāng)驗證之后許可訪問時以及/或者當(dāng)已經(jīng)收取適當(dāng)?shù)馁M用時,條件訪問模塊306允許解碼過程。訪問條件是由服務(wù)提供者確定的。
在一個示例的實施例中,當(dāng)訪問被許可時,解碼器312解碼至少一個數(shù)據(jù)塊以便將該數(shù)據(jù)塊轉(zhuǎn)換為可在輸出屏幕上顯示的圖像。解碼器312支持來自預(yù)訂(subscribing)客戶機(jī)的命令,諸如播放、停止、暫停、步進(jìn)、回放、前進(jìn)等等。
圖形重疊模塊314例如通過提供阿爾法混合或者畫中畫能力增強(qiáng)顯示的圖形質(zhì)量。在一個示例的實施例中,在玩游戲模式期間圖形重疊模塊314可用于圖形加速,例如當(dāng)服務(wù)提供者利用根據(jù)本發(fā)明的系統(tǒng)提供游戲點播服務(wù)時。
在一個示例的實施例中,雖然數(shù)據(jù)文件被廣播到所有的有線電視用戶,但是只有那些具有兼容STB 300的DOD用戶能夠解碼和享受數(shù)據(jù)點播業(yè)務(wù)。在一個示例的實施例中,獲得數(shù)據(jù)點播文件的許可是可以通過條件訪問控制模塊306中的智能卡(smart card)系統(tǒng)獲得。智能卡可以是可在本地商店或者由服務(wù)提供者設(shè)置的自動售貨機(jī)進(jìn)行收費。在另一個示例的實施例中,一個統(tǒng)一收費系統(tǒng)為用戶提供對所有可得到的數(shù)據(jù)文件的無限制訪問。
在一個示例的實施例中,數(shù)據(jù)點播交互的特征允許客戶機(jī)任何時候選擇可得到的數(shù)據(jù)文件。當(dāng)客戶機(jī)按下選擇按鍵時與所選擇的數(shù)據(jù)文件開始播放之時間之間的時間量稱為響應(yīng)時間。由于分配越多的資源(例如帶寬,服務(wù)器能力)以提供DOD業(yè)務(wù),該響應(yīng)時間就變得越短。在一個示例的實施例中,響應(yīng)時間可以根據(jù)資源分配的估計和期望的服務(wù)質(zhì)量確定。
在一個示例的實施例,選擇的響應(yīng)時間確定一個時隙的持續(xù)時間。時隙(TS)的持續(xù)時間是由客戶機(jī)以正常速度播放一個數(shù)據(jù)塊的時間間隔。在一個示例的實施例中,諸如視頻文件的數(shù)據(jù)文件被分成許多數(shù)據(jù)塊,使得每個數(shù)據(jù)塊可以在一個時隙的持續(xù)期間支持?jǐn)?shù)據(jù)文件的播放。
在一個實施例中,每個數(shù)據(jù)文件的數(shù)據(jù)塊的數(shù)量(NUM_OF_BLKS)可以計算如下Estimated_BLK_Size=(DataFile_Size*TS)/DataFile_Length (1)BLK SIZE=(Estimated BLK Size+CLUSTER_SIZE-1Byte)/CLUSTER_SIZE(2)BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE(3)NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-1Byte)/BLK_SIZE_BYTES (4)
在等式(1)至(4)中,Estimated_BLK_Size是估計的塊長度(以字節(jié)為單位);DataFile_Size是數(shù)據(jù)文件長度(在字節(jié)為單位);TS代表時隙的持續(xù)時間(以秒為單位);DataFile_Length是數(shù)據(jù)文件的持續(xù)時間(以秒為單位);BLK SIZE是每個數(shù)據(jù)塊需要的叢集的數(shù)量;CLUSTER_SIZE是用于每個頻道服務(wù)器104的本機(jī)存儲器208中的叢集的尺寸(例如64K字節(jié));BLK_SIZE_BYTES是以字節(jié)為單位的塊長度。在這個實施例中,塊的數(shù)量(NUM_OF_BLKS)等于數(shù)據(jù)文件長度(以字節(jié)為單位)加上以字節(jié)為單位的數(shù)據(jù)塊長度減去1字節(jié)并且除以以字節(jié)為單位的數(shù)據(jù)塊長度。等式(1)至(4)說明一個特定的實施例。本領(lǐng)域的技術(shù)人員應(yīng)該認(rèn)識到,其它方法是可用于對數(shù)據(jù)文件計算數(shù)據(jù)塊的數(shù)量。例如,劃分?jǐn)?shù)據(jù)文件為許多數(shù)據(jù)塊主要地是頻道服務(wù)器104的本機(jī)存儲器208的估計塊長度和叢集長度的功能。因此,本發(fā)明不應(yīng)該限制為上面提出的特定的實施例。
圖4說明根據(jù)本發(fā)明的一個實施例用于產(chǎn)生用于發(fā)送數(shù)據(jù)文件的時間表矩陣的示例的過程。在一個示例的實施例中,這個發(fā)明使用時分多路復(fù)用(TDM)和頻分多路復(fù)用(FDM)技術(shù)在服務(wù)器端壓縮和調(diào)度數(shù)據(jù)傳送。在一個示例的實施例中,為每個數(shù)據(jù)文件產(chǎn)生一個時間表矩陣。在一個實施例中,每個數(shù)據(jù)文件被分成許多數(shù)據(jù)塊和根據(jù)數(shù)據(jù)塊的數(shù)量產(chǎn)生每個時間表矩陣。典型地,時間表矩陣提供一個發(fā)送次序,用于從服務(wù)器給客戶機(jī)傳送數(shù)據(jù)文件的數(shù)據(jù)塊,使得希望訪問該數(shù)據(jù)文件的任何客戶機(jī)在隨機(jī)的時間按照順序可以訪問該數(shù)據(jù)塊。
在步驟402,接收用于一個數(shù)據(jù)文件的數(shù)據(jù)塊的數(shù)量(x)。第一變量j設(shè)置為零(步驟404)。清除參考陣列(步驟406)。參考陣列始終監(jiān)視用于內(nèi)部管理目的的數(shù)據(jù)塊。然后,j與x比較(步驟408)。如果j小于x,第二變量i設(shè)置為零(步驟412)。然后,i與x比較(步驟414)。如果i小于x,存儲在時間表矩陣的[(i+j)模(x)]列中的數(shù)據(jù)塊被寫入該參考陣列(步驟418)。如果參考陣列已經(jīng)具有這樣的數(shù)據(jù)塊(s),則不寫重復(fù)的副本。最初,由于時間表矩陣還不具有條目,這個步驟可以跳過。然后,如果參考陣列包含數(shù)據(jù)塊i,檢查參考陣列(步驟420)。最初,由于在參考陣列中的所有的條目在步驟406被清除了,在參考陣列什么也沒有了。如果參考陣列不包含數(shù)據(jù)塊i,數(shù)據(jù)塊i被加入在矩陣位置[(i+j)模(x),j]的時間表矩陣和參考陣列(步驟422)。在數(shù)據(jù)塊i被加到該時間表矩陣和該參考陣列之后,i遞增1,使得i=i+1(步驟424),然后在步驟414重復(fù)該過程直到i=x。如果該參考陣列包含數(shù)據(jù)塊i,i遞增1,使得i=i+1(步驟424),然后在步驟414重復(fù)該過程直到i=x。當(dāng)i=x時,j遞增1,使得j=j(luò)+1(步驟416)并且在步驟406重復(fù)該過程直到j(luò)=x。當(dāng)j=x時結(jié)束整個過程(步驟410)。
在一個示例的實施例中,如果數(shù)據(jù)文件被分成六個數(shù)據(jù)塊(x=6),時間表矩陣和參考陣列如下
時間表矩陣(SM)參考陣列(RA)
該申請的附錄A描述了圖4中所示的示例過程的逐步過程,該過程產(chǎn)生上述的時間表矩陣和參考陣列。在這個示例的實施例中,根據(jù)上面的時間表矩陣,該數(shù)據(jù)文件的六個數(shù)據(jù)塊以下面序列發(fā)送
TS0=>blk0
TS1=>blk0,blk1,blk3
TS2=>blk0,blk2
TS3=>blk0,blk1,blk3,blk4
TS4=>blk0,blk4
TS5=>blk0,blk1,blk2,blk5
在另一個示例的實施例中,可利用先行(look-ahead)過程計算先行時間表矩陣以便在預(yù)計的訪問時間前發(fā)送數(shù)據(jù)文件的預(yù)定數(shù)量的數(shù)據(jù)塊。例如,如果預(yù)定的先行時間是一個時隙的持續(xù)時間,對于大于或等于時隙數(shù)4的任何時隙,數(shù)據(jù)文件的數(shù)據(jù)塊4(blk4)應(yīng)該在預(yù)訂客戶機(jī)由STB 300在TS3或者在TS3之前被接收,但是在TS4之前不播放blk4。產(chǎn)生先行時間表矩陣的過程步驟基本上類似于在上面對于圖4描述的過程步驟,除了在這個實施例中的先行時間表矩陣根據(jù)先行時間調(diào)度較早的發(fā)送序列之外。假定數(shù)據(jù)文件被分成六個數(shù)據(jù)塊,根據(jù)先行時間表矩陣、具有兩個時隙的持續(xù)時間的先行時間的一個示例的發(fā)送序列可以表示如下
TS0=>blk0
TS1=>blk0,blk1,blk3,blk4
TS2=>blk0,blk2
TS3=>blk0,blk1,blk3,blk4,blk5
TS4=>blk0,blk5
TS5=>blk0,blk1,blk2
用于發(fā)送一組數(shù)據(jù)文件的三維的傳送矩陣是根據(jù)對于該組數(shù)據(jù)文件的每個數(shù)據(jù)文件的時間表矩陣產(chǎn)生的。在三維的傳送矩陣中,產(chǎn)生包含用于該組數(shù)據(jù)文件的每個數(shù)據(jù)文件的ID的第三維。計算三維的傳送矩陣以便有效地利用每個信道中的可用帶寬傳送多個數(shù)據(jù)流。在一個示例的實施例中,本領(lǐng)域熟知的卷積方法用于產(chǎn)生三維的傳送矩陣以便調(diào)度一組數(shù)據(jù)文件的有效傳送。例如,卷積方法可以包括下面策略(1)在任何時隙(TS)的持續(xù)時間中發(fā)送的數(shù)據(jù)塊總數(shù)應(yīng)該保持最小的可能的數(shù)量;和(2)如果相對于策略(1)可得到多個部分的解決方案,優(yōu)選的解決方案是通過相加在任何參考時隙的持續(xù)時間期間發(fā)送的數(shù)據(jù)塊、在前面的時隙(相對于該參考時隙)的持續(xù)時間期間發(fā)送的數(shù)據(jù)塊和在下一個時隙(相對于該參考時隙)的持續(xù)時間期間發(fā)送的數(shù)據(jù)塊,從而具有最小的數(shù)據(jù)塊總數(shù)的解決方案。例如,假定一個示例的系統(tǒng)發(fā)送兩個短的數(shù)據(jù)文件M和N,在這里每個數(shù)據(jù)文件被分成六個數(shù)據(jù)塊,基于時間表矩陣的發(fā)送序列如下
TS0=>blk0
TS1=>blk0,blk1,blk3TS2=>blk0,blk2TS3=>blk0,blk1,blk3,blk4TS4=>blk0.blk4TS5=>blk0,blk1,blk2,blk5應(yīng)用在上面描述的示例的卷積方法,傳送矩陣的可能的組合如下任選項1在偏移0 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊TS0=>M0,N0 2TSl=>M0,M1,M3,N0,N1,N3 6TS2=>M0,M2,N0,N2 4TS3=>M0,M1,M3,M4,N0,N1,N3,N4 8TS4=>M0,M4,N0,N4 4TS5=>M0,M1,M2,M5,N0,N1,N2,N5 8任選項2在偏移1 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊TS0=>M0,N0,N1,N3 4TSl=>M0,Ml,M3,N0,N2 5TS2=>M0,M2,N0,N1,N3,N4 6TS3=>M0,Ml,M3,M4,N0,N4 6TS4=>M0,M4,N0,N1,N2,N5 6TS5=>M0,M1,M2,M5,N0 5任選項3在偏移2 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊TS0=>M0,N0,N23TS1=>M0,M1,M3,N0,N1,N3,N47TS2=>M0,M2,N0,N44TS3=>M0,M1,M3,M4,N0,N1,N2,N58TS4=>M0,M4,N03TS5=>M0,M1,M2,M5,N0,N1,N37任選項4在偏移3 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊TS0=>M0,N0,N1,N3,N45TS1=>M0,M1,M3,N0,N45TS2=>M0,M2,N0,N1,N2,N56TS3=>M0,M1,M3,M4,N05TS4=>M0,M4,N0,N1,N35TS5=>M0,M1,M2,M5,N0,N26任選項5在偏移4 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊TS0=>M0,N0,N43TS1=>M0,M1,M3,N0,N1,N2,N57TS2=>M0,M2,N03TS3=>M0,M1,M3,M4,N0,N1,N37TS4=>M0,M4,N0,N24TS5=>M0,M1,M2,M5,N0,N1,N3,N48
任選項6在偏移5 TS發(fā)送視頻文件N 總的數(shù)據(jù)塊
TS0=>M0,N0,N1,N2,N5 5
TS1=>M0,M1,M3,N0 4
TS2=>M0,M2,N0,N1,N3 5
TS3=>M0,M1,M3,M4,N0,N2 6
TS4=>M0,M4,N0,N1,N3,N4 6
TS5=>M0,M1,M2,M5,N0,N4 6
應(yīng)用策略(1),任選項2,4和6具有在任何時隙期間發(fā)送的最小的數(shù)據(jù)塊的最大的數(shù)量(即6個數(shù)據(jù)塊)。應(yīng)用策略(2),在這個示例的實施例中最佳的傳送矩陣是任選項4,因為任選項4具有任何參考時隙的數(shù)據(jù)塊加上附近的時隙的數(shù)據(jù)塊的最小的總數(shù)(即16個數(shù)據(jù)塊)。因此,對于這個實施例而言,最好是,數(shù)據(jù)文件N的發(fā)送序列應(yīng)該偏移三個時隙。在一個示例的實施例中,為每個頻道服務(wù)器104產(chǎn)生一個三維的傳送矩陣。
當(dāng)根據(jù)傳送矩陣發(fā)送每個數(shù)據(jù)文件的數(shù)據(jù)塊時,大量的預(yù)訂客戶機(jī)可以在一個隨機(jī)的時間訪問該數(shù)據(jù)文件,并且該數(shù)據(jù)文件的適當(dāng)?shù)臄?shù)據(jù)塊對每個預(yù)訂客戶機(jī)是及時地可用的。在上面提供的例子中,假定一個時隙的持續(xù)時間等于5秒,DOD系統(tǒng)100根據(jù)最佳的傳送矩陣(即偏移數(shù)據(jù)文件N的發(fā)送序列三個時隙)以下面方式發(fā)送數(shù)據(jù)文件M和N的數(shù)據(jù)塊
時間000000=>M0 N0 N1 N3 N4
時間000005=>M0 M1 M3 N0 N4
時間000010=>M0 M2 N0 N1 N2 N5
時間000015=>M0 M1 M3 M4 N0
時間000020=>M0 M4 N0 N1 N3
時間000025=>M0 M1 M2 M5 N0 N2
時間000030=>M0 N0 N1 N3 N4
時間000035=>M0 M1 M3 N0 N4
時間000040=>M0 M2 N0 N1 N2 N5
時間000045=>M0 M1 M3 M4 N0
時間000050=>M0 M4 N0 N1 N3
時間000055=>M0 M1 M2 M5 N0 N2
……………………………
如果在時間000000,一個客戶機(jī)A選擇電影M,在客戶機(jī)A的STB300接收、存儲、播放和拒絕數(shù)據(jù)塊如下
時間000000=>接收M0 =>播放M0,存儲M0.
時間000005=>接收M1,M3 =>播放M1,存儲M0,M1,M3.
時間000010=>接收M2 =>播放M2,存儲M0,M1,M2 M3.
時間000015=>接收M4 =>播放M3,存儲M0,M1,M2,M3,M4.
時間000020=>沒有接收 =>播放M4,存儲M0,M1,M2,M3,M4.
時間000025=>接收M5 =>播放M5,存儲M0,M1,M2,M3,M4,M5.
如果在時間000010,客戶機(jī)B選擇電影M,在客戶機(jī)B的STB 300接收、存儲、播放和拒絕數(shù)據(jù)塊如下時間000010=>接收M0,M2 =>播放M0,存儲M0,M2.時間000015=>接收M1,M3,M4 =>播放M1,存儲M0,M1,M2,M3,M4.時間000020=>沒有接收 =>播放M2,存儲M0,M1,M2,M3,M4.時間000025=>接收M5 =>播放M3,存儲M0,M1,M2,M3,M4.M5.時間000030=>沒有接收=>播放M4,存儲M0,M1,M2,M3,M4,M5.時間000035=>沒有接收=>播放M5,存儲M0,M1,M2,M3,M4,M5.
如果在時間000015,客戶機(jī)C選擇電影N,在該客戶機(jī)C的STB 300接收、存儲、播放和拒絕數(shù)據(jù)塊如下
時間000015=>接收N0 =>播放N0,存儲N0.
時間000020=>接收N1,N3 =>播放N1,存儲N0,N1,N3.
時間000025=>接收N2 =>播放N2.存儲N0,N1,N2,N3.
時間000030=>接收N4 =>播放N3,存儲N0.N1,N2,N3,N4.
時間000035=>沒有接收 =>播放N4,存儲N0,N1,N2,N3,N4.
時間000040=>接收N5 =>播放N5,存儲N0,N1,N2,N3,N4,N5.
如果在時間000030,客戶機(jī)D也選擇電影N,在客戶機(jī)D的STB 300接收、存儲、播放和拒絕數(shù)據(jù)塊如下時間000030=>接收N0,N1,N3,N4=>播放N0,存儲N0,N1,N3,N4.時間000035=>沒有接收 =>播放N1,存儲N0,N1,N3,N4.時間000040=>接收N2,N5=>播放N2,存儲N0,N1,N2,N3,N4,N5.時間000045=>沒有接收 =>播放N3,存儲N0,N1,N2,N3,N4,N5.時間000050=>沒有接收 =>播放N4,存儲N0,N1,N2,N3,N4,N5.時間000055=>沒有接收 =>播放N5,存儲N0,N1,N2,N3,N4,N5.
正如上面的例子中所示,客戶機(jī)之任何組合可以在隨機(jī)的時間獨立地選擇并開始播放由服務(wù)提供者提供的任何數(shù)據(jù)文件。一般的操作
服務(wù)提供者可以預(yù)定在廣播前發(fā)送許多數(shù)據(jù)文件(例如視頻文件)給頻道服務(wù)器。中央控制服務(wù)器102計算并且發(fā)送三維傳送矩陣(ID、時隙和數(shù)據(jù)塊發(fā)送次序)給頻道服務(wù)器104。在廣播期間,頻道服務(wù)器104參考該三維傳送矩陣以適當(dāng)?shù)拇涡虬l(fā)送適當(dāng)?shù)臄?shù)據(jù)塊。每個數(shù)據(jù)文件被分成數(shù)據(jù)塊,以使大量的預(yù)訂客戶機(jī)可以獨立地開始連續(xù)地和按順序在隨機(jī)的時間觀看數(shù)據(jù)文件。數(shù)據(jù)文件的數(shù)據(jù)塊長度取決于所選擇的時隙的持續(xù)時間和數(shù)據(jù)文件的數(shù)據(jù)流的比特率。例如,在恒定的比特率MPEG數(shù)據(jù)流中,每個數(shù)據(jù)塊具有固定的長度
塊長度(兆字節(jié))=比特率(Mb/s)×TS(秒)/8 (1)
在一個示例的實施例中,調(diào)節(jié)數(shù)據(jù)塊長度到頻道服務(wù)器104的本機(jī)存儲器208的下一個較高倍的存儲器叢集長度。例如,如果根據(jù)上面的等式(1)計算的數(shù)據(jù)塊長度是720K字節(jié),則如果本機(jī)存儲器208的叢集長度是64K字節(jié),得到的數(shù)據(jù)塊長度應(yīng)該是768K字節(jié)。在這個實施例中,數(shù)據(jù)塊應(yīng)該進(jìn)一步分成多個子塊,每個子塊具有與叢集長度相同的長度。在這個例子中,該數(shù)據(jù)塊具有十二個64K字節(jié)的子塊。
子塊可以進(jìn)一步分解為數(shù)據(jù)分組。每個數(shù)據(jù)分組包含一個分組標(biāo)題和分組數(shù)據(jù)。分組數(shù)據(jù)長度取決于每個頻道服務(wù)器的CPU傳送數(shù)據(jù)到的物理層的最大傳輸單位(MTU)。在優(yōu)選實施例中,分組標(biāo)題和分組數(shù)據(jù)的總的長度應(yīng)該小于MTU。但是,為了最大的效率,分組數(shù)據(jù)長度應(yīng)該盡可能長。
在一個示例的實施例中,分組標(biāo)題中的數(shù)據(jù)包含允許用戶客戶機(jī)的STB 300解碼任何所接收數(shù)據(jù)及確定該數(shù)據(jù)分組是否屬于所選擇的數(shù)據(jù)文件的信息(例如協(xié)議特征標(biāo)記,版本,ID或者分組類型信息)。分組標(biāo)題也可能包含其它信息,諸如塊/子塊/分組數(shù)、分組長度、循環(huán)冗余校驗(CRC)和子塊中的偏移(offset)、以及/或者編碼信息。
一旦頻道服務(wù)器104收到了數(shù)據(jù)分組,它就被發(fā)送給QAM調(diào)制器206,在這里另一個標(biāo)題加到該數(shù)據(jù)分組以產(chǎn)生QAM調(diào)制的中頻(IF)輸出信號。對于QAM調(diào)制器206的最大比特率輸出取決于可用帶寬。例如,對于具有6MHz帶寬的QAM調(diào)制器206,最大的比特率是5.05(比特/碼元)×6(MHz)=30.3兆位/秒。
QAM調(diào)制的中頻信號被發(fā)送給上變頻器106,以便被轉(zhuǎn)換成適合于特定的信道的RF信號(例如用于有線電視頻道80,559.250MHz和6MHz帶寬)。例如,如果電纜網(wǎng)絡(luò)具有高的帶寬(或者比特率),每個信道可用于提供一個以上數(shù)據(jù)流,每個數(shù)據(jù)流占用一個虛擬的子信道。例如,使用QAM調(diào)制,三個MPEG1數(shù)據(jù)流可以適合6MHz頻道。上變頻器106的輸出加到組合器/放大器108,它發(fā)送組合的信號給傳輸媒介110。
在一個示例的實施例中,用于發(fā)送“N”數(shù)據(jù)流的總的系統(tǒng)帶寬(BW)是BW=N×bw,在這里bw是每個數(shù)據(jù)流要求的帶寬。例如,三個MPEG-1數(shù)據(jù)流可以同時由具有系統(tǒng)帶寬為30.3兆位/秒的一個DOCSIS有線信道發(fā)送,因為每個MPEG-1數(shù)據(jù)流占用9兆位/秒的系統(tǒng)帶寬。
通常,帶寬被占用,而不管實際上訪問該DOD業(yè)務(wù)的預(yù)訂客戶機(jī)的數(shù)量。因此,即使沒有預(yù)訂客戶機(jī)正在使用DOD業(yè)務(wù),帶寬仍然被占用以保證該系統(tǒng)的點播(on-demand)能力。
STB 300一旦被啟動,就連續(xù)地接收和更新存儲在STB 300的本機(jī)存儲器308中的節(jié)目指南。在一個示例的實施例中,STB 300在電視屏幕上顯示包括最新節(jié)目指南的數(shù)據(jù)文件信息。諸如視頻文件信息的數(shù)據(jù)文件信息可以包括電影ID、電影名稱、文字說明(以多種語言)、類別(例如動作片,兒童片)、分級(例如R級,PG13級)、電纜公司策略(例如價格、免費的預(yù)覽的長度)、預(yù)訂期間、電影海報和電影預(yù)覽。在一個示例的實施例中,數(shù)據(jù)文件信息的發(fā)送是通過一個保留的物理信道,比如為固件更新、廣告節(jié)目以及/或者應(yīng)急信息而保留的信道。在另一個示例的實施例中,在由其它數(shù)據(jù)流共享的物理信道中發(fā)送信息。
預(yù)訂客戶機(jī)可以在電視屏幕上觀看按類別排列的可用數(shù)據(jù)文件清單。當(dāng)該客戶機(jī)選擇一個可用的數(shù)據(jù)文件時,STB 300控制它的硬件調(diào)諧到相應(yīng)的物理頻道以及/或者虛擬的子信道,以開始接收該數(shù)據(jù)文件的數(shù)據(jù)分組。STB 300檢查每個數(shù)據(jù)分組標(biāo)題,解碼該數(shù)據(jù)分組中的數(shù)據(jù)和確定是否應(yīng)該保留所接收的數(shù)據(jù)分組。如果STB 300確定一個數(shù)據(jù)分組不應(yīng)該保留,則丟棄該數(shù)據(jù)分組。否則,該分組數(shù)據(jù)保存在本機(jī)存儲器308中用于以后的檢索或者暫時存儲在緩沖存儲器309中直到它被發(fā)送給解碼器312為止。
為了避免頻繁地讀/寫本機(jī)存儲器308以改善運行效率,在一個示例的實施例中,只要可能,STB 300就使用“滑動窗口”預(yù)期技術(shù)鎖定預(yù)期數(shù)據(jù)塊在存儲緩沖器309中。如果在預(yù)期窗口中的命中(hit)發(fā)生,數(shù)據(jù)塊直接從存儲緩沖器309中被傳送到解碼器312。如果預(yù)期沒有出現(xiàn),在該數(shù)據(jù)塊從存儲緩沖器309被傳送至解碼器312之前,從本機(jī)存儲器308讀數(shù)據(jù)塊到存儲緩沖器309。
在一個示例的實施例中,STB 300通過紅外線(IR)遙控器之按鍵、紅外線(IR)鍵盤或者包括按鍵的前面板按鈕響應(yīng)預(yù)訂客戶機(jī)的命令,以便暫停、慢動作播放、回放、放大和單步執(zhí)行。在一個示例的實施例中,如果預(yù)訂客戶機(jī)在預(yù)定的時間期間不輸入任何操作(例如滾動節(jié)目菜單或者選擇類別或電影),則自動地播放預(yù)定的廣告節(jié)目。當(dāng)預(yù)訂客戶機(jī)提供一個操作(例如按遙控器上的一個按鍵)時,自動地停止預(yù)定的廣告節(jié)目。在另一個示例的實施例中,STB 300可以在播放視頻期間自動地插入廣告節(jié)目。服務(wù)提供者(例如電纜公司)可以建立價格策略,規(guī)定廣告節(jié)目應(yīng)該中斷正在播放的視頻的頻繁程度。
如果在數(shù)據(jù)分組標(biāo)題中發(fā)現(xiàn)應(yīng)急信息比特,STB 300暫停任何數(shù)據(jù)接收操作并且控制它的硬件調(diào)諧在為接收數(shù)據(jù)文件信息而保留的頻道,以獲得和解碼任何應(yīng)急信息,并在輸出屏幕上顯示該信息。在一個示例的實施例中,當(dāng)STB 300是空閑時,它被調(diào)諧到為接收數(shù)據(jù)文件信息而保留的頻道并且始終準(zhǔn)備立即接收和顯示任何應(yīng)急信息。
前面的例子說明本發(fā)明的一些示例的實施例,本領(lǐng)域的技術(shù)人員從這些示例的實施例可以清楚地理解其它實施例、變化和修改。因此本發(fā)明并不限于在上面討論的特定的實施例,而是由權(quán)利要求來定義。
附錄A
為廣播系統(tǒng)提供視頻點播業(yè)務(wù)的系統(tǒng)和方法
以下是圖4所示之示例過程的逐步描述,該過程用于為具有6個數(shù)據(jù)塊的數(shù)據(jù)文件產(chǎn)生時間表矩陣開始(步驟402)接收數(shù)據(jù)文件的數(shù)據(jù)塊之?dāng)?shù)量(x);假設(shè)數(shù)據(jù)塊之?dāng)?shù)量等于6(x=6)。(步驟404)設(shè)j=0(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(0<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列
之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括任何內(nèi)容,因為它是空的。將blk0寫到SM中的位置
和RA。(步驟424)i加1(i=1),以得出對位置[1,0]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列[1]之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟422)RA不包括blk1。將blk1寫到SM中的位置[1,0]和RA。(步驟424)i加1(i=2),以得出對位置[2,0]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列[2]之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟422)RA不包括blk2。將blk2寫到SM中的位置[2,0]和RA。(步驟424)i加1(i=3),以得出對位置[3,0]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列[3]之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟422)RA不包括blk3。將blk3寫到SM中的位置[3,0]和RA。(步驟424)i加1(i=4),以得出對位置[4,0]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列[4]之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟422)RA不包括blk4。將blk4寫到SM中的位置[4,0]和RA。(步驟424)i加1(i=5),以得出對位置[5,0]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列[5]之矩陣位置并寫到RA;最初,SM是空的,所以沒有什么寫到RA。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟422)RA不包括blk5。將blk5寫到SM中的位置[5,0]和RA。(步驟424)i加1(i=6)。返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=1)。返回步驟406。(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(1<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列[1]之矩陣位置并寫到RA;位置[1,0]包括blk1;因此blk1被寫到RA。所有其它位置為空。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括blk0。將blk0寫到SM中的位置[1,1]和RA。RA現(xiàn)在具有blk1和blk0。(步驟424)i加1(i=1),以得出對位置[2,1]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列[2]之矩陣位置并寫到RA。位置[2,0]包括blk2。所有其它位置為空。RA現(xiàn)在具有blk1、blk0和blk2。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟424)RA包括blk1。因此,沒有內(nèi)容寫到位置[2,1]。i加1(i=2),以得出對位置[3,1]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列[3]之矩陣位置并寫到RA。位置[3,0]包括blk3。所有其它位置為空。RA現(xiàn)在具有blk1、blk0、blk2和blk3。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟424)RA包括blk2。因此,沒有內(nèi)容寫到位置[3,1]。i加1(i=3),以得出對位置[4,1]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列[4]之矩陣位置并寫到RA。位置[4,0]包括blk4。所有其它位置為空。RA現(xiàn)在具有blk1、blk0、blk2、blk3和blk4。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟424)RA包括blk3。因此,沒有內(nèi)容寫到位置[4,1]。i加1(i=4),以得出對位置[5,1]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列[5]之矩陣位置并寫到RA。位置[5,0]包括blk5。所有其它位置為空。RA現(xiàn)在具有blk1、blk0、blk2、blk3、blk4和blk5。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟424)RA包括blk4。因此,沒有內(nèi)容寫到位置[5,1]。i加1(i=5),以得出對位置
的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列
之矩陣位置并寫到RA。位置
包括blk0。所有其它位置為空。RA已包含blk0,因此blk0被放棄。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟424)RA包括blk5。因此,沒有內(nèi)容寫到位置
。i加1(i=6),返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=2)。返回步驟406。(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(2<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列[2]之矩陣位置并寫到RA。位置[2,0]包括blk2。所有其它位置為空。RA現(xiàn)在具有blk2。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括blk0。將blk0寫到SM中的位置[2,2]和RA。RA現(xiàn)在具有blk2和blk0。(步驟424)i加1(i=1),以得出對位置[3,2]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列[3]之矩陣位置并寫到RA。位置[3,0]包括blk3。所有其它位置為空。RA現(xiàn)在具有blk2、blk0和blk3。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟422)RA不包括blk1。將blk1寫到SM中之位置[3,2]和RA。RA現(xiàn)在具有blk2、blk0、blk3和blk1。(步驟424)i加1(i=2),以得出對位置[4,2]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列[4]之矩陣位置并寫到RA。位置[4,0]包括blk4。所有其它位置為空。RA現(xiàn)在具有blk2、blk0、blk3、blk1和blk4。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟424)RA包括blk2。因此,沒有內(nèi)容寫到位置[4,2]。i加1(i=3),以得出對位置[5,2]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列[5]之矩陣位置并寫到RA。位置[5,0]包括blk5。所有其它位置為空。RA現(xiàn)在具有blk2、blk0、blk3、blk1、blk4和blk5。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟424)RA包括blk3。因此,沒有內(nèi)容寫到位置[5,2]。i加1(i=4),以得出對位置
的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列
之矩陣位置并寫到RA。位置
包括blk0。所有其它位置為空。RA已包含blk0;因此blk0被放棄。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟424)RA包括blk4。因此,沒有內(nèi)容寫到位置
。i加1(i=5),以得出對位置[1,2]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列[1]之矩陣位置并寫到RA。位置[1,0]包括blk1,位置[1,1]包括blk0。RA已包含blk1和blk0,因此blk1和blk0被放棄。所有其它位置為空。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟424)RA包括blk5。因此,沒有內(nèi)容寫到位置[1,2]。i加1(i=6),返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=3)。返回步驟406。(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(3<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列[3]之矩陣位置并寫到RA。位置[3,0]包括blk3,位置[3,2]包括blk1。Blk3和blk1被寫到RA。所有其它位置為空。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括blk0。將blk0寫到SM中的位置[3,3]和RA。RA現(xiàn)在具有blk3、blk1和blk0。(步驟424)i加1(i=1),以得出對位置[4,3]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列[4]之矩陣位置并寫到RA。位置[4,0]包括blk4。所有其它位置為空。RA現(xiàn)在具有blk3、blk1、blk0和blk4。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟424)RA包括blk1。因此,沒有內(nèi)容被寫到位置[4,3]。i加1(i=2),以得出對位置[5,3]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列[5]之矩陣位置并寫到RA。位置[5,0]包括blk5。所有其它位置為空。RA現(xiàn)在具有blk3、blk1、blk0、blk4和blk5。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟422)RA不包括blk2。將blk2寫到SM中的位置[5,3]和RA。RA現(xiàn)在具有blk3、blk1、blk0、blk4、blk5和blk2。(步驟424)i加1(i=3),以得出對位置
的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列
之矩陣位置并寫到RA。位置
包括blk0。所有其它位置為空。RA已包含blk0,因此放棄blk0。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟424)RA包括blk3。因此,沒有內(nèi)容寫到位置
。i加1(i=4),以得出對位置[1,3]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列[1]之矩陣位置并寫到RA。位置[1,0]包括blk1,位置[1,1]包括blk0。所有其它位置為空。RA已包含blk1和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟424)RA包括blk4。因此,沒有內(nèi)容寫到位置[1,3]。i加1(i=5),以得出對位置[2,3]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列[2]之矩陣位置并寫到RA。位置[2,0]包括blk2,位置[2,2]包括blk0。所有其它位置為空。RA已包含blk2和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟424)RA包括blk5。因此,沒有內(nèi)容寫到位置[2,3]。i加1(i=6)。返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=4)。返回步驟406。(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(4<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列[4]之矩陣位置并寫到RA。位置[4,0]包括blk4。Blk4被寫到RA。所有其它位置為空。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括blk0。將blk0寫到SM中的位置[4,4]和RA。RA現(xiàn)在具有blk4和blk0。(步驟424)i加1(i=1),以得出對位置[5,4]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列[5]之矩陣位置并寫到RA。位置[5,0]包括blk5,位置[5,3]包括blk2。所有其它位置為空。RA現(xiàn)在具有blk4、blk0、blk5和blk2。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟422)RA不包括blk1。將blk1寫到SM的位置[5,4]和RA。RA現(xiàn)在具有blk4、blk0、blk5、blk2和blk1。(步驟424)i加1(i=2),以得出對位置
的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列
之矩陣位置并寫到RA。位置
包括blk0。所有其它位置為空。RA已具有blk0;因此,不寫一個重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟424)RA包括blk2。i加1(i=3),以得出對位置[1,4]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列[1]之矩陣位置并寫到RA。位置[1,0]包括blk1和位置[1,1]包括blk0。所有其它位置為空。RA已包含blk1和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟422)RA不包括blk3。因此,將blk3寫到SM的位置[1,4]和RA。RA現(xiàn)在具有blk4、blk0、blk5、blk2、blk1和blk3。(步驟424)i加1(i=4),以得出對位置[2,4]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列[2]之矩陣位置并寫到RA。位置[2,0]包括blk2,位置[2,2]包括blk0。所有其它位置為空。RA已包含blk2和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟424)RA包括blk4。因此,沒有內(nèi)容寫到位置[2,4]。i加1(i=5),以得出對位置[3,4]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列[3]之矩陣位置并寫到RA。位置[3,0]包括blk3,位置[3,2]包括blk1,位置[3,3]包括blk0。所有其它位置為空。RA已包含blk3、blk1和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟424)RA包括blk5。因此,沒有內(nèi)容寫到位置[3,4]。i加1(i=6)。返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=5)。返回步驟406。(步驟406)清除參考矩陣(RA)(步驟408)比較j與x(步驟412)j小于x(5<6),設(shè)i=0(步驟414)比較i與x(步驟418)i小于x(0<6)。讀SM中列[5]之矩陣位置并寫到RA。位置[5,0]包括blk5,位置[5,3]包括blk2,位置[5,4]包括blk1。Blk5、blk2和blk1被寫到RA。所有其它位置為空。(步驟420)RA包含數(shù)據(jù)塊i或blk0?(步驟422)RA不包括blk0。將blk0寫到SM中的位置[5,5]和RA。RA現(xiàn)在具有blk5、blk2、blk1和blk0。(步驟424)i加1(i=1),以得出對位置
的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(1<6)。讀SM中列
之矩陣位置并寫到RA。位置
包括blk0,所有其它位置為空。RA現(xiàn)在具有blk5、blk2、blk1和blk0。(步驟420)RA包含數(shù)據(jù)塊i或blk1?(步驟424)RA包括blk1。i加1(i=2),以得出對位置[1,5]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(2<6)。讀SM中列[1]之矩陣位置并寫到RA。位置[1,0]包括blk1,位置[1,1]包括blk0,位置[1,4]包括blk3。所有其它位置為空。RA已包含blk0和blk1;因此,不寫一個重復(fù)的復(fù)制品。將blk3寫到RA。RA現(xiàn)在具有blk5、blk2、blk1、blk0和blk3。(步驟420)RA包含數(shù)據(jù)塊i或blk2?(步驟424)RA包括blk2。i加1(i=3),以得出對位置[2,5]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(3<6)。讀SM中列[2]之矩陣位置并寫到RA。位置[2,0]包括blk2和位置[2,2]包括blk0。所有其它位置為空。RA已包含blk2和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk3?(步驟424)RA包括blk3。i加1(i=4),以得出對位置[3,5]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(4<6)。讀SM中列[3]之矩陣位置并寫到RA。位置[3,0]包括blk3,位置[3,2]包括blk1,位置[3,3]包括blk0。所有其它位置為空。RA已包含blk3、blk1和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk4?(步驟422)RA不包括blk4。將blk4寫到SM的位置[3,5]。RA現(xiàn)在具有blk5、blk2、blk1、blk0、blk3和blk4。(步驟424)i加1(i=5),以得出對位置[4,5]的值。返回步驟414。(步驟414)比較i與x(步驟418)i小于x(5<6)。讀SM中列[4]之矩陣位置并寫到RA。位置[4,0]包括blk4,位置[4,4]包括blk0。所有其它位置為空。RA已包含blk4和blk0;不寫重復(fù)的復(fù)制品。(步驟420)RA包含數(shù)據(jù)塊i或blk5?(步驟422)RA包括blk5。因此,沒有內(nèi)容寫到位置[3,4]。(步驟424)i加1(i=6)。返回步驟414。(步驟414)比較i與x(步驟416)i等于x(6=6)。j加1(j=6)。返回步驟406。(步驟406)清除參考陣列(RA)(步驟408)比較j與x。(步驟410)j等于x(6=6);結(jié)束。
按照條約第19條的修改
17、一種計算機(jī)實現(xiàn)的點播數(shù)據(jù)廣播方法,包括步驟準(zhǔn)備用于規(guī)定數(shù)據(jù)傳輸順序的一個傳送矩陣,該數(shù)據(jù)傳輸順序適于對多個客戶機(jī)按非特定客戶方式廣播點播數(shù)據(jù),因此所述點播數(shù)據(jù)文件的傳輸所需要的傳輸帶寬的量不依賴于所述多個客戶機(jī)的數(shù)量。
18、根據(jù)權(quán)利要求17所述的計算機(jī)實現(xiàn)的方法,其中,產(chǎn)生傳送矩陣的步驟包括步驟
準(zhǔn)備適于傳輸?shù)谝粩?shù)據(jù)文件的第一時間表矩陣,所述第一數(shù)據(jù)文件是由第一多個數(shù)據(jù)塊表示,所述第一時間表矩陣為在時隙內(nèi)順序地發(fā)送所述第一多個數(shù)據(jù)塊提供一個第一順序,所用的方式使得根據(jù)所述第一時間表矩陣接收所傳輸?shù)乃龅谝粩?shù)據(jù)文件的任何客戶機(jī)在一個時隙內(nèi)可以開始訪問所述第一數(shù)據(jù)文件。
19、根據(jù)權(quán)利要求18所述的計算機(jī)實現(xiàn)的方法,其中,準(zhǔn)備傳送矩陣的步驟還包括以下步驟
準(zhǔn)備適于傳輸?shù)诙?shù)據(jù)文件的第二時間表矩陣,所述第二數(shù)據(jù)文件是由第二多個數(shù)據(jù)塊表示,所述第二時間表矩陣為在時隙內(nèi)順序地發(fā)送所述第二多個數(shù)據(jù)塊提供一個第二順序,所用的方式使得根據(jù)所述第二時間表矩陣接收所傳輸?shù)乃龅诙?shù)據(jù)文件的任何客戶機(jī)在一個時隙內(nèi)可以開始訪問所述第二數(shù)據(jù)文件;
通過組合所述第一和第二時間表矩陣,產(chǎn)生所述傳送矩陣。
20、根據(jù)權(quán)利要求17所述的計算機(jī)實現(xiàn)的通用數(shù)據(jù)廣播方法,還包括準(zhǔn)備適于向所述多個客戶機(jī)廣播的電子節(jié)目指南(EPG)之步驟。
21、根據(jù)權(quán)利要求17所述的計算機(jī)實現(xiàn)的方法,其中,所述的點播數(shù)據(jù)包括視頻數(shù)據(jù)。
22、根據(jù)權(quán)利要求17所述的計算機(jī)實現(xiàn)的方法,其中,所述的點播數(shù)據(jù)包括游戲數(shù)據(jù)。
23、一種用于控制機(jī)頂盒(STB)的計算機(jī)實現(xiàn)的方法,該方法包括以下步驟
接收數(shù)字?jǐn)?shù)據(jù),該數(shù)字?jǐn)?shù)據(jù)包含具有至少一個數(shù)據(jù)文件的非特定客戶機(jī)點播數(shù)據(jù);及
處理所述非特定客戶機(jī)點播數(shù)據(jù),以便為所述STB之用戶準(zhǔn)備所述至少一個數(shù)據(jù)文件。
24、根據(jù)權(quán)利要求23所述的計算機(jī)實現(xiàn)的方法,還包括以下步驟
接收指示所述接收的數(shù)字?jǐn)?shù)據(jù)之性質(zhì)的電子節(jié)目指南(EPG),所接收的數(shù)字?jǐn)?shù)據(jù)包括具有至少一個數(shù)據(jù)文件的所述非特定客戶機(jī)點播數(shù)據(jù);
向所述STB的所述用戶提供所述EPG;及
接收來自所述STB之所述用戶對所述至少一個數(shù)據(jù)文件的請求。
25、根據(jù)權(quán)利要求23所述的計算機(jī)實現(xiàn)的方法,其中,所述的點播數(shù)據(jù)包括視頻數(shù)據(jù)。
26、根據(jù)權(quán)利要求23所述的計算機(jī)實現(xiàn)的方法,其中,所述的點播數(shù)據(jù)包括游戲數(shù)據(jù)。
27、根據(jù)權(quán)利要求23所述的計算機(jī)實現(xiàn)的方法,其中,所述非特定客戶機(jī)點播數(shù)據(jù)包括多個數(shù)據(jù)文件,所述處理所述非特定客戶機(jī)點播數(shù)據(jù)之步驟包括處理所述非特定客戶機(jī)點播數(shù)據(jù),以便使至少兩個數(shù)據(jù)文件對所述用戶是可用的。
28、根據(jù)權(quán)利要求27所述的計算機(jī)實現(xiàn)的方法,其中,所述至少兩個數(shù)據(jù)文件之第一數(shù)據(jù)文件被實時提供給所述用戶。
29、根據(jù)權(quán)利要求27所述的計算機(jī)實現(xiàn)的方法,其中,所述至少兩個數(shù)據(jù)文件之第一數(shù)據(jù)文件被存儲在持久存儲裝置。
30、一種用于控制機(jī)頂盒(STB)的計算機(jī)實現(xiàn)的方法,該方法包括以下步驟
接收數(shù)字?jǐn)?shù)據(jù),該數(shù)字?jǐn)?shù)據(jù)包含具有至少一個數(shù)據(jù)文件的非特定客戶機(jī)點播數(shù)據(jù)和電子節(jié)目指南(EPG),所述的EPG指示所述接收的數(shù)字?jǐn)?shù)據(jù)的性質(zhì)和具有至少一個數(shù)據(jù)文件的非特定客戶機(jī)點播數(shù)據(jù);
向所述STB之用戶提供所述的EPG數(shù)據(jù);
接收來自所述STB之所述用戶對所述至少一個數(shù)據(jù)文件的請求;
處理所述非特定客戶機(jī)點播數(shù)據(jù),以便為所述用戶準(zhǔn)備所述至少一個數(shù)據(jù)文件。
31、一種可接收和處理多個如VOD的數(shù)字業(yè)務(wù)和數(shù)字廣播的機(jī)頂盒(STB),所述的通用機(jī)頂盒包括
數(shù)據(jù)總線;
第一通信裝置,適于連接數(shù)字廣播通信媒介,所述第一通信裝置可操作以接收數(shù)字廣播數(shù)據(jù);
雙向連接所述數(shù)據(jù)總線的存儲器;
雙向連接所述數(shù)據(jù)總線的數(shù)字?jǐn)?shù)據(jù)解碼器;及
雙向連接所述數(shù)據(jù)總線的中央處理單元(CPU),所述CPU實現(xiàn)控制所述存儲器、所述數(shù)字解碼器和所述解調(diào)器的STB控制處理,所述的STB控制處理執(zhí)行用于以下步驟的指令
處理經(jīng)所述第一通信裝置接收的電子節(jié)目指南(EPG),
所述EPG指示經(jīng)連接所述通信裝置之?dāng)?shù)字廣播服務(wù)器的數(shù)據(jù)廣
播之性質(zhì);
向所述STB之用戶提供所述廣播數(shù)據(jù)之指示;
接收對于由所述STB接收的所需數(shù)據(jù)的請求,其中,按如
由所述EPG指定的非特定客戶機(jī)數(shù)據(jù)點播格式接收所述所需數(shù)
據(jù);
處理按非特定客戶機(jī)數(shù)據(jù)點播格式所接收的所述所需數(shù)
據(jù);及
向所述通用STB之所述用戶提供所述所需數(shù)據(jù)。
32、根據(jù)權(quán)利要求31所述的機(jī)頂盒,其中,所述的STB控制處理可運行以便同時調(diào)諧到由所述通用廣播服務(wù)器廣播的多個頻道之兩個或兩個以上的頻道,并同時處理來自所述多個頻道之兩個或兩個以上頻道的數(shù)據(jù)。
33、根據(jù)權(quán)利要求31所述的機(jī)頂盒,其中,所述的STB控制處理可運行以將所述機(jī)頂盒調(diào)諧到第一頻道,以便選擇由所述用戶請求的數(shù)據(jù),確定所述選擇的數(shù)據(jù)之性質(zhì),解碼所述選擇的數(shù)據(jù),解壓縮所述選擇的數(shù)據(jù),重新裝配所述解碼的數(shù)據(jù),將所述選擇的數(shù)據(jù)存儲到所述存儲器,并按適當(dāng)處理方式提供所述選擇的數(shù)據(jù)給輸出裝置。
權(quán)利要求
1.一種用于傳送數(shù)據(jù)給客戶機(jī)以便提供數(shù)據(jù)點播業(yè)務(wù)的方法,包括步驟
(a)接收數(shù)據(jù)文件;
(b)指定一個時間間隔;
(c)根據(jù)所述時間間隔將所述數(shù)據(jù)文件解析為多個數(shù)據(jù)塊,使得每個數(shù)據(jù)塊在所述時間間隔期間是可顯示的;
(d)確定發(fā)送所述數(shù)據(jù)文件所需的時隙數(shù),其中每一個所述時隙具有的持續(xù)時間基本上等于所述時間間隔;
(e)對每個時隙分配至少
(1)所述多個數(shù)據(jù)塊的一個第一數(shù)據(jù)塊;及
(2)可選的一個或多個附加數(shù)據(jù)塊,使得所述多個數(shù)據(jù)塊對
于在任何時隙期間正在訪問所述數(shù)據(jù)文件的客戶機(jī)按順序是可用
的;及
(f)根據(jù)所述分配步驟(e)發(fā)送所述多個數(shù)據(jù)塊。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述解析步驟包括步驟
(1)確定估計的數(shù)據(jù)塊長度;
(2)確定頻道服務(wù)器中存儲器之叢集長度;及
(3)根據(jù)所述估計的數(shù)據(jù)塊長度和所述的叢集長度解析所述數(shù)據(jù)文件。
3、根據(jù)權(quán)利要求1所述的方法,其中,所述的確定步驟包括評價資源分配和帶寬可用性之步驟。
4、一種用于處理從服務(wù)器接收之?dāng)?shù)據(jù)以提供數(shù)據(jù)點播業(yè)務(wù)的方法,包括步驟
(a)在第一時隙期間接收數(shù)據(jù)文件之選擇;
(b)在第二時隙期間接收所述數(shù)據(jù)文件之至少一個數(shù)據(jù)塊;及
(c)在下一個時隙期間
(1)接收任何尚未被接收的數(shù)據(jù)塊;
(2)順序顯示所述數(shù)據(jù)文件的數(shù)據(jù)塊;及
(3)重復(fù)步驟(c),直到所述數(shù)據(jù)文件的所有數(shù)據(jù)塊都已被接
收和顯示。
5、一種用于為數(shù)據(jù)文件產(chǎn)生時間表矩陣的方法,所述的時間表矩陣提供用于發(fā)送數(shù)據(jù)文件的數(shù)據(jù)塊的發(fā)送順序,使得所述數(shù)據(jù)塊對于正在接收所述數(shù)據(jù)塊的客戶機(jī)按順序是可用的,所述方法包括以下步驟
(a)接收數(shù)據(jù)文件的數(shù)據(jù)塊的數(shù)量[x];
(b)設(shè)置第一變量[j]為零;
(c)設(shè)置第二變量[i]為零;
(d)清除參考陣列中的所有項;
(e)將存儲在一個矩陣中矩陣位置為[i+j]模x]列中的至少一個數(shù)據(jù)塊寫到參考陣列,如果所述的參考陣列尚未包括所述數(shù)據(jù)塊;
(f)將數(shù)據(jù)塊[i]寫到所述參考陣列和所述矩陣的矩陣位置[(i+j)模x,j],如果所述參考陣列不包含所述數(shù)據(jù)塊[i];
(g)所述第二變量[i]加1,重復(fù)步驟(e)直到所述第二變量[i]等于所述數(shù)據(jù)塊之?dāng)?shù)量[x];及
(h)所述第一變量[j]加1,重復(fù)步驟(c)直到所述第一變量[j]等于所述數(shù)據(jù)塊之?dāng)?shù)量[x]。
6、根據(jù)權(quán)利要求5所述的方法,還包括以下步驟
(i)重復(fù)所述步驟(a)至(h),以產(chǎn)生用于一組數(shù)據(jù)文件的一組時間表矩陣;及
(j)根據(jù)所述一組時間表矩陣,應(yīng)用卷積方法產(chǎn)生傳送矩陣,用于發(fā)送所述一組數(shù)據(jù)文件。
7、一種數(shù)據(jù)點播系統(tǒng),包括
第一組頻道服務(wù)器;
中央控制服務(wù)器,用于控制所述第一組頻道服務(wù)器;
第一組上變頻器,連接所述第一組頻道服務(wù)器;及
組合器模塊,連接所述第一組上變頻器,所述組合器模塊適合于經(jīng)傳輸媒介發(fā)送數(shù)據(jù);
其中,所述中央控制服務(wù)器用于將數(shù)據(jù)文件分為數(shù)據(jù)塊,并計算用于以預(yù)訂方式通過所述傳輸媒介發(fā)送所述數(shù)據(jù)塊的傳送矩陣,使得根據(jù)需要可以訪問所述數(shù)據(jù)文件。
8、根據(jù)權(quán)利要求7所述的數(shù)據(jù)點播系統(tǒng),其中,所述的組合器模塊包括組合器和放大器。
9、根據(jù)權(quán)利要求7所述的數(shù)據(jù)點播系統(tǒng),其中,所述的頻道服務(wù)器包括控制器、調(diào)制器和網(wǎng)絡(luò)接口。
10、根據(jù)權(quán)利要求7所述的數(shù)據(jù)點播系統(tǒng),還包括
頻道監(jiān)視模塊,用于監(jiān)視所述的系統(tǒng);
開關(guān)矩陣;
第二組頻道服務(wù)器;及
第二組上變頻器;
其中,所述的頻道監(jiān)視模塊用于向所述中央控制服務(wù)器報告系統(tǒng)狀態(tài),所述中央控制服務(wù)器根據(jù)來自所述頻道監(jiān)視模塊的報告,向所述開關(guān)矩陣發(fā)出指令,以便用所述第二組頻道服務(wù)器中的頻道服務(wù)器替換所述第一組頻道服務(wù)器中的頻道服務(wù)器,及用所述第二組上變頻器中的上變頻器替換所述第一組上變頻器中的上變頻器。
11、一種用于處理從服務(wù)器接收之?dāng)?shù)據(jù)以提供數(shù)據(jù)點播業(yè)務(wù)的方法,包括步驟
(a)從服務(wù)器接收數(shù)據(jù)分組;
(b)讀取所述數(shù)據(jù)分組中的標(biāo)題信息;
(c)至少部分根據(jù)所述標(biāo)題信息,將所述數(shù)據(jù)分組組織為數(shù)據(jù)塊;
(d)驗證對所述數(shù)據(jù)塊的訪問;
(e)當(dāng)訪問被驗證時,解碼所述數(shù)據(jù)塊;及
(f)顯示所述數(shù)據(jù)塊。
12、根據(jù)權(quán)利要求11所述的方法,還包括步驟
(g)當(dāng)檢測出應(yīng)急比特時,終止所述接收步驟;
(h)接收應(yīng)急數(shù)據(jù);及
(i)顯示所述應(yīng)急數(shù)據(jù)。
13、根據(jù)權(quán)利要求11所述的方法,還包括步驟當(dāng)沒有接收數(shù)據(jù)分組時,調(diào)諧到一個應(yīng)急頻道。
14、一種用于計算傳送矩陣的方法,所述傳送矩陣為發(fā)送一組數(shù)據(jù)文件的數(shù)據(jù)塊提供發(fā)送順序,所述方法包括以下步驟
(a)計算用于一組數(shù)據(jù)文件中每一數(shù)據(jù)文件的時間表矩陣,以構(gòu)成一組時間表矩陣;
(b)產(chǎn)生一個標(biāo)識陣列,其中包含用于所述一組數(shù)據(jù)文件之每一數(shù)據(jù)文件的標(biāo)識;及
(c)組合所述一組時間表矩陣和所述標(biāo)識陣列,以產(chǎn)生用于所述一組數(shù)據(jù)文件的傳送矩陣。
15、根據(jù)權(quán)利要求14所述的方法,其中,所述的計算步驟包括以下步驟(i)產(chǎn)生包含用于每一數(shù)據(jù)文件的一組時隙的陣列;及(ii)產(chǎn)生一個陣列,其中包含在每一時隙期間被發(fā)送的數(shù)據(jù)文件之至少一個數(shù)據(jù)塊。
16、根據(jù)權(quán)利要求14所述的方法,其中,所述的組合包括利用卷積方法之步驟。
全文摘要
一種用于傳送數(shù)據(jù)給客戶機(jī)以便提供數(shù)據(jù)點播業(yè)務(wù)的方法,包括步驟:接收數(shù)據(jù)文件,規(guī)定時間間隔,根據(jù)時間間隔將該數(shù)據(jù)文件解析為多個數(shù)據(jù)塊,使得每個數(shù)據(jù)塊在時間間隔期間是可顯示的,確定發(fā)送該數(shù)據(jù)文件所要求的時隙數(shù)量,給每個時隙分配至少多個數(shù)據(jù)塊的第一數(shù)據(jù)塊和任選地一個或者多個附加的數(shù)據(jù)塊,使得從任何時隙開始,(i)通過訪問多個數(shù)據(jù)塊的第一數(shù)據(jù)塊可以顯示該數(shù)據(jù)文件;(ii)在一個連續(xù)的時隙,在前顯示的數(shù)據(jù)塊的下一個數(shù)據(jù)塊可用于顯示;和(iii)重復(fù)步驟(ii),直到數(shù)據(jù)文件的所有的多個數(shù)據(jù)塊已經(jīng)顯示,并且根據(jù)該分配步驟發(fā)送該多個數(shù)據(jù)塊。
文檔編號H04N7/173GK1355904SQ0080847
公開日2002年6月26日 申請日期2000年8月22日 優(yōu)先權(quán)日2000年5月31日
發(fā)明者黃炎 申請人:派威公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
沂源县| 陆良县| 玉山县| 哈尔滨市| 伊金霍洛旗| 含山县| 酉阳| 宜良县| 资阳市| 仁寿县| 凤庆县| 海丰县| 乌兰浩特市| 喀喇沁旗| 金川县| 会宁县| 遵化市| 类乌齐县| 马龙县| 普兰店市| 垣曲县| 怀安县| 黎平县| 南城县| 达日县| 陈巴尔虎旗| 咸宁市| 平果县| 盈江县| 吉隆县| 嵊泗县| 义马市| 海伦市| 金昌市| 尼勒克县| 剑川县| 宕昌县| 和顺县| 库伦旗| 四子王旗| 图木舒克市|