自適應(yīng)流創(chuàng)建和輸送中的虛擬化的制作方法
【專利摘要】本文中描述了通過將內(nèi)容分段成在隨機(jī)存取存儲(chǔ)器(易失性存儲(chǔ)裝置)中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)而不是將內(nèi)容分段成在磁盤或數(shù)據(jù)庫(kù)(非易失性存儲(chǔ)裝置)上存儲(chǔ)的段文件來創(chuàng)建要輸送到一個(gè)或更多個(gè)客戶端的內(nèi)容流的自適應(yīng)流傳送服務(wù)器、方法和系統(tǒng)。
【專利說明】[0001] 自適應(yīng)流創(chuàng)建和輸送中的虛擬化
【技術(shù)領(lǐng)域】
[0002] 本發(fā)明涉及通過將內(nèi)容分段成在隨機(jī)存取存儲(chǔ)器(易失性存儲(chǔ)裝置)中存儲(chǔ)的數(shù) 據(jù)結(jié)構(gòu)而不是將內(nèi)容分段成在磁盤或數(shù)據(jù)庫(kù)(非易失性存儲(chǔ)裝置)上存儲(chǔ)的段文件來創(chuàng)建 要輸送到一個(gè)或更多個(gè)客戶端的內(nèi)容流的自適應(yīng)流傳送服務(wù)器、方法和系統(tǒng)。
【背景技術(shù)】
[0003] 下面的縮略詞和術(shù)語(yǔ)以此定義,其中的至少一些在有關(guān)至少現(xiàn)有技術(shù)和/或本發(fā) 明的以下描述內(nèi)提及。
[0004] CDN 內(nèi)容分布網(wǎng)絡(luò) HLS HTTP直播流傳送 HTTP 超文本傳送協(xié)議 IP 因特網(wǎng)協(xié)議 MPEG 運(yùn)動(dòng)圖像專家組 MRTG 多路由器業(yè)務(wù)自動(dòng)記錄器 RTP 實(shí)時(shí)傳輸協(xié)議 RTSP 實(shí)時(shí)流傳送協(xié)議 SNMP 簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議 易失性存儲(chǔ)裝置(易失性存儲(chǔ)器):是要求功率以保持存儲(chǔ)的信息的計(jì)算機(jī)存儲(chǔ)器,不 象不要求保持的電源的非易失性存儲(chǔ)器。大多數(shù)形式的現(xiàn)代隨機(jī)存取存儲(chǔ)器(RAM)是易失 性存儲(chǔ)裝置,包括動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)和靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)。內(nèi)容可尋址 存儲(chǔ)器和雙端口 RAM通常使用易失性存儲(chǔ)裝置實(shí)現(xiàn)。
[0005] 非易失性存儲(chǔ)裝置(非易失性存儲(chǔ)器):是即使不供電也能夠保留存儲(chǔ)的信息的計(jì) 算機(jī)存儲(chǔ)器。非易失性存儲(chǔ)器的示例包括只讀存儲(chǔ)器、閃存、鐵電RAM、大多數(shù)類型的磁計(jì)算 機(jī)存儲(chǔ)裝置(例如,硬盤、軟盤和磁帶)、光盤和諸如紙帶和穿孔卡的早期計(jì)算機(jī)存儲(chǔ)方法。
[0006] 自適應(yīng)比特率流傳送是自適應(yīng)流傳送服務(wù)器用于通過一個(gè)或更多個(gè)網(wǎng)絡(luò)流傳送 多媒體到用戶裝置(例如,計(jì)算機(jī)、移動(dòng)通信裝置、平板、智能電話)的技術(shù)。雖然過去大多數(shù) 視頻流傳送技術(shù)利用流傳送協(xié)議,如具有RTSP的RTP,但今天的自適應(yīng)流傳送技術(shù)主要基 于HTTP,并且設(shè)計(jì)成通過諸如因特網(wǎng)的大型分布式HTTP網(wǎng)絡(luò)有效地工作。
[0007] HTTP自適應(yīng)比特率流傳送要求自適應(yīng)流傳送服務(wù)器具有以不同比特率編碼的內(nèi) 容流的多個(gè)文件(源視頻、多媒體)。自適應(yīng)流傳送服務(wù)器然后基于從用戶裝置收到的請(qǐng)求 在流傳送內(nèi)容文件的不同編碼之間切換。HTTP流的結(jié)果是用戶的裝置經(jīng)歷極少的緩沖和快 速開始時(shí)間,因此,用戶對(duì)高端和低端網(wǎng)絡(luò)連接均具有良好的體驗(yàn)。如今,存在若干HTTP自 適應(yīng)比特率流傳送技術(shù)能夠由自適應(yīng)流傳送服務(wù)器用于通過諸如因特網(wǎng)的網(wǎng)絡(luò)將多媒體 流傳送到用戶裝置。例如,Apple的HTTP直播流(HLS) m3u8文件系統(tǒng)是一個(gè)此類HTTP自 適應(yīng)比特率流傳送技術(shù),其中,"清單"文件被創(chuàng)建以引用許多視頻段,這些視頻段實(shí)時(shí)更新 以便以特定順序播放。其它HTTP自適應(yīng)比特率流傳送技術(shù)包括Adobe的Dynamic stream for Flash、Microsoft 的 Smooth Streaming 等。
[0008] 參照?qǐng)D1A-1D (現(xiàn)有技術(shù)),有幾個(gè)附圖用于幫助解釋傳統(tǒng)系統(tǒng)100能夠如何實(shí)現(xiàn) HTTP自適應(yīng)比特率流傳送技術(shù)。如圖1A (現(xiàn)有技術(shù))所示,傳統(tǒng)系統(tǒng)100包括內(nèi)容提供商 102 (例如,廣播網(wǎng)絡(luò)102a、⑶N/內(nèi)容庫(kù)102b)、自適應(yīng)流傳送編碼器/轉(zhuǎn)碼器104、自適應(yīng) 流傳送服務(wù)器106、網(wǎng)絡(luò)107 (例如,IP網(wǎng)絡(luò)107、⑶N網(wǎng)絡(luò)107)及客戶端108。自適應(yīng)流 傳送服務(wù)器106接收來自特定客戶端108a對(duì)源視頻110的的請(qǐng)求,并且然后從內(nèi)容提供商 102檢索源視頻110 (步驟1)。在此示例中,廣播網(wǎng)絡(luò)102a具有請(qǐng)求的源視頻110,并且提 供源視頻110到自適應(yīng)流傳送編碼器/轉(zhuǎn)碼器104。自適應(yīng)流傳送編碼器/轉(zhuǎn)碼器104采 用源視頻110,并且(例如)生成相同視頻和音頻內(nèi)容的多個(gè)文件112a、112b、112c和112d, 但文件以不同比特率編碼。例如,自適應(yīng)流傳送編碼器/轉(zhuǎn)碼器104能夠輸出4M比特率文 件112a、2M比特率文件112b、lM比特率文件112c及512K比特率文件112d,這些文件全部 通過PTS/DTS 114相互關(guān)鍵幀對(duì)齊(參見圖1B (現(xiàn)有技術(shù)))。因此,4M比特率文件112a具 有部分116a,該部分包含與2M比特率文件112b、1M比特率文件112c和512K比特率文件 112d的對(duì)應(yīng)部分116b、116c和116d相同的視頻和音頻內(nèi)容。然而,4M比特率文件的部分 116a具有比2M比特率文件的部分116b更高的質(zhì)量,而2M比特率文件的部分116b具有比 1M比特率文件的部分116c更高的質(zhì)量,1M比特率文件的部分116c又具有比512K比特率 文件的部分116d更高質(zhì)量。
[0009] 自適應(yīng)流傳送服務(wù)器106包括接收多個(gè)文件112a、112b、112c和112d的多播分 組第三方保管118和存儲(chǔ)多個(gè)文件112a、112b、112c和112d的分組第三方保管數(shù)據(jù)庫(kù)120 (非易失性存儲(chǔ)裝置)。自適應(yīng)流傳送服務(wù)器106包括分段單元122,該單元用于將每個(gè)存儲(chǔ) 的文件1128、1121 3、112(3和112(1分段成多個(gè)段文件120&1_11、12013 1_11、120(31_11和120(11_ 11(參見 圖1C (現(xiàn)有技術(shù)))。自適應(yīng)流傳送服務(wù)器106包括存儲(chǔ)段文件120&1_η、1201ν η、120(νη和 120dm的段數(shù)據(jù)庫(kù)124(非易失性存儲(chǔ)裝置)。每個(gè)段文件120 &1_η、1201νη、120(νη和120(1^ 包含在預(yù)確定的持續(xù)時(shí)間(例如,10秒)內(nèi)的視頻和音頻分組。在此示例中,段文件120 &1、 1201^、12〇Cl和120(^ (例如)將與時(shí)間代碼tl-t2相關(guān)聯(lián),并且段文件120a4、120b4、120c4和 120d 4 (例如)將與時(shí)間代碼t4-t5相關(guān)聯(lián)。
[0010]自適應(yīng)流傳送服務(wù)器106具有HTTP服務(wù)器126,該服務(wù)器連接段數(shù)據(jù)庫(kù)124并且 創(chuàng)建主清單文件128,該文件包括子清單文件130a、130b、130c和130d (例如)(參見圖1D (現(xiàn)有技術(shù)))。每個(gè)子清單文件130a、130b、130c和130d分別包括對(duì)每個(gè)段文件12〇ai_n、 1201ν η、120(νη和 120(1^ 的引用 132&1_η、1321νη、132(νη 和 132(νη。HTTP 服務(wù)器 126 通過網(wǎng) 絡(luò)107將主清單文件128發(fā)送到客戶端108a (步驟2)。之后,客戶端108a (例如)通過網(wǎng) 絡(luò)107將包括子清單文件的引用之一 132&1的請(qǐng)求發(fā)送到HTTP服務(wù)器126(步驟3)。HTTP 服務(wù)器126使用請(qǐng)求的引用132?檢索并通過網(wǎng)絡(luò)107發(fā)送對(duì)應(yīng)的段文件120?到播放段 文件120&1的客戶端108a (步驟4)??蛻舳?08a (例如)通過網(wǎng)絡(luò)107將識(shí)別子清單文件 的引用之一 132b2的另一請(qǐng)求發(fā)送到HTTP服務(wù)器126 (步驟3')。HTTP服務(wù)器126使用請(qǐng) 求的引用132b2檢索并通過網(wǎng)絡(luò)107發(fā)送對(duì)應(yīng)的段文件120b 2到重放段文件120b2的客戶 端108a (步驟4')??蛻舳?08a繼續(xù)發(fā)送對(duì)特定段文件(例如)120a3_n、120b3_ n、120c3_n和 120d3_n的請(qǐng)求,并且HTTP服務(wù)器126將請(qǐng)求的段文件120a3_ n、120b3_n、120c3_n和120d 3_n發(fā) 回重放收到的段文件120a3_n、120b 3_n、120c3_n和120d3_ n的客戶端108a (步驟3' '和4' ')。 這樣,客戶端l〇8a能夠在經(jīng)歷極少緩沖和快速開始時(shí)間的同時(shí)重放請(qǐng)求的源視頻110,因 此,用戶對(duì)于高端和低端網(wǎng)絡(luò)連接均具有良好的體驗(yàn)。
[0011] 實(shí)際上,傳統(tǒng)自適應(yīng)流傳送服務(wù)器106能夠接受直播和點(diǎn)播內(nèi)容流。這些內(nèi)容流 被分成不同質(zhì)量的可管理段,并且寫入存儲(chǔ)在磁盤上的文件(示為段數(shù)據(jù)庫(kù)124)??蛻舳?108然后能夠通過向原始web服務(wù)器提出HTTP查詢來檢索用于視頻顯示的這些文件。然 而,有與當(dāng)前解決方案有關(guān)的幾個(gè)問題: ?分割(分切)段文件1208^12013^120(^和120(1^的靈活性受到限制。因此,提取 段的子集變得相當(dāng)困難。
[0012] ?傳統(tǒng)自適應(yīng)服務(wù)器106在嘗試存儲(chǔ)原內(nèi)容文件和所有其另外的段文件12〇ai_ n、 120lvn、12〇Cl_n和120(1^時(shí),服務(wù)器106要求V0D流的冗余副本。
[0013] 相應(yīng)地,需要解決與傳統(tǒng)自適應(yīng)服務(wù)器106相關(guān)聯(lián)的這些問題和其它問題。本發(fā) 明滿足了此需要和其它需要。
【發(fā)明內(nèi)容】
[0014] 在本申請(qǐng)的獨(dú)立權(quán)利要求中描述了解決上面提及的問題和其它問題的流傳送服 務(wù)器、方法和系統(tǒng)。在本申請(qǐng)的相關(guān)權(quán)利要求中已描述了流傳送服務(wù)器、方法和系統(tǒng)的有利 實(shí)施例。
[0015] 一方面,本發(fā)明提供用于通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的流傳送服務(wù)器。流傳送 服務(wù)器包括服務(wù)器、分段單元和隨機(jī)存取存儲(chǔ)器單元。服務(wù)器具有配置成接收來自客戶端 的播放內(nèi)容流的請(qǐng)求的輸入接口。分段單元配置成接收內(nèi)容流并且將內(nèi)容流分段成多個(gè)數(shù) 據(jù)結(jié)構(gòu),其中,多個(gè)數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針和對(duì)未分段的內(nèi)容流的引用。隨 機(jī)存取存儲(chǔ)器單元配置成存儲(chǔ)多個(gè)數(shù)據(jù)結(jié)構(gòu)和指針。服務(wù)器還包括:(a)處理單元,配置成 生成包括對(duì)應(yīng)于內(nèi)容流的多個(gè)段的多個(gè)引用的清單;(b)輸出接口,配置成將清單發(fā)送到 客戶端;(c)輸入接口配置成接收來自客戶端的獲取對(duì)應(yīng)于內(nèi)容流的片段之一的請(qǐng)求;(d) 處理單元配置成從隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)獲得與請(qǐng)求的片段相關(guān)聯(lián)的字 節(jié),其中,處理單元使用與請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間,并且計(jì)算與多個(gè)數(shù)據(jù) 結(jié)構(gòu)相關(guān)聯(lián)的對(duì)應(yīng)指針以從與請(qǐng)求的片段相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié);以及 (e)輸出接口配置成將與請(qǐng)求的片段相關(guān)聯(lián)的字節(jié)發(fā)送到客戶端。流傳送服務(wù)器的優(yōu)點(diǎn)是 能夠推遲分段直至必需播放內(nèi)容流。
[0016] 在仍有的另一方面,本發(fā)明提供由流傳送服務(wù)器實(shí)現(xiàn)的用于通過網(wǎng)絡(luò)提供內(nèi)容流 到客戶端的方法。方法包括以下步驟:(a)接收來自客戶端播放內(nèi)容流的請(qǐng)求;(b)接收內(nèi) 容流;(c)將內(nèi)容流分段成多個(gè)數(shù)據(jù)結(jié)構(gòu),其中,多個(gè)數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針 和對(duì)未分段的內(nèi)容流的引用;(d)在隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)多個(gè)數(shù)據(jù)結(jié)構(gòu)和指針;(e) 生成包括對(duì)應(yīng)于內(nèi)容流的多個(gè)片段的多個(gè)引用的清單;(f)將清單發(fā)送到客戶端;(g)接收 來自客戶端的獲取對(duì)應(yīng)于內(nèi)容流的片段之一的請(qǐng)求;(h)通過使用與請(qǐng)求的片段相關(guān)聯(lián)的 開始時(shí)間和停止時(shí)間并且計(jì)算與多個(gè)數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的對(duì)應(yīng)指針以從與請(qǐng)求的片段相關(guān) 聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié),從隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)獲得與請(qǐng) 求的片段相關(guān)聯(lián)的字節(jié);以及(i)將與請(qǐng)求的片段相關(guān)聯(lián)的字節(jié)發(fā)送到客戶端。方法的優(yōu) 點(diǎn)是能夠推遲分段,直至必需播放內(nèi)容流。
[0017] 在還有的另一方面,本發(fā)明提供用于通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的系統(tǒng)。系統(tǒng) 包括內(nèi)容提供商和通過網(wǎng)絡(luò)與客戶端對(duì)接的流傳送服務(wù)器。流傳送服務(wù)器配置成:(a)接 收來自客戶端播放內(nèi)容流的請(qǐng)求;(b)接收來自內(nèi)容提供商的內(nèi)容流;(c)將內(nèi)容流分段成 多個(gè)數(shù)據(jù)結(jié)構(gòu),其中,多個(gè)數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針和對(duì)未分段的內(nèi)容流的引 用;(d)生成包括對(duì)應(yīng)于內(nèi)容流的多個(gè)片段的多個(gè)引用的清單;(e)將清單發(fā)送到客戶端; (f)接收來自客戶端的獲取對(duì)應(yīng)于內(nèi)容流的片段之一的請(qǐng)求;(g)通過使用與請(qǐng)求的片段 相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間及與多個(gè)數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的指針以從與請(qǐng)求的片段相關(guān)聯(lián) 的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié),從隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)獲得與請(qǐng)求 的片段相關(guān)聯(lián)的字節(jié);以及(h)將與請(qǐng)求的片段相關(guān)聯(lián)的字節(jié)發(fā)送到客戶端。流傳送服務(wù) 器的優(yōu)點(diǎn)是能夠推遲分段,直至必需播放內(nèi)容流。
[0018] 本發(fā)明的另外方面將部分地在隨附的詳細(xì)描述、附圖和任何權(quán)利要求中陳述,并 且部分地可從詳細(xì)描述中得出,或者能通過本發(fā)明的實(shí)踐而了解。要理解的是,前面的一般 描述和下面的詳細(xì)描述均只是示范和說明性,并不是限制本發(fā)明為公開的內(nèi)容。
【專利附圖】
【附圖說明】
[0019] 結(jié)合附圖,參照下面詳細(xì)的說明,可獲得本發(fā)明的更完整理解: 圖1A-1D (現(xiàn)有技術(shù))是用于幫助解釋傳統(tǒng)系統(tǒng)能夠如何通過網(wǎng)絡(luò)提供內(nèi)容流到客戶 端的幾個(gè)圖; 圖2是根據(jù)本發(fā)明的一實(shí)施例,配置成通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的示范系統(tǒng)的 圖; 圖3是示出根據(jù)本發(fā)明的一實(shí)施例,由自適應(yīng)流傳送服務(wù)器為通過網(wǎng)絡(luò)提供內(nèi)容流到 客戶端實(shí)現(xiàn)的示范方法的步驟的流程圖; 圖4是根據(jù)本發(fā)明的一實(shí)施例,用于幫助解釋自適應(yīng)流傳送服務(wù)器能夠?qū)?nèi)容流分段 成數(shù)據(jù)結(jié)構(gòu)(虛擬文件)的一種方式的圖; 圖5A-5B是根據(jù)本發(fā)明的一實(shí)施例,用于幫助解釋自適應(yīng)流傳送服務(wù)器能夠?qū)⒁曨l分 段以放置到數(shù)據(jù)結(jié)構(gòu)中的一種方式及它能夠如何進(jìn)一步掃描到內(nèi)容流中以確保對(duì)應(yīng)音頻 分組也包含在正確數(shù)據(jù)結(jié)構(gòu)中使得音頻和視頻時(shí)戳在內(nèi)容流中均匹配的圖; 圖6是根據(jù)本發(fā)明的一實(shí)施例,包括配置成接收直播內(nèi)容流并且然后經(jīng)IP網(wǎng)絡(luò)適應(yīng)性 地輸送直播內(nèi)容流到一個(gè)或更多個(gè)客戶端的自適應(yīng)流傳送服務(wù)器的示范系統(tǒng)的圖;以及 圖7是根據(jù)本發(fā)明的另一實(shí)施例,包括配置成接收點(diǎn)播內(nèi)容流并且然后經(jīng)IP網(wǎng)絡(luò)適應(yīng) 性地輸送點(diǎn)播內(nèi)容流到一個(gè)或更多個(gè)客戶端的自適應(yīng)流傳送服務(wù)器的示范系統(tǒng)的圖。
【具體實(shí)施方式】
[0020] 參照?qǐng)D2,有根據(jù)本發(fā)明的一實(shí)施例,配置成通過網(wǎng)絡(luò)208提供內(nèi)容流203到客戶 端202的示范系統(tǒng)200的圖。系統(tǒng)200包括內(nèi)容提供商204和流傳送服務(wù)器206。內(nèi)容提 供商204連接流傳送服務(wù)器206,而流傳送服務(wù)器206又通過網(wǎng)絡(luò)208 (例如,IP網(wǎng)絡(luò)208、 ⑶N網(wǎng)絡(luò)208、無線網(wǎng)絡(luò)208或其任何組合)與客戶端202 (只示出一個(gè))連接。備選地,內(nèi) 容提供商204可通過網(wǎng)絡(luò)208連接到流傳送服務(wù)器206。流傳送服務(wù)器206包括分段單元 210、 隨機(jī)存取存儲(chǔ)器211 (易失性存儲(chǔ)裝置211)和服務(wù)器212 (例如,HTTP服務(wù)器212)。
[0021] 服務(wù)器212還包括輸入接口 216、處理單元218和輸出接口 220。在此示例中,處 理單元218包括執(zhí)行在存儲(chǔ)器218a (例如,非易失性存儲(chǔ)器218a)中存儲(chǔ)的過程可執(zhí)行指 令以實(shí)現(xiàn)下述操作的處理器218a。輸入接口 216配置成接收來自客戶端202的播放內(nèi)容流 203的請(qǐng)求(步驟1)。分段單元210配置成接收內(nèi)容流203的一個(gè)文件或內(nèi)容流203的多 個(gè)文件,其中,多個(gè)文件以不同比特率編碼(步驟2)。例如,內(nèi)容提供商204(例如,CDN內(nèi)容 庫(kù)204)可提供內(nèi)容流203的文件或多個(gè)文件(參見圖7)?;蛘?,內(nèi)容提供商204 (例如,廣 播網(wǎng)絡(luò)204a)可提供內(nèi)容流203的單個(gè)文件到自適應(yīng)流傳送友好的編碼器/轉(zhuǎn)碼器,編碼 器/轉(zhuǎn)碼器然后生成內(nèi)容流203的文件或多個(gè)文件,并且提供文件或多個(gè)文件到分段單元 210 (參見圖6)。
[0022] 分段單元210還配置成將文件或多個(gè)文件的每個(gè)文件分段成多個(gè)數(shù)據(jù)結(jié)構(gòu)(不是 段文件),數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針和對(duì)未分段的內(nèi)容流的引用(步驟3)。隨機(jī) 存取存儲(chǔ)器211 (易失性存儲(chǔ)器)配置成存儲(chǔ)內(nèi)容流203的文件或多個(gè)文件的數(shù)據(jù)結(jié)構(gòu)(步 驟4)。處理單元218配置成如果有內(nèi)容流203的一個(gè)文件,則生成清單,或者如果有內(nèi)容 流203的多個(gè)文件,則生成主清單(步驟5)。清單或主清單將存儲(chǔ)在隨機(jī)存取存儲(chǔ)器單元 211。 在一個(gè)示例中,清單包括對(duì)應(yīng)于內(nèi)容流203的片段(例如,10秒片段)的引用(例如, URL)。在另一示例中,主清單包括多個(gè)子清單(例如,子清單)(步驟5)。例如,第一子清單 具有對(duì)應(yīng)于具有內(nèi)容流203的第一比特率的片段(例如,10秒片段)的引用(例如,URL),第 二子清單具有對(duì)應(yīng)于具有內(nèi)容流203的第二比特率的片段(例如,10秒片段)的引用(例如, URL)等等,其中,第一比特率比第二比特率更高等等。輸出接口 220配置成將清單或主清單 發(fā)送到客戶端202 (步驟6)。輸入接口 216配置成接收來自客戶端202的獲取對(duì)應(yīng)于內(nèi)容 流203的片段的一個(gè)特定片段的請(qǐng)求(步驟7)。處理單元218配置成從在隨機(jī)存取存儲(chǔ)器 單元111中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)獲得與請(qǐng)求的片段相關(guān)聯(lián)的字節(jié)。例如,處理單元218使用與 請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間,并且計(jì)算與數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的對(duì)應(yīng)指針以從與 請(qǐng)求的片段相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié)(步驟8)。處理單元218在從與請(qǐng)求 的片段相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié)時(shí),配置成如果需要獲得請(qǐng)求的片段的字 節(jié),則執(zhí)行內(nèi)插。輸出接口 220配置成將請(qǐng)求的片段發(fā)送到客戶端202 (步驟9)。之后,步 驟7-9將重復(fù)進(jìn)行,因此,客戶端202能夠獲得和重放內(nèi)容流203。
[0023] 參照?qǐng)D3,圖中示出根據(jù)本發(fā)明的一實(shí)施例,由流傳送服務(wù)器206實(shí)現(xiàn)的通過網(wǎng)絡(luò) 208提供內(nèi)容流203到客戶端202的示范方法300的步驟的流程圖。在步驟302,流傳送服 務(wù)器206接收來自客戶端202的播放內(nèi)容流203的請(qǐng)求。在步驟304,流傳送服務(wù)器206接 收內(nèi)容流203的一個(gè)文件或多個(gè)文件,其中,多個(gè)文件以不同比特率編碼。在步驟306,流 傳送服務(wù)器206將文件或多個(gè)文件的每個(gè)文件分段成多個(gè)數(shù)據(jù)結(jié)構(gòu)(不是段文件),數(shù)據(jù)結(jié) 構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針和對(duì)未分段的內(nèi)容流的引用。在步驟308,流傳送服務(wù)器206 在隨機(jī)存取存儲(chǔ)器211中存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)。在步驟310,流傳送服務(wù)器206生成清單(如果使 用內(nèi)容流203的一個(gè)文件)或主清單(如果使用具有內(nèi)容流203的不同編碼率的多個(gè)文件)。 在步驟312,流傳送服務(wù)器206將清單或主清單發(fā)送到客戶端202。在步驟314,流傳送服務(wù) 器206接收來自客戶端203的獲取對(duì)應(yīng)于內(nèi)容流203的片段的一個(gè)特定片段的請(qǐng)求。在步 驟316,流傳送服務(wù)器206從隨機(jī)存取存儲(chǔ)器單元111中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)獲得與請(qǐng)求的片段 相關(guān)聯(lián)的字節(jié)。例如,流傳送服務(wù)器206使用與請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間 并且計(jì)算與多個(gè)數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的對(duì)應(yīng)指針以從與請(qǐng)求的片段相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù) 據(jù)結(jié)構(gòu)查找字節(jié)。流傳送服務(wù)器206在從與請(qǐng)求的片段相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查 找字節(jié)時(shí),配置成如果需要獲得請(qǐng)求的片段的字節(jié),則執(zhí)行內(nèi)插。在步驟318,流傳送服務(wù)器 206將請(qǐng)求的片段發(fā)送到客戶端202。之后,步驟314、316和318將重復(fù)進(jìn)行,因此,客戶端 202能夠獲得和重放內(nèi)容流203。
[0024] 因此,根據(jù)本發(fā)明的一實(shí)施例的流傳送服務(wù)器206通過實(shí)現(xiàn)以下操作解決現(xiàn)有技 術(shù)的上面提及的問題 : 1.僅在客戶端需要V0D和多節(jié)目直播傳輸流時(shí),才應(yīng)解析它們以實(shí)現(xiàn)單節(jié)目自適應(yīng)傳 輸流傳送。然后,流傳送服務(wù)器206在創(chuàng)建自適應(yīng)流中只需要要求內(nèi)容拆分成存儲(chǔ)在隨機(jī) 存取存儲(chǔ)器211 (易失性存儲(chǔ)裝置)中的數(shù)據(jù)結(jié)構(gòu)而不是將內(nèi)容拆分成在磁盤(非易失性存 儲(chǔ)裝置)上存儲(chǔ)的本地分段文件。這些數(shù)據(jù)結(jié)構(gòu)將可用于客戶端202作為文件流檢索。
[0025] 2.解析流時(shí),流傳送服務(wù)器206創(chuàng)建清單或主清單,清單或主清單包含到流被拆 分成的數(shù)據(jù)結(jié)構(gòu)的虛擬指針集。這允許客戶端202以在任何傳統(tǒng)自適應(yīng)流傳送系統(tǒng)的情況 下它將使用的相同的方式播放內(nèi)容流203,但內(nèi)容流203將由于數(shù)據(jù)結(jié)構(gòu)原因而更快可用, 并且客戶端202不需要知道流傳送服務(wù)器206中內(nèi)容的數(shù)據(jù)的存儲(chǔ)格式和管理。
[0026] 用于示范數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)集如下所述: public class SimplePacketSpan extends AbstractPacketSpan {private final long sO; // 段開始時(shí)間 private final long eO; // 段結(jié)束時(shí)間 OneFileStore enclosing; // 分組數(shù)據(jù)庫(kù) } public class OneFileStore {private long end; //分組數(shù)據(jù)庫(kù)結(jié)束時(shí)間 private long start; //分組數(shù)據(jù)庫(kù)開始時(shí)間 protected TransportPacketBag bag; //磁盤上存儲(chǔ)的分組的引用 protected PCRSlope slope; // "對(duì)象"(算法+數(shù)據(jù))允許從時(shí)間映射到盤上的對(duì) 應(yīng)分組。示范實(shí)現(xiàn)使用線性內(nèi)插 } 下面關(guān)于圖4-6提供流傳送服務(wù)器206能夠?qū)崿F(xiàn)上面提及的方法300的幾個(gè)示范方式 的詳細(xì)討論。
[0027] 參照?qǐng)D4,圖中示出根據(jù)本發(fā)明的一實(shí)施例,流傳送服務(wù)器206 (例如,自適應(yīng)流傳 送服務(wù)器206)能夠如何將內(nèi)容流203分段成數(shù)據(jù)結(jié)構(gòu)402、404和406 (虛擬文件)的一種 方式的圖。具體而言,此圖示出以下內(nèi)容: 1.表示數(shù)據(jù)結(jié)構(gòu)402、404和406的隨機(jī)存取存儲(chǔ)器211的快照,這些數(shù)據(jù)結(jié)構(gòu)組成自 適應(yīng)流傳送服務(wù)器206已分段的內(nèi)容流203的不同質(zhì)量。
[0028] 2.每個(gè)字母數(shù)字組合(PI、P2…P15、Ql、Q2…Q15、Nl、N2…N15)引用內(nèi)容流203 中段邊界的特定指針412 3.自適應(yīng)流傳送服務(wù)器206能夠使用線性引導(dǎo)數(shù)據(jù)饋送以將內(nèi)容流206分段(分切) 以獲得引用節(jié)目的數(shù)據(jù)結(jié)構(gòu)的子集402、404和406。
[0029] 參照?qǐng)D5A-5B,附圖示出有關(guān)流傳送服務(wù)器206 (例如,自適應(yīng)流傳送服務(wù)器206) 能夠?qū)⒁曨l分段以放置到數(shù)據(jù)結(jié)構(gòu)402、404和406 (參見字母數(shù)字A)中的方式及它能夠如 何進(jìn)一步掃描到內(nèi)容流203中以確保對(duì)應(yīng)音頻分組也包含在正確數(shù)據(jù)結(jié)構(gòu)402、404和406 中,使得音頻和視頻時(shí)戳在內(nèi)容流203 (參見字母數(shù)字B)中均匹配。在內(nèi)容流203被輸送 到客戶端202時(shí),這提供了與最新技術(shù)發(fā)展水平相比時(shí)在一部分時(shí)間中在內(nèi)容流203中任 意處剪切新虛擬段和子集的靈活性。例如,如果期望,能夠使用自適應(yīng)流傳送服務(wù)器206組 合任何兩個(gè)不同編碼視頻文件的部分,如組合廣告到內(nèi)容流中。另外,圖示出自適應(yīng)流傳 送服務(wù)器206能夠如何生成主清單502 (參見字母數(shù)字C)。主清單包括多個(gè)子清單504a、 504b…504η(例如,子清單504a、504b... 504η)。例如,第一子清單504a具有多個(gè)引用506a (例如,URL),引用506a對(duì)應(yīng)于具有內(nèi)容流203的第一比特率的片段(例如,10秒片段)。第 二子清單504b具有引用506b(例如,URL),引用506b對(duì)應(yīng)于具有內(nèi)容流203的第二比特率 的片段(例如,10秒片段)。第η子清單504η具有引用506η (例如,URL),引用506η對(duì)應(yīng)于 具有內(nèi)容流203的第η比特率的片段(例如,10秒片段)。第一比特率高于第二比特率,第二 比特率高于第η比特率。
[0030] 參照?qǐng)D6,圖中示出根據(jù)本發(fā)明的一實(shí)施例,包括配置成接收直播內(nèi)容流203并且 然后經(jīng)IP網(wǎng)絡(luò)208適應(yīng)性地輸送直播內(nèi)容流203到一個(gè)或更多個(gè)客戶端202的流傳送服 務(wù)器206(例如,自適應(yīng)流傳送服務(wù)器206)的示范系統(tǒng)600的圖。自適應(yīng)流傳送服務(wù)器206 配置成通過將直播內(nèi)容流203分段成在隨機(jī)存取存儲(chǔ)器211 (易失性存儲(chǔ)裝置211)中存儲(chǔ) 的數(shù)據(jù)結(jié)構(gòu)而不是將直播內(nèi)容流203分段成在磁盤上或數(shù)據(jù)庫(kù)(非易失性存儲(chǔ)裝置)內(nèi)存儲(chǔ) 的段文件來創(chuàng)建要輸送到一個(gè)或更多個(gè)客戶端202的直播內(nèi)容流203。在此示例中,自適應(yīng) 流傳送服務(wù)器206包括多播分組第三方保管610、可配置長(zhǎng)度非易失性存儲(chǔ)器分組第三方 保管612 (其存儲(chǔ)內(nèi)容流203)、分段單元210、服務(wù)器212及隨機(jī)存取存儲(chǔ)器211。在廣播 重新啟動(dòng)時(shí)移電視(TSTV)環(huán)境中實(shí)現(xiàn)自適應(yīng)流傳送的示范系統(tǒng)600包括以下組件 : 自適應(yīng)流傳送客戶端202 :個(gè)人計(jì)算機(jī)、移動(dòng)電話/平板、具h(yuǎn)ttp能力的電視等。
[0031] 自話應(yīng)流傳送友好的編碼器/轉(zhuǎn)碼器602 -確保自適應(yīng)流傳送服務(wù)器206接收 為輸入的任何內(nèi)容流203將處在可管理格式。
[0032] 自話應(yīng)流傳送服備器206 -處理將內(nèi)容流203分段成數(shù)據(jù)結(jié)構(gòu)并且產(chǎn)生用于自 適應(yīng)流傳送客戶端202的流(參見圖2和3 )。雖然在本文中描述自適應(yīng)流傳送服務(wù)器206, 但應(yīng)領(lǐng)會(huì)的是,本發(fā)明也包括作用于只具有單個(gè)比特率的流的流傳送服務(wù)器。
[0033] ⑶N或內(nèi)容庫(kù)604 -內(nèi)容分布網(wǎng)絡(luò)或存儲(chǔ)系統(tǒng),其中,在從不同攝取入口收到內(nèi) 容流203后能夠?qū)⑵浯嫒霂?kù)中。
[0034] 示范系統(tǒng)600可包括許多其它熟知的組件,但為清晰起見,這些熟知的組件在本 文中未描述,而與本發(fā)明相關(guān)的組件202、206、602、604、606已在本文中描述。示范系統(tǒng)600 配置成根據(jù)以下步驟提供完成的直播自適應(yīng)內(nèi)容流203到一個(gè)或更多個(gè)請(qǐng)求客戶端202 (只示出三個(gè)): 1.自適應(yīng)流傳送客戶端202具有對(duì)信道編排和引導(dǎo)數(shù)據(jù)列表608的接入以找出當(dāng)前可 用的節(jié)目(內(nèi)容流203)。
[0035] 2.自適應(yīng)流傳送客戶端202定位要觀看的節(jié)目(內(nèi)容流203),并且向自適應(yīng)流傳 送服務(wù)器206提出播放廣播直播或TSTV節(jié)目(內(nèi)容流203)的請(qǐng)求。應(yīng)注意的是,V0D流具 有開始和結(jié)束,而廣播流具有開始并且然后隨時(shí)間增長(zhǎng)。
[0036] 3.自適應(yīng)流傳送服務(wù)器206也具有對(duì)信道編排和引導(dǎo)數(shù)據(jù)列表608的接入。自適 應(yīng)流傳送服務(wù)器206使用此信息定位請(qǐng)求的內(nèi)容流203。
[0037] 4.在此情況下,請(qǐng)求的關(guān)鍵幀對(duì)齊的內(nèi)容流203以多節(jié)目傳輸流格式從廣播網(wǎng)絡(luò) 606到達(dá)廣播饋送。備選地,⑶N 604能夠包含請(qǐng)求的內(nèi)容流203。
[0038] 5.自適應(yīng)流傳送友好的編碼器/轉(zhuǎn)碼器602根據(jù)要求重新格式化來自廣播網(wǎng)絡(luò) 606的內(nèi)容流203,并且將重新格式化的內(nèi)容流203作為輸入提供到自適應(yīng)流傳送服務(wù)器 206。適應(yīng)的流傳送服務(wù)器206在接收適當(dāng)格式化的內(nèi)容流203時(shí)將內(nèi)容流203分段以創(chuàng) 建在隨機(jī)存取存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)集。如果內(nèi)容流203處在多節(jié)目傳輸流格式,則自 適應(yīng)流傳送服務(wù)器206將每個(gè)內(nèi)容流(具有相同內(nèi)容但具有不同比特率)解復(fù)用成單節(jié)目傳 輸流格式的其自己的數(shù)據(jù)結(jié)構(gòu)集。
[0039] 6.自適應(yīng)流傳送服務(wù)器206將引用內(nèi)容流203的片段的主清單發(fā)送到客戶端 202。主清單能夠?qū)γ靠蛻舳?02是獨(dú)特的,并且是自適應(yīng)流傳送服務(wù)器206能夠基于需要 創(chuàng)建的內(nèi)容流203的片段的引用集。
[0040] 7.內(nèi)容流203本身作為分段文件集被輸送到客戶端,然而主清單引用的數(shù)據(jù)結(jié)構(gòu) 用于完成此操作。換而言之,輸送內(nèi)容流203不以傳統(tǒng)方式要求來自磁盤或數(shù)據(jù)庫(kù)(非易失 性存儲(chǔ)裝置)的靜態(tài)段文件。
[0041] 參照?qǐng)D7,圖中根據(jù)本發(fā)明的另一實(shí)施例的示范系統(tǒng)700的圖包括配置成接收點(diǎn) 播內(nèi)容流203并且然后經(jīng)IP網(wǎng)絡(luò)208適應(yīng)性地輸送點(diǎn)播內(nèi)容流203到一個(gè)或更多個(gè)客戶 端202的流傳送服務(wù)器206(例如,自適應(yīng)流傳送服務(wù)器206)。自適應(yīng)流傳送服務(wù)器206配 置成通過將點(diǎn)播內(nèi)容流203分段成在隨機(jī)存取存儲(chǔ)器211 (易失性存儲(chǔ)裝置211)中存儲(chǔ)的 數(shù)據(jù)結(jié)構(gòu)而不是將點(diǎn)播內(nèi)容流203分段成在磁盤上或數(shù)據(jù)庫(kù)(非易失性存儲(chǔ)裝置)內(nèi)存儲(chǔ)的 段文件來創(chuàng)建要輸送到一個(gè)或更多個(gè)客戶端203的點(diǎn)播內(nèi)容流203。在此示例中,自適應(yīng)流 傳送服務(wù)器206包括分段單元210、服務(wù)器212和隨機(jī)存取存儲(chǔ)器211。在視頻點(diǎn)播環(huán)境中 實(shí)現(xiàn)自適應(yīng)流傳送的示范系統(tǒng)700包括以下組件 : 自適應(yīng)流傳送客戶端202 :個(gè)人計(jì)算機(jī)、移動(dòng)電話/平板、具h(yuǎn)ttp能力的電視等。
[0042] 自話應(yīng)流傳送服備器206 -處理將內(nèi)容流203分段成數(shù)據(jù)結(jié)構(gòu)并且產(chǎn)生用于自 適應(yīng)流傳送客戶端202的流(參見圖2和3 )。雖然在本文中描述自適應(yīng)流傳送服務(wù)器206, 但應(yīng)領(lǐng)會(huì)的是,本發(fā)明也包括作用于只具有單個(gè)比特率的流的流傳送服務(wù)器。
[0043] ⑶N或內(nèi)容庫(kù)604 -內(nèi)容分布網(wǎng)絡(luò)或存儲(chǔ)系統(tǒng),其中,在從不同攝取入口收到內(nèi) 容流203后能夠?qū)⑵浯嫒霂?kù)中。
[0044] V0D內(nèi)容203 -多個(gè)關(guān)鍵幀對(duì)齊的視頻/音頻流203。應(yīng)注意的是,V0D流具有 開始和結(jié)束,而廣播流具有開始并且然后隨時(shí)間增長(zhǎng)。
[0045] 示范系統(tǒng)700可包括許多其它熟知的組件,但為清晰起見,這些熟知的組件在本 文中未描述,同時(shí)與本發(fā)明相關(guān)的組件202、206、602的604已在本文中描述。示范系統(tǒng)700 配置成根據(jù)以下步驟提供完成的點(diǎn)播自適應(yīng)內(nèi)容流203到一個(gè)或更多個(gè)請(qǐng)求客戶端202 (只示出三個(gè)): 1.自適應(yīng)流傳送客戶端202向自適應(yīng)流傳送服務(wù)器206提出播放VOD資產(chǎn)(點(diǎn)播內(nèi)容 流203)的請(qǐng)求。
[0046] 2.自適應(yīng)流傳送服務(wù)器206從⑶N 604檢索請(qǐng)求的關(guān)鍵幀對(duì)齊的V0D內(nèi)容流203, 并且將檢索的內(nèi)容流203分段,創(chuàng)建要發(fā)送到客戶端202的數(shù)據(jù)結(jié)構(gòu)集。
[0047] 3.自適應(yīng)流傳送服務(wù)器206將引用內(nèi)容流203的片段的清單發(fā)送到客戶端202。 清單能夠?qū)γ靠蛻舳?02是獨(dú)特的,并且是自適應(yīng)流傳送服務(wù)器206現(xiàn)在創(chuàng)建的內(nèi)容流203 中位置的指針集。
[0048] 4.內(nèi)容流203本身作為分段文件集被輸送到客戶端,然而清單引用的數(shù)據(jù)結(jié)構(gòu)用 于完成此操作。換而言之,輸送內(nèi)容流203不以傳統(tǒng)方式要求來自盤或數(shù)據(jù)庫(kù)(非易失性存 儲(chǔ)裝置)的靜態(tài)段文件。
[0049] 鑒于以上所述,應(yīng)領(lǐng)會(huì)的是,配置成輸送來自管理的數(shù)據(jù)結(jié)構(gòu)而不是靜態(tài)文件的 自適應(yīng)內(nèi)容流203的自適應(yīng)流傳送服務(wù)器206具有許多優(yōu)點(diǎn)(例如)。
[0050] ?現(xiàn)在,內(nèi)容流203在其分段由分段單元210完成前能夠變得可用于客戶端202。 這在處理直播內(nèi)容流203時(shí)提供了向客戶端203的更快服務(wù)輸送。
[0051] ?自適應(yīng)流傳送服務(wù)器206能夠快速更改段邊界并且為客戶端202提取內(nèi)容流203 的子集而不必創(chuàng)建新文件。能夠重定義段邊界大幅增強(qiáng)了自適應(yīng)流傳送服務(wù)器206能夠如 何管理其內(nèi)容。它也使自適應(yīng)流傳送服務(wù)器206更易于將廣告或備選流插入內(nèi)容流203中。
[0052] ?僅在必需播放內(nèi)容流203時(shí)才進(jìn)行流分段。這在自適應(yīng)流傳送服務(wù)器206上是 巨大的空間消耗節(jié)省。
[0053] ?傳統(tǒng)自適應(yīng)流傳送服務(wù)器在分割(分切)段文件方面靈活性有限,這使得提取段 的子集變得困難。自適應(yīng)流傳送服務(wù)器206通過包括能夠按需在任何邊界將文件分段的邏 輯解決了此問題。此邏輯用于每個(gè)段,并且不是特殊情況。
[0054] ?服務(wù)器嘗試存儲(chǔ)原內(nèi)容文件并且所有其另外的段文件時(shí),傳統(tǒng)自適應(yīng)服務(wù)器要 求V0D流的冗余副本。自適應(yīng)流傳送服務(wù)器206通過按需計(jì)算段而不是在文件中存儲(chǔ)段來 解決此問題。
[0055] 雖然附圖中示出且在上面的【具體實(shí)施方式】中描述了本發(fā)明的多個(gè)實(shí)施例,但應(yīng)理 解的是,本發(fā)明并不限于公開的實(shí)施例,而是在不脫離隨附權(quán)利要求內(nèi)陳述和定義的本發(fā) 明的情況下,也能夠進(jìn)行多種重新布置、修改和替代。
【權(quán)利要求】
1. 一種用于通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的流傳送服務(wù)器,所述流傳送服務(wù)器包括: 服務(wù)器,包括配置成接收來自所述客戶端的播放所述內(nèi)容流的請(qǐng)求的輸入接口; 分段單元,配置成接收所述內(nèi)容流并且將所述內(nèi)容流分段成多個(gè)數(shù)據(jù)結(jié)構(gòu),其中所述 多個(gè)數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指針和對(duì)未分段的內(nèi)容流的引用; 隨機(jī)存取存儲(chǔ)器單元,配置成存儲(chǔ)所述多個(gè)數(shù)據(jù)結(jié)構(gòu)和所述指針; 所述服務(wù)器還包括: 處理單元,配置成生成包括對(duì)應(yīng)于所述內(nèi)容流的多個(gè)片段的多個(gè)引用的清單; 輸出接口,配置成將所述清單發(fā)送到所述客戶端; 所述輸入接口配置成接收來自所述客戶端的獲取對(duì)應(yīng)于所述內(nèi)容流的所述片段之一 的請(qǐng)求; 所述處理單元配置成從所述隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的所述數(shù)據(jù)結(jié)構(gòu)獲得與所述 請(qǐng)求的片段相關(guān)聯(lián)的字節(jié),其中所述處理單元使用與所述請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和 停止時(shí)間,并且計(jì)算與所述多個(gè)數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的所述對(duì)應(yīng)指針以從與所述請(qǐng)求的片段相 關(guān)聯(lián)的所述一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找字節(jié);以及 所述輸出接口配置成將與所述請(qǐng)求的片段相關(guān)聯(lián)的所述字節(jié)發(fā)送到所述客戶端。
2. 如權(quán)利要求1所述的流傳送服務(wù)器,其中如果所述分段單元將所述內(nèi)容流接收作為 多節(jié)目傳輸流格式,則所述分段單元配置成將所述多節(jié)目傳輸流格式解復(fù)用成多個(gè)單節(jié)目 流模式,其中每個(gè)單節(jié)目流格式被分段成多個(gè)數(shù)據(jù)結(jié)構(gòu)并且存儲(chǔ)在所述隨機(jī)存取存儲(chǔ)器單 元中。
3. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述處理單元在從與所述請(qǐng)求的片段相關(guān) 聯(lián)的所述一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu)查找所述字節(jié)時(shí),配置成如果需要獲得所述請(qǐng)求的片段的 所述字節(jié)則執(zhí)行內(nèi)插。
4. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述服務(wù)器配置成在所述分段單元完成將 所述內(nèi)容流分段成所述多個(gè)數(shù)據(jù)結(jié)構(gòu)前將所述清單發(fā)送到所述客戶端。
5. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述服務(wù)器配置成從所述隨機(jī)存取存儲(chǔ)器 中存儲(chǔ)的所述數(shù)據(jù)結(jié)構(gòu)提取所述內(nèi)容流的片段而無需創(chuàng)建新的段文件。
6. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述分段單元配置成僅在必需提供所述內(nèi) 容流的一個(gè)或更多個(gè)所述片段到所述客戶端時(shí)將所述內(nèi)容流分段成所述多個(gè)數(shù)據(jù)結(jié)構(gòu)。
7. 如權(quán)利要求1所述的流傳送服務(wù)器,還包括配置成在所述分段單元獲得所述內(nèi)容流 和將所述內(nèi)容流分段成所述多個(gè)數(shù)據(jù)結(jié)構(gòu)前存儲(chǔ)所述內(nèi)容流的分組第三方保管和對(duì)應(yīng)第 三方保管數(shù)據(jù)庫(kù)。
8. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述客戶端是個(gè)人計(jì)算機(jī)、移動(dòng)電話、平板 或具超文本傳送協(xié)議(HTTP)能力的電視之一。
9. 如權(quán)利要求1所述的流傳送服務(wù)器,其中所述內(nèi)容流是視頻點(diǎn)播內(nèi)容流或廣播內(nèi)容 流之一。
10. -種由流傳送服務(wù)器實(shí)現(xiàn)的用于通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的方法,所述方法 包括以下步驟: 接收來自所述客戶端播放所述內(nèi)容流的請(qǐng)求; 接收所述內(nèi)容流; 將所述內(nèi)容流分段成多個(gè)數(shù)據(jù)結(jié)構(gòu),其中所述多個(gè)數(shù)據(jù)結(jié)構(gòu)包含對(duì)應(yīng)于時(shí)間代碼的指 針和對(duì)未分段的內(nèi)容流的引用; 在隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)所述多個(gè)數(shù)據(jù)結(jié)構(gòu)和所述指針; 生成包括對(duì)應(yīng)于所述內(nèi)容流的多個(gè)片段的多個(gè)引用的清單; 將所述清單發(fā)送到所述客戶端; 接收來自所述客戶端的獲取對(duì)應(yīng)于所述內(nèi)容流的所述片段之一的請(qǐng)求; 通過使用與所述請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間并且計(jì)算與所述多個(gè)數(shù)據(jù) 結(jié)構(gòu)相關(guān)聯(lián)的所述對(duì)應(yīng)指針以從與所述請(qǐng)求的片段相關(guān)聯(lián)的所述一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu) 查找字節(jié),從所述隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的所述數(shù)據(jù)結(jié)構(gòu)獲得與所述請(qǐng)求的片段相關(guān) 聯(lián)的字節(jié);以及 將與所述請(qǐng)求的片段相關(guān)聯(lián)的所述字節(jié)發(fā)送到所述客戶端。
11. 如權(quán)利要求10所述的方法,其中如果所述內(nèi)容流是多節(jié)目傳輸流格式,則將所述 多節(jié)目傳輸流格式外推成多個(gè)單節(jié)目流模式,其中每個(gè)單節(jié)目流格式被分段成多個(gè)數(shù)據(jù)結(jié) 構(gòu)并且存儲(chǔ)在所述隨機(jī)存取存儲(chǔ)器單元中。
12. 如權(quán)利要求10所述的方法,其中所述獲得步驟還包括在與所述數(shù)據(jù)結(jié)構(gòu)相關(guān)聯(lián)的 所述指針不對(duì)應(yīng)于所述請(qǐng)求的片段中的所述開始時(shí)間和停止時(shí)間時(shí)獲得與所述請(qǐng)求的片 段相關(guān)聯(lián)的所述字節(jié)的內(nèi)插步驟。
13. 如權(quán)利要求10所述的方法,其中在完成所述內(nèi)容流到所述多個(gè)數(shù)據(jù)結(jié)構(gòu)的所述分 段前,將所述清單發(fā)送到所述客戶端。
14. 如權(quán)利要求10所述的方法,還包括從所述隨機(jī)存取存儲(chǔ)器中存儲(chǔ)的所述數(shù)據(jù)結(jié)構(gòu) 提取所述內(nèi)容流的片段而無需創(chuàng)建新段文件。
15. 如權(quán)利要求10所述的方法,其中將所述內(nèi)容流分段成所述多個(gè)數(shù)據(jù)結(jié)構(gòu)的步驟僅 在必需提供所述內(nèi)容流的一個(gè)或更多個(gè)片段到所述客戶端時(shí)發(fā)生。
16. 如權(quán)利要求10所述的方法,還包括在將所述內(nèi)容流分段成所述多個(gè)數(shù)據(jù)結(jié)構(gòu)的步 驟前存儲(chǔ)所述收到的內(nèi)容流的步驟。
17. 如權(quán)利要求10所述的方法,其中所述客戶端是個(gè)人計(jì)算機(jī)、移動(dòng)電話、平板或具超 文本傳送協(xié)議(HTTP)能力的電視之一。
18. 如權(quán)利要求10所述的方法,其中所述內(nèi)容流是視頻點(diǎn)播內(nèi)容流或廣播內(nèi)容流之 〇
19. 一種用于通過網(wǎng)絡(luò)提供內(nèi)容流到客戶端的系統(tǒng),所述系統(tǒng)包括: 內(nèi)容提供商; 通過所述網(wǎng)絡(luò)與所述客戶端對(duì)接的流傳送服務(wù)器; 所述流傳送服務(wù)器配置成: 接收來自所述客戶端播放所述內(nèi)容流的請(qǐng)求; 接收來自所述內(nèi)容提供商的所述內(nèi)容流; 將所述內(nèi)容流分段成多個(gè)數(shù)據(jù)結(jié)構(gòu),其中所述多個(gè)數(shù)據(jù)結(jié)構(gòu)通過對(duì)應(yīng)于時(shí)間代碼的指 針識(shí)別; 生成包括對(duì)應(yīng)于所述內(nèi)容流的多個(gè)片段的多個(gè)引用的清單; 將所述清單發(fā)送到所述客戶端; 接收來自所述客戶端的獲取對(duì)應(yīng)于所述內(nèi)容流的所述片段之一的請(qǐng)求; 通過使用與所述請(qǐng)求的片段相關(guān)聯(lián)的開始時(shí)間和停止時(shí)間并且計(jì)算與所述多個(gè)數(shù)據(jù) 結(jié)構(gòu)相關(guān)聯(lián)的所述對(duì)應(yīng)指針以從與所述請(qǐng)求的片段相關(guān)聯(lián)的所述一個(gè)或更多個(gè)數(shù)據(jù)結(jié)構(gòu) 查找字節(jié),從所述隨機(jī)存取存儲(chǔ)器單元中存儲(chǔ)的所述數(shù)據(jù)結(jié)構(gòu)獲得與所述請(qǐng)求的片段相關(guān) 聯(lián)的字節(jié);以及 將與所述請(qǐng)求的片段相關(guān)聯(lián)的所述字節(jié)發(fā)送到所述客戶端。
【文檔編號(hào)】G06F9/46GK104126175SQ201280070100
【公開日】2014年10月29日 申請(qǐng)日期:2012年12月12日 優(yōu)先權(quán)日:2011年12月19日
【發(fā)明者】B.富爾斯曼, C.達(dá)舍爾, C.菲利普斯, J.雷諾, S.馬丁 申請(qǐng)人:愛立信電視公司