專利名稱:在資源不足時(shí)段對(duì)用于修復(fù)錯(cuò)誤媒體流的流的遞送的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及向訂戶的媒體流遞送。
背景技術(shù):
當(dāng)向訂戶遞送媒體流時(shí),常常會(huì)由于各種原因而發(fā)生錯(cuò)誤。傳統(tǒng)的用于修復(fù)媒體 流中的錯(cuò)誤或者用于復(fù)原媒體流中的錯(cuò)誤的技術(shù)包括前向糾錯(cuò)(FEC)和重傳。然而,這些 傳統(tǒng)技術(shù)不能處理錯(cuò)誤率高于預(yù)期以及當(dāng)在相對(duì)較長(zhǎng)時(shí)間段不能利用網(wǎng)絡(luò)或訂戶資源時(shí) 的情形。雖然在這些情形中能夠重傳整個(gè)節(jié)目,但是這樣的重傳不能有效利用網(wǎng)絡(luò)資源。因 此,需要解決這些和其它問題。
發(fā)明內(nèi)容
在一個(gè)實(shí)施例中,一種方法包括在第一信道上從節(jié)目源攝取(ingest)節(jié)目流。該 方法還包括存儲(chǔ)所述節(jié)目流,以及從客戶端接收在所述客戶端處所接收的流中存在不可復(fù) 原的錯(cuò)誤的通知。所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分。該方法還包 括響應(yīng)于所述通知在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部分。在另一實(shí)施例中,一種設(shè)備包括存儲(chǔ)器和處理器。所述存儲(chǔ)器存儲(chǔ)程序代碼。所 述處理器至少被所述程序代碼編程為在第一信道上從節(jié)目源攝取節(jié)目流。所述處理器還被 編程為存儲(chǔ)所述節(jié)目流,以及從客戶端接收在所述客戶端處所接收的流中存在不可復(fù)原的 錯(cuò)誤的通知。所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分。所述處理器還被 編程為響應(yīng)于所述通知在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部分。在又一實(shí)施例中,一種設(shè)備包括用于在第一信道上從節(jié)目源攝取節(jié)目流的裝置。 該設(shè)備還包括用于存儲(chǔ)所述節(jié)目流的裝置,以及用于從客戶端接收在所述客戶端處所接收 的流中存在不可復(fù)原的錯(cuò)誤的通知的裝置。所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的 至少一部分。該設(shè)備還包括用于響應(yīng)于所述通知在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的 節(jié)目流的所述相應(yīng)部分的裝置。
通過如下的示圖將能更好地理解本公開的許多方面。示圖中的部件不一定是按比 例的,而強(qiáng)調(diào)的是清楚地圖示本公開的原理。圖1是用于為具有擴(kuò)展錯(cuò)誤的媒體流遞送可變延遲修復(fù)流的系統(tǒng)和方法的一個(gè) 實(shí)施例的框圖。圖2是圖示在一個(gè)示例情形中圖1的各部件之間的交互的消息流示圖。圖3是圖示在一個(gè)示例情形中圖1的各部件之間的交互的數(shù)據(jù)流示圖。
圖4是示出有關(guān)圖3的示例情形中的部件交互的更多細(xì)節(jié)的消息流示圖。圖5是圖示在另一示例情形中圖1的部件之間的交互的數(shù)據(jù)流示圖。圖6是示出有關(guān)圖5的示例情形中的部件交互的更多細(xì)節(jié)的消息流示圖。圖7是圖示在圖1的系統(tǒng)的某些實(shí)施例中對(duì)多播尋址的使用的框圖。圖8是圖示在另一示例情形中圖1的各部件之間的交互的消息流示圖。
圖9是在來(lái)自圖1的DHCT的一個(gè)實(shí)施例中的修復(fù)邏輯的流程圖。圖10是包括利用圖1的錯(cuò)誤修復(fù)遞送部件和DHCT的示例網(wǎng)絡(luò)架構(gòu)的框圖。圖11是示出通用計(jì)算機(jī)中所選擇的可用于實(shí)現(xiàn)圖1的DHCT或錯(cuò)誤修復(fù)遞送部件 的框圖。
具體實(shí)施例方式圖1是用于為具有擴(kuò)展錯(cuò)誤的媒體流遞送修復(fù)流的系統(tǒng)和方法的一個(gè)實(shí)施例 的框圖。系統(tǒng)100包括節(jié)目流源110、錯(cuò)誤修復(fù)遞送部件120以及數(shù)字家庭通信終端 (DHCT) 130。在一些實(shí)施例中,DHCT 130采用機(jī)頂盒的形式。流源110通過邏輯信道140向 DHCT 130提供節(jié)目流135。DHCT 130將所接收到的節(jié)目的至少一部分存儲(chǔ)在存儲(chǔ)裝置150 中,以供檢索和/或回放。通常,流源110和/或錯(cuò)誤修復(fù)遞送部件120內(nèi)所包含的存儲(chǔ)容 量比DHCT 130中所包含的存儲(chǔ)裝置在大小上大許多量級(jí)。在本公開中,節(jié)目流135是諸如音頻或音頻/視頻的媒體流,其被DHCT 130存儲(chǔ) 并最終被訂戶消費(fèi)。一個(gè)示例是諸如ABC或NBC之類的TV廣播信道的數(shù)字編碼。在本 公開中,邏輯信道140執(zhí)行節(jié)目流135的單播或多播遞送。節(jié)目流135通常是被編碼的, 并且示例編碼格式包括MPEG2和H. 264AVC。邏輯信道140上的示例傳輸流遞送格式有 MPEG-TS-UDP 和 MPEG-TS-RTP。流源110還通過邏輯信道160向錯(cuò)誤修復(fù)遞送部件120提供節(jié)目流135。錯(cuò)誤修 復(fù)遞送部件120獲取節(jié)目流135并且將該節(jié)目的至少一部分存儲(chǔ)在存儲(chǔ)裝置170中。為了 本公開的目的,假定邏輯信道160上的錯(cuò)誤是可糾正的,或者糾錯(cuò)能力的程度等同于經(jīng)由 邏輯信道160進(jìn)行遞送的可靠性。通常,此假定是合理的,因?yàn)殄e(cuò)誤修復(fù)遞送部件120位于 相對(duì)靠近流源110處,因此干擾部件和連接的數(shù)量較少,或者,用于修復(fù)該鏈路中的錯(cuò)誤的 可靠方法被執(zhí)行了。用于對(duì)邏輯信道160上的錯(cuò)誤進(jìn)行可靠修復(fù)的具體技術(shù)對(duì)于本領(lǐng)域技 術(shù)人員來(lái)說(shuō)是熟知的,所以在本公開中將不進(jìn)一步討論。在流源110處的發(fā)送和在DHCT 130處的接收之間,節(jié)目流135的部分可能受到各 種錯(cuò)誤狀況的影響,這導(dǎo)致了未被DHCT 130接收的內(nèi)容,或者DHCT 130處具有不可復(fù)原的 錯(cuò)誤的內(nèi)容。在這樣的情況中,錯(cuò)誤修復(fù)遞送部件120使用存儲(chǔ)裝置170中的節(jié)目流135來(lái) 通過邏輯信道180向DHCT 130提供受影響的內(nèi)容作為分段修復(fù)流175。在一些實(shí)施例中, 分段修復(fù)流175以比節(jié)目流135低的速率或者低的服務(wù)等級(jí)被遞送,或者甚至被盡力遞送。 分段修復(fù)流175可以在可變延遲量(大約數(shù)秒、數(shù)分鐘、數(shù)小時(shí),或者更長(zhǎng),這依賴于路徑的 特性)之后被遞送給DHCT 130。DHCT 130將所接收到的分段修復(fù)流175存儲(chǔ)在存儲(chǔ)裝置150中。DHCT 130內(nèi)的 修復(fù)邏輯190將分段修復(fù)流175內(nèi)的內(nèi)容與節(jié)目流135內(nèi)的內(nèi)容相結(jié)合以產(chǎn)生可被檢索和 /或回放的糾正后的節(jié)目。該方法使得訂戶能夠觀看受錯(cuò)誤狀況影響的節(jié)目片段,并且因?yàn)槠浔苊庵貍髡麄€(gè)節(jié)目所以還使得訂戶能夠高效地利用帶寬。DHCT 130處的存儲(chǔ)裝置150 使得即使在發(fā)生擴(kuò)展中斷而呈現(xiàn)被時(shí)移或暫停時(shí)也能夠無(wú)縫地呈現(xiàn)內(nèi)容。訂戶在消費(fèi)節(jié)目 時(shí)所看的依賴于在接收有錯(cuò)誤的節(jié)目流135和消費(fèi)該節(jié)目之間逝去的時(shí)間。例如,如果訂 戶緊在接收到流之后但修復(fù)尚未完成時(shí)立即消費(fèi)該流,則他可能看到在顯示中有間隙或停 頓。隨著觀看延遲增加,看到無(wú)縫流的可能性增大,因?yàn)橐恍┢握诒恍迯?fù),并且一些修 復(fù)后的片段從存儲(chǔ)器或盤片被提供。當(dāng)觀看被充分延遲了時(shí),訂戶可以訪問完全糾正后的 節(jié)目,所以該節(jié)目對(duì)于觀看者來(lái)說(shuō)看起來(lái)像是連續(xù)流。引起分段修復(fù)流175的傳送的缺失或錯(cuò)誤內(nèi)容可以由錯(cuò)誤修復(fù)遞送部件120檢測(cè) 或由DHCT 130檢測(cè)。這包括由DHCT 130接收到的包含不能通過FEC和/或重傳技術(shù)復(fù)原 的錯(cuò)誤的內(nèi)容(例如,錯(cuò)誤數(shù)超過FEC碼的力量)。這也包括根本未被DHCT 130接收的節(jié) 目?jī)?nèi)容。缺失或錯(cuò)誤內(nèi)容可以是各種狀況的結(jié)果。缺失或錯(cuò)誤內(nèi)容的一些實(shí)例是因主干或 接入網(wǎng)絡(luò)上的諸如網(wǎng)絡(luò)擁塞或由于電力或裝備故障的中斷之類的狀況引起的。缺失或錯(cuò)誤 內(nèi)容的另外的實(shí)例是因訂戶位置處的諸如訂戶鏈路上的擁塞、訂戶鏈路上的中斷或訂戶位 置處的電力或裝備故障之類的狀況引起的。在此描述的技術(shù)因此可以用于修復(fù)在擴(kuò)展時(shí)間 段(大約數(shù)秒、數(shù)分鐘、數(shù)小時(shí)、數(shù)天、數(shù)周、數(shù)月或數(shù)年,這依賴于存儲(chǔ)資源)中發(fā)生的狀 況。注意,錯(cuò)誤修復(fù)遞送部件120可以結(jié)合諸如FEC和/或重傳技術(shù)之類的其它形式的錯(cuò) 誤修復(fù)來(lái)使用。
在此公開的技術(shù)還處理歸因于訂戶資源不足的缺失或錯(cuò)誤內(nèi)容。訂戶資源不足的 一個(gè)示例包括在當(dāng)所有調(diào)諧器當(dāng)前都被訂閱用于其它記錄請(qǐng)求或服務(wù)(例如,直播觀看、 電子節(jié)目指南(EPG)下載))時(shí)試圖記錄節(jié)目的情形。訂戶資源不足的另一示例包括在當(dāng) 訂戶鏈路帶寬因?yàn)樵搸捯驯环峙溆糜谄渌涗浾?qǐng)求或服務(wù)而不足時(shí)試圖記錄節(jié)目的情 形。又一示例包括在當(dāng)預(yù)期到調(diào)諧器或足夠鏈路帶寬可用但是因?yàn)楣?jié)目的實(shí)際開始時(shí)間與 公布的EPG時(shí)間表中的開始時(shí)間不同而不可用時(shí)試圖記錄節(jié)目的情形。調(diào)諧器應(yīng)被理解為 使能媒體接收的功能,并且可用性應(yīng)被理解為在DHCT內(nèi)包含可用帶寬和其它資源。在一些實(shí)施例中,分段修復(fù)流175是與節(jié)目流135相同類型的流,但是只不過包含 較少的內(nèi)容。例如,如果節(jié)目流135是包含整個(gè)節(jié)目的MPEG傳輸流,則分段修復(fù)流175也 是MPEG傳輸流,但是僅包含受錯(cuò)誤影響的節(jié)目片段。在一些實(shí)施例中,分段修復(fù)流175包 含節(jié)目流135中所包括的所有內(nèi)容,以使得當(dāng)DHCT 130缺失整個(gè)節(jié)目時(shí)分段修復(fù)流175能 夠被獨(dú)自使用。在一些實(shí)施例中,分段修復(fù)流175不是通過利用重傳技術(shù)、FEC技術(shù)或者利 用二者來(lái)提供的。在這些情況中,分段修復(fù)流175是以比實(shí)時(shí)較差(less-than-real-time) 的方式接收的,從而減少對(duì)網(wǎng)絡(luò)和部件資源的負(fù)荷。為了容易進(jìn)行說(shuō)明和解釋,流源110在圖1中被示為產(chǎn)生了單個(gè)節(jié)目流135。然 而,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,流源110通常生成多個(gè)節(jié)目流,這些節(jié)目流被遞送給多個(gè)訂 戶。類似地,錯(cuò)誤修復(fù)遞送部件120通常攝取多個(gè)節(jié)目流,這些節(jié)目流中的任意一個(gè)節(jié)目流 可以用于生成相應(yīng)的修復(fù)流以供遞送給特定訂戶。本領(lǐng)域技術(shù)人員還應(yīng)當(dāng)認(rèn)識(shí)到,錯(cuò)誤修 復(fù)遞送部件120通常將所攝取的節(jié)目存儲(chǔ)一段時(shí)間(例如,其可以在從數(shù)分鐘到數(shù)周的范 圍內(nèi),這受到存儲(chǔ)空間的限制),并且在此段時(shí)間可以生成針對(duì)特定節(jié)目流的修復(fù)流。本領(lǐng)域的技術(shù)人員還應(yīng)當(dāng)認(rèn)識(shí)到,邏輯信道140、160和180可以利用多種網(wǎng)絡(luò)架 構(gòu)來(lái)實(shí)現(xiàn),但是為了解釋系統(tǒng)100的概念的目的,本公開集中在按照邏輯構(gòu)建的信道上。示例系統(tǒng)架構(gòu)的其它細(xì)節(jié)稍后結(jié)合圖10來(lái)討論。分段修復(fù)流175的傳送速率和服務(wù)質(zhì)量(QoS)特性獨(dú)立于相應(yīng)節(jié)目流135的所述 速率和特性。在一些實(shí)施例中,分段修復(fù)流175的傳送速率和/或QoS特性是基于錯(cuò)誤修 復(fù)遞送部件120所學(xué)習(xí)到的帶寬和其它資源參數(shù)而選擇的。在一個(gè)實(shí)施例中,分段修復(fù)流 175的遞送是盡力的。在另一實(shí)施例中,錯(cuò)誤修復(fù)遞送部件120(例如,通過資源預(yù)留協(xié)議 (RSVP))學(xué)習(xí)或者配置帶寬并且以與原始流的帶寬相比更低、相等或者更高的保證速率進(jìn) 行傳送。錯(cuò)誤修復(fù)遞送部件120提供分段修復(fù)流175的時(shí)間可以改變。在一些實(shí)施例中, 一旦閾值數(shù)量的錯(cuò)誤或缺失分組已被報(bào)告,分段修復(fù)流175就被生成并且在生成之后就被 發(fā)送給進(jìn)行報(bào)告的DHCT 130。在其它實(shí)施例中,一旦閾值數(shù)量的錯(cuò)誤或缺失分組已被報(bào)告, 分段修復(fù)流175就被生成,但是向進(jìn)行報(bào)告的DHCT 130的遞送被延遲,例如,直到網(wǎng)絡(luò)帶寬 和/或資源足以遞送分段修復(fù)流175為止,或者直到DHCT帶寬或DHCT資源足以接收并處 理分段修復(fù)流175為止。在又一實(shí)施例中,分段修復(fù)流175的生成被延遲,直到錯(cuò)誤修復(fù)遞 送部件120具有可用于生成流的足夠資源為止。圖2是圖示在一個(gè)示例情形中圖1的部件之間的交互的消息流示圖。DHCT 130發(fā) 起(205)使得從流源110接收節(jié)目流135的操作(例如,IGMP Join)。流源110提供(210) 被請(qǐng)求的節(jié)目流135,此節(jié)目流135被DHCT 130存儲(chǔ)(220)。在此情形中,DHCT 130檢測(cè) (230)到在所接收的節(jié)目流135中的錯(cuò)誤狀況,并且作為響應(yīng),DHCT 130將此錯(cuò)誤狀況通知 (235)給錯(cuò)誤修復(fù)遞送部件120。在另一實(shí)施例中,錯(cuò)誤修復(fù)遞送部件120向DHCT 130論 詢(poll)錯(cuò)誤通知。錯(cuò)誤修復(fù)遞送部件120提供(245)與通過錯(cuò)誤通知235中的信息確定的節(jié)目流 135的錯(cuò)誤部分相應(yīng)的分段修復(fù)流175。雖然在圖2中未示出,但是錯(cuò)誤修復(fù)遞送部件120 的一些實(shí)施例與DHCT 130進(jìn)行通信以學(xué)習(xí)DHCT 130正在消費(fèi)哪些節(jié)目。DHCT 130將此分段修復(fù)流175存儲(chǔ)(250)以供稍后使用。在一些實(shí)施例中,錯(cuò)誤 修復(fù)遞送部件120確定帶寬和資源可用于對(duì)流進(jìn)行修復(fù)的時(shí)間,并且推遲對(duì)錯(cuò)誤通知235 的處理,直到那時(shí)為止。圖3是圖示在一個(gè)示例情形中圖1的部件之間的交互的數(shù)據(jù)流示圖。流源110向 DHCT 130發(fā)送節(jié)目流135。在本示例情形中,節(jié)目流135包含被發(fā)送給DHCT 130的七個(gè)分 組。第一分組310沒有錯(cuò)誤。接著的兩個(gè)分組320和330經(jīng)歷錯(cuò)誤(象征性地用“ X ”表 示),但是錯(cuò)誤數(shù)是可通過網(wǎng)絡(luò)中存在的FEC/重傳機(jī)制來(lái)糾正(例如,重傳窗口大于兩個(gè)分 組)。因此,DHCT 130不采取動(dòng)作來(lái)請(qǐng)求修復(fù)流。接著的三個(gè)分組340-360經(jīng)歷錯(cuò)誤(象征性地用“ X ”表示),這些錯(cuò)誤不能通過 網(wǎng)絡(luò)中存在的FEC/重傳來(lái)糾正。因此,錯(cuò)誤修復(fù)遞送部件120向DHCT 130提供包括與錯(cuò) 誤分組相應(yīng)的內(nèi)容的分段修復(fù)流175,在此被示為分組340' ,350'和360'。最后,DHCT 130還接收另一沒有錯(cuò)誤的分組370。注意,錯(cuò)誤修復(fù)遞送部件120能夠產(chǎn)生分段修復(fù)流175,因?yàn)殄e(cuò)誤修復(fù)遞送部件 120還被通過邏輯信道160提供了原始節(jié)目流135。為了本公開的目的,假定邏輯信道160 是無(wú)錯(cuò)誤的。圖4是示出有關(guān)圖3的示例情形中的部件交互的更多細(xì)節(jié)的消息流示圖。當(dāng)DHCT130向錯(cuò)誤修復(fù)遞送部件120發(fā)出通知時(shí),錯(cuò)誤修復(fù)遞送部件120確定開始發(fā)送修復(fù)流的時(shí) 間,可以立即發(fā)送或者稍后發(fā)送。流源110向DHCT 130發(fā)送分組310-340,并且這些分組被接收并被存儲(chǔ)。如前面描 述的,這些分組中的一些有錯(cuò)誤,但是在存儲(chǔ)之前這些錯(cuò)誤通過FEC/重傳而被糾正。DHCT 130對(duì)這些分組進(jìn)行檢查并且追蹤最近時(shí)間窗口(例如1分鐘)內(nèi)的缺失節(jié)目片段。如果 在下一時(shí)間窗口中發(fā)生新錯(cuò)誤,則DHCT 130保持累積錯(cuò)誤,直到達(dá)到預(yù)定閾值(例如,錯(cuò)誤 數(shù)或時(shí)間窗口數(shù))為止。當(dāng)該閾值被達(dá)到時(shí)(在此,隨著分組340的接收),DHCT 130通過 第一錯(cuò)誤報(bào)告410向錯(cuò)誤修復(fù)遞送部件120進(jìn)行通知,第一錯(cuò)誤報(bào)告410包括流狀態(tài)410S 和原因代碼410R。流狀態(tài)410S指示出當(dāng)前狀況和流位置。對(duì)于第一錯(cuò)誤報(bào)告410,當(dāng)前狀 況是錯(cuò)誤狀況,所以流位置標(biāo)識(shí)最近的沒有錯(cuò)誤的流位置(在此情況中為分組340)。在本 示例情形中,原因代碼410R指示出分組錯(cuò)誤。錯(cuò)誤報(bào)告410還可以包含有關(guān)DHCT帶寬和 資源的信息。DHCT 130接收下一分組350,分組350也是錯(cuò)誤的。然而,因?yàn)镈HCT130已經(jīng)報(bào) 告了錯(cuò)誤狀況,所以沒有報(bào)告生成。當(dāng)DHCT 130接收到錯(cuò)誤分組360時(shí),也是這樣。然后, DHCT 130接收到?jīng)]有錯(cuò)誤的分組370。在確定分組370沒有錯(cuò)誤之后,DHCT 130將該沒有 錯(cuò)誤的分組存儲(chǔ)。DHCT 130還通過第二錯(cuò)誤報(bào)告420向錯(cuò)誤修復(fù)遞送部件120進(jìn)行通知。 在此第二錯(cuò)誤報(bào)告420中,流狀態(tài)420S指示出當(dāng)前狀況不再是錯(cuò)誤的,并且流位置標(biāo)識(shí)出 最近的錯(cuò)誤流位置(在此情況中為分組350)。在本示例情形中,DHCT 130響應(yīng)于接收到分組370并確定其沒有錯(cuò)誤而發(fā)出第二 錯(cuò)誤報(bào)告420。在其它實(shí)施例中,第二錯(cuò)誤報(bào)告420被推遲到稍后的時(shí)間(例如,當(dāng)DHCT 130確定鏈路中斷或者電力中斷結(jié)束時(shí)),并且DHCT 130繼續(xù)按照之前那樣接收并存儲(chǔ)沒 有錯(cuò)誤的或者錯(cuò)誤可糾正的分組,直到那時(shí)為止。錯(cuò)誤修復(fù)遞送部件120收集錯(cuò)誤報(bào)告(從此DHCT和其它DHCT),并且確定何時(shí)發(fā) 送分段修復(fù)流175,例如,當(dāng)部件和網(wǎng)絡(luò)資源可用于對(duì)流進(jìn)行修復(fù)時(shí)。在錯(cuò)誤修復(fù)遞送部件 120向DHCT 130提供了分段修復(fù)流175之后的某時(shí)間點(diǎn),DHCT 130將分段修復(fù)流175與有 錯(cuò)誤的節(jié)目流135合并。注意,此合并可以立即發(fā)生或者可以被延遲,并且該選擇可取決于 訂戶觀看行為。在一些實(shí)施例中,分段修復(fù)流175包含正被重傳的片段的映射(map),并且DHCT 130對(duì)此映射進(jìn)行處理。在本示例中,分段修復(fù)流175以最近的沒有錯(cuò)誤的流位置之后的分 組開始(由第一錯(cuò)誤報(bào)告410中的流狀態(tài)410S給出),并且以最近的有錯(cuò)誤的流位置之前 的分組結(jié)束(由第二錯(cuò)誤報(bào)告420中的流狀態(tài)420S給出),并且包含這兩位置之間的所有 分組。因此,在本示例情形中,分段修復(fù)流175包含分組340-360。在DHCT 130接收到分 段修復(fù)流175之后,DHCT存儲(chǔ)裝置包含所有七個(gè)分組310-370,這使得DHCT 130能夠?qū)⒐?jié) 目流135重新構(gòu)建為如流源110原始發(fā)送的那樣。在一些實(shí)施例中,分段修復(fù)流175例如 通過RTP頭序列號(hào)來(lái)識(shí)別傳輸分組水平的錯(cuò)誤修復(fù)映射。然而,本公開意在覆蓋使得DHCT 130能夠精確地識(shí)別節(jié)目流135內(nèi)的有錯(cuò)誤的MPEG流片段并且能夠明確地將這些片段與分 段修復(fù)流175中承載的片段進(jìn)行關(guān)聯(lián)的任何機(jī)制。在一些實(shí)施例中,除了有錯(cuò)誤的片段以 夕卜,錯(cuò)誤修復(fù)遞送部件120還重傳其它片段。圖5是圖示在另一示例情形中圖1的部件之間的交互的數(shù)據(jù)流示圖。流源110向DHCT 130發(fā)送節(jié)目流135。在本示例情形中,流源110處的原始節(jié)目流135包含五個(gè)分組 510-550,但是DHCT 130僅通過邏輯信道140接收兩個(gè)分組。缺失分組520-540未被示出, 但是它們的不存在用括號(hào)560表示。DHCT 130接收沒有錯(cuò)誤的分組510。DHCT 130接著接 收的分組是分組550。在DHCT 130確定出缺失分組的數(shù)量以及特征(identity)之后,DHCT 130從錯(cuò)誤 修復(fù)遞送部件120請(qǐng)求分段修復(fù)流175。在本實(shí)施例中,來(lái)自錯(cuò)誤修復(fù)遞送部件120的響應(yīng) 包括分段修復(fù)流175的傳送,分段修復(fù)流175包括與缺失分組相應(yīng)的內(nèi)容,在此被示出為分 組520' ,530'和540'。其它實(shí)施例可以不提供所有錯(cuò)誤或缺失分組的全部映射,而是僅 提供最后接收的分組。圖6是示出有關(guān)圖5的示例情形中的部件交互的更多細(xì)節(jié)的消息流示圖。流源 110發(fā)送目的地為DHCT 130的五個(gè)分組510-550。然而,DHCT130僅接收兩個(gè)分組510和 550。DHCT 130 (例如,從暫停)確定(610)分組520-540缺失,然后檢測(cè)到(620)訂戶鏈路 錯(cuò)誤。之后,DHCT 130檢測(cè)(630)到訂戶鏈路在正常操作,并且分組550被接收。當(dāng)DHCT 130能夠成功與錯(cuò)誤修復(fù)遞送部件120通信時(shí),DHCT 130通過錯(cuò)誤報(bào)告 635向錯(cuò)誤修復(fù)遞送部件120通知缺失分組520-540。錯(cuò)誤報(bào)告635包含缺失分組列表635L 和原因代碼635R。在本示例情形中,原因代碼指示出訂戶鏈路錯(cuò)誤。 利用錯(cuò)誤報(bào)告635中的信息,錯(cuò)誤修復(fù)遞送部件120向DHCT 130提供分段修復(fù)流 175。分段修復(fù)流175包括在缺失分組列表635L中所標(biāo)識(shí)的分組。因此,在本示例情形中, 分段修復(fù)流175包含分組520-540。在DHCT 130接收到分段修復(fù)流175之后,DHCT存儲(chǔ) 裝置包含所有七個(gè)分組510-570,這使得DHCT 130能夠?qū)⒐?jié)目流135重新構(gòu)建為如由流源 110原始發(fā)送的那樣。多播或單播尋址技術(shù),或者它們的組合,可用于遞送節(jié)目或修復(fù)流。圖7是圖示在 圖1的系統(tǒng)的某些實(shí)施例中對(duì)多播尋址的使用的框圖。在本示例中,流源110使用多播信 道710來(lái)向一組DHCT 130A和130B遞送節(jié)目流135。錯(cuò)誤修復(fù)遞送部件120通過不同信 道720接收相同的節(jié)目流135,這可以是單播的或者可以是多播的。錯(cuò)誤修復(fù)遞送部件120 使用多播信道730來(lái)向DHCT 130A和130B遞送分段修復(fù)流175。此配置例如在DHCT 130A 和130B 二者都經(jīng)歷了因接入網(wǎng)絡(luò)上的單個(gè)錯(cuò)誤或中斷而引起的相同一組缺失或錯(cuò)誤分組 時(shí)是有用的。錯(cuò)誤修復(fù)遞送部件120的一些實(shí)施例還向DHCT 130多播控制消息,該控制消 息壓制在定義數(shù)量的錯(cuò)誤報(bào)告被接收到之后的描述相同錯(cuò)誤狀況的報(bào)告。因此,在圖7的實(shí)施例中,錯(cuò)誤修復(fù)遞送部件120對(duì)來(lái)自多個(gè)DHCT130的錯(cuò)誤報(bào)告 進(jìn)行累積并且確定一組DHCT 130是否已經(jīng)報(bào)告了一組共同的缺失或錯(cuò)誤分組。如果是,則 錯(cuò)誤修復(fù)遞送部件120生成適當(dāng)?shù)姆侄涡迯?fù)流175并且將此單個(gè)分段修復(fù)流175多播到這 組DHCT 130。注意,不要求所有DHCT 130都缺失相同的節(jié)目流片段。通過準(zhǔn)確地確定在分 段修復(fù)流175中布置了那些修復(fù)片段,錯(cuò)誤修復(fù)遞送部件120能夠處理一個(gè)特定DHCT 130 缺失了小的子片段,但是多個(gè)DHCT 130缺失了大部分節(jié)目片段的情況。圖8是圖示分段修復(fù)流175被用于修復(fù)錯(cuò)誤的情形中的消息流示圖,其中,所述錯(cuò) 誤是因節(jié)目開始時(shí)間不同于所公布的EPG時(shí)間表中的開始時(shí)間而引起的。在本示例情形 中,錯(cuò)誤修復(fù)遞送部件120通過消息810向DHCT 130通知所公布的EPG時(shí)間表有錯(cuò),如由 消息字段810D描述。例如,消息字段810D可以指示出對(duì)于“60分鐘”的開始時(shí)間是7:09而不是7:00。應(yīng)當(dāng)認(rèn)識(shí)到,這樣的EPG錯(cuò)誤可導(dǎo)致被標(biāo)識(shí)為“60分鐘”但是以前一節(jié)目的 最后九分鐘為開始并且缺失了 “60分鐘”的最后九分鐘的節(jié)目。在此公開的技術(shù)如下地解 決了此問題。DHCT 130對(duì)EPG時(shí)間表錯(cuò)誤消息810進(jìn)行確認(rèn)(820)。在一些實(shí)施例中,DHCT 130 僅在確定受EPG時(shí)間表錯(cuò)誤影響的一個(gè)或多個(gè)節(jié)目預(yù)定要被記錄之后才進(jìn)行確認(rèn)。在一些 實(shí)施例中,DHCT 130檢測(cè)EPG時(shí)間表錯(cuò)誤并向錯(cuò)誤修復(fù)遞送部件120報(bào)告,反之則不然。響應(yīng)于此確認(rèn),錯(cuò)誤修復(fù)遞送部件120生成包含所預(yù)定的節(jié)目的缺失部分(例如, “60分鐘”的最后九分鐘)的分段修復(fù)流175并且將此分段修復(fù)流175遞送給DHCT 130。 錯(cuò)誤修復(fù)遞送部件120還發(fā)送一個(gè)或多個(gè)片段編輯命令,這些片段編輯命令結(jié)合分段修復(fù) 流175使用以產(chǎn)生有錯(cuò)誤的節(jié)目的正確版本。在一些實(shí)施例中,分段修復(fù)流175的遞送是 同步的。在其它實(shí)施例中,分段修復(fù)流175的遞送是不同步的(例如,被延遲,直到資源被 確定可用為止)。在本示例中,錯(cuò)誤修復(fù)遞送部件120發(fā)送片段編輯命令CmdDelete (命令刪 除)830,該命令指示DHCT 130刪除所接收的內(nèi)容。該刪除命令830包含ProgramId (節(jié)目 ID)參數(shù) 830P 和 SegmentDescriptor (片段描述)參數(shù) 830D, ProgramId 參數(shù) 830P 標(biāo)識(shí)出 被影響的節(jié)目,并且SegmentDescriptor參數(shù)830D標(biāo)識(shí)出要被刪除的節(jié)目部分。在圖8所 示的示例實(shí)施例中,DHCT 130對(duì)此命令進(jìn)行確認(rèn)(840),但是其它實(shí)施例可以不對(duì)所有命 令利用確認(rèn)。錯(cuò)誤修復(fù)遞送部件120還發(fā)送片段編輯命令CmdReassign (命令重新分配)850, CmdReassign 850指示DHCT 130逐節(jié)目地重新分配內(nèi)容。重新分配命令850包含 SrcProgramId(源節(jié)目ID)參數(shù)850S和DstProgramId(目的地節(jié)目ID)參數(shù)850T以及 SegmentDescriptor (片段描述符)參數(shù) 830D, SrcProgramId 參數(shù) 850S 禾口 DstProgramId 參 數(shù)850T分別表示節(jié)目的源和目的地,并且SegmentDescriptor參數(shù)830D標(biāo)識(shí)要被重新分 配的節(jié)目部分。在圖8所示的示例實(shí)施例中,DHCT 130對(duì)此命令進(jìn)行確認(rèn)(860),但是其它 實(shí)施例可以不對(duì)所有命令利用確認(rèn)。在一個(gè)多播實(shí)施例中,命令以序列號(hào)來(lái)標(biāo)識(shí),并且“最 新全局命令序列號(hào)標(biāo)識(shí)符”被定期多播,這使得DHCT 130能夠請(qǐng)求重傳特定命令。在接收到針對(duì)“60分鐘”的原始節(jié)目流(未示出)、分段修復(fù)流175以及兩個(gè)命令 830和850之后,DHCT 130結(jié)合片段編輯命令來(lái)處理該節(jié)目和修復(fù)流,并且產(chǎn)生該節(jié)目“60 分鐘”的糾正后的版本。注意,通知EPG時(shí)間表的定時(shí)不受節(jié)目流135的遞送的約束,所以 可以在節(jié)目流135遞送之前、期間或者之后發(fā)生。在另一實(shí)施例(未示出)中,分段編輯命令(例如830、850)中的 SegmentDescriptor參數(shù)被用于標(biāo)識(shí)出節(jié)目流135內(nèi)的廣告或者廣告插入占位符。錯(cuò)誤通 知還被擴(kuò)展以指示出與廣告相關(guān)的錯(cuò)誤,諸如“廣告沒有達(dá)到目標(biāo)”或者“廣告過期”。在一 些“推模式(push) ”的實(shí)施例中,這些錯(cuò)誤觸發(fā)錯(cuò)誤修復(fù)遞送部件120遞送片段編輯命令和 包括廣告的分段修復(fù)流175。在其它“拉模式(pull)”的實(shí)施例中,錯(cuò)誤修復(fù)遞送部件120 向DHCT 130通知節(jié)目運(yùn)行時(shí)間長(zhǎng)(例如,“刪除開始的9分鐘并且將最后9分鐘標(biāo)記為缺 失”的編輯命令)。DHCT 130確定是否需要此數(shù)據(jù)(例如,使用EPG數(shù)據(jù))以及有多少帶寬 可用于復(fù)原,并且使用這些知識(shí)來(lái)調(diào)用適當(dāng)?shù)男迯?fù)操作。DHCT 130結(jié)合片段編輯命令使用這些廣告以替代節(jié)目流135中現(xiàn)有的廣告或者占位符,其中,替代廣告可以具有相同或不同的持續(xù)時(shí)間。片段編輯命令還包括插入和刪 除。本領(lǐng)域技術(shù)人員應(yīng)明白,DHCT 130可以使用各種機(jī)制來(lái)標(biāo)識(shí)廣告片段,諸如通過網(wǎng)絡(luò) 播放時(shí)間(NPT)或者通過片段描述符。圖9是在來(lái)自圖1的DHCT 130的一個(gè)實(shí)施例中的修復(fù)邏輯190的流程圖。在本 實(shí)施例中,錯(cuò)誤修復(fù)遞送部件120和修復(fù)邏輯190被用于執(zhí)行多個(gè)虛擬調(diào)諧器之間的切換 (toggling),所有這些虛擬調(diào)諧器都是在記錄模式中。在本公開中,“虛擬調(diào)諧器”是指DHCT 中請(qǐng)求節(jié)目流被生成并且通過端到端網(wǎng)絡(luò)(包括接入網(wǎng)絡(luò)和家庭網(wǎng)絡(luò))被轉(zhuǎn)發(fā)的能力,其 中DHCT包括足夠用來(lái)捕獲和處理流的資源,從而保證服務(wù)(對(duì)于直播或點(diǎn)播)的實(shí)時(shí)遞 送。虛擬調(diào)諧器因此呈現(xiàn)出與數(shù)字視頻 記錄儀(DVR)的物理調(diào)諧器相同的功能(例如,網(wǎng) 絡(luò)播放時(shí)間;諸如倒帶、暫停和快進(jìn)之類的技巧模式;緩沖數(shù)據(jù)的滾動(dòng)窗,等等)。由修復(fù)邏輯190執(zhí)行的處理900以塊910開始,塊910接收用戶的觀看請(qǐng)求并且 同時(shí)記錄特定頻道(公知特征“TV直播”)。接著,塊920確定用戶所請(qǐng)求的頻道是否已被 物理調(diào)諧器接收到。如果是,則在塊930中請(qǐng)求被處理(例如,顯示節(jié)目,提供技巧模式功 能,等等)。然后,處理900結(jié)束。 如果在塊920確定為否(用戶所請(qǐng)求的頻道還沒有被接收到),則塊940確定DHCT 130上是否有足夠的本地資源可用來(lái)實(shí)現(xiàn)所述請(qǐng)求。本地資源的示例包括物理調(diào)諧器、網(wǎng)絡(luò) 帶寬、解碼器、處理器周期、存儲(chǔ)空間。如果有足夠資源可用,則塊950適當(dāng)?shù)胤峙滟Y源。處 理按照前述那樣利用塊930繼續(xù)。如果可用本地資源不足夠,則塊960使用物理調(diào)諧器以調(diào)諧到所請(qǐng)求的流(用戶 請(qǐng)求TV直播的流)。接著,塊970從錯(cuò)誤修復(fù)遞送部件120請(qǐng)求與用戶當(dāng)前正在接收(以 及正在記錄)但是未正在觀看的流相應(yīng)的修復(fù)流175。這樣,當(dāng)前觀看的(“TV直播”)節(jié) 目被切換到物理調(diào)諧器,并且未觀看的節(jié)目被切換到錯(cuò)誤修復(fù)遞送部件120提供的“虛擬 調(diào)諧器”。錯(cuò)誤修復(fù)遞送部件120記錄未觀看的節(jié)目,并且在未來(lái)某時(shí)間點(diǎn),如上面所述將 其分發(fā)給DHCT 130。DHCT 130例如通過頻道或網(wǎng)絡(luò)時(shí)間或者通過節(jié)目標(biāo)識(shí)符(PID)來(lái)識(shí)別請(qǐng)求中所 請(qǐng)求的分段修復(fù)流175中承載的節(jié)目。節(jié)目的開始時(shí)間也被識(shí)別,例如通過網(wǎng)絡(luò)播放時(shí)間 (NPT)。然后,在塊980處,修復(fù)流175被接收并被存儲(chǔ)。在一些實(shí)施例中,每個(gè)內(nèi)容實(shí)例 (例如,節(jié)目和廣告)利用全局唯一的事件標(biāo)識(shí)符來(lái)被識(shí)別。按照此方式,修復(fù)可以從“下 次示出”正確的相同節(jié)目而被執(zhí)行。修復(fù)流175的接收和存儲(chǔ)繼續(xù),直到整個(gè)節(jié)目已被接收 到為止,那時(shí)處理900結(jié)束。系統(tǒng)100的另一實(shí)施例,包括內(nèi)容遞送系統(tǒng)(⑶S) 1000 (參見圖10)和修復(fù)邏輯 190,在DHCT 130中執(zhí)行虛擬存儲(chǔ)。DHCT 130將內(nèi)容本地存儲(chǔ)在存儲(chǔ)裝置150中,直到內(nèi)容 丟失。例如,當(dāng)發(fā)生盤片故障、存儲(chǔ)裝置150已滿(即,某些內(nèi)容被覆蓋)時(shí)或者當(dāng)訂戶升 級(jí)或替換硬盤存儲(chǔ)裝置時(shí),內(nèi)容可能丟失。如果訂戶選擇回放丟失的內(nèi)容,則修復(fù)邏輯190和錯(cuò)誤修復(fù)遞送部件120進(jìn)行協(xié) 作以下載丟失的內(nèi)容作為修復(fù)流。如果特定節(jié)目包括的其中一些內(nèi)容仍存在于存儲(chǔ)裝置 150中并且一些內(nèi)容已經(jīng)被覆蓋,則DHCT 130將本地存儲(chǔ)的內(nèi)容呈現(xiàn)給請(qǐng)求的用戶,并且 并行地還檢索被覆蓋的內(nèi)容以作為修復(fù)流。如果修復(fù)流沒能實(shí)時(shí)地被足夠快地呈現(xiàn)給用 戶,則DHCT130可以暫停播放,直到修復(fù)完成為止。此特征使得用戶能夠回放不是本地存儲(chǔ)的虛擬資源。在其它實(shí)施例中,用戶可以特別請(qǐng)求在后臺(tái)下載虛擬資源,從而使得當(dāng)最后該 資源被回放時(shí),其來(lái)自本地存儲(chǔ)裝置。包括⑶S 1000 (參見圖10)和修復(fù)邏輯190的系統(tǒng)100的另一實(shí)施例執(zhí)行網(wǎng)絡(luò)或 遠(yuǎn)程DVR功能。DHCT 130將內(nèi)容本地存儲(chǔ)在存儲(chǔ)裝置150中,直到存儲(chǔ)裝置150充滿。當(dāng) 因?yàn)榇鎯?chǔ)裝置150被充滿而不能記錄節(jié)目時(shí),DHCT 130存儲(chǔ)所請(qǐng)求的節(jié)目的特征,但是不 將此認(rèn)為是錯(cuò)誤,因?yàn)樵搩?nèi)容稍后可以從錯(cuò)誤修復(fù)遞送部件120被檢索到作為修復(fù)流。當(dāng)存儲(chǔ)裝置150不再充滿時(shí),修復(fù)邏輯190請(qǐng)求錯(cuò)誤修復(fù)遞送部件120提供所請(qǐng) 求的但是不是本地存儲(chǔ)的節(jié)目作為修復(fù)流。在一些實(shí)施例中,當(dāng)向用戶顯示記錄的內(nèi)容的 目錄(虛擬目錄)時(shí),DHCT 130列出本地存儲(chǔ)的內(nèi)容和遠(yuǎn)程存儲(chǔ)的內(nèi)容,其中虛擬目錄的 主要副本被存儲(chǔ)在頭端。在一些實(shí)施例中,DHCT 130將虛擬目錄與描述用戶的觀看習(xí)慣的流行度量度一起 傳送給⑶S 1000。當(dāng)存儲(chǔ)資源變得可用時(shí),⑶S 1000基于對(duì)虛擬目錄的知識(shí)(即,哪些節(jié) 目用戶知道可用)以及哪些內(nèi)容對(duì)于訂戶比較流行的知識(shí)來(lái)向DHCT 130分發(fā)內(nèi)容,在較次 流行內(nèi)容稍后不久更多的流行內(nèi)容被下載。修復(fù)流下載的速度和定時(shí)可以改變,例如,較次 流行內(nèi)容可以在少數(shù)觀看者期望的時(shí)間期間被下載,或者(例如,如果用戶請(qǐng)求立即下載) 所有修復(fù)流可以立即被下載。圖10是利用錯(cuò)誤修復(fù)遞送部件120和DHCT 130的示例網(wǎng)絡(luò)架構(gòu)的框圖。在本示 例中,錯(cuò)誤修復(fù)遞送部件120是內(nèi)容分發(fā)系統(tǒng)(⑶S) 1000的一部分。除了錯(cuò)誤修復(fù)遞送部 件120以外,⑶S 1000還包括攝取部件1010、存儲(chǔ)部件1020、流傳輸部件1030。媒體流由這些部件按照上面所述來(lái)處理,并且然后由網(wǎng)絡(luò)1040通過各自的訂戶 連接1050A、1050B被遞送給各DHCT 130。DHCT 130的示例包括個(gè)人視頻記錄儀(PVR), 也被稱為數(shù)字視頻記錄儀(DVR);家庭媒體中心;以及家用網(wǎng)關(guān)。這些設(shè)備包括類似的記錄 和觀看能力,但是這些大量的硬件資源(例如,調(diào)諧器、解碼器、存儲(chǔ)器、處理器周期)的不 同使得各種設(shè)備能夠支持大量的同時(shí)但不同的訂戶。電子節(jié)目指南(EPG)源1050也耦合 到網(wǎng)絡(luò)1040,并且與CDS 1000和DHCT 130通信。如本領(lǐng)域技術(shù)人員應(yīng)當(dāng)認(rèn)識(shí)到的,構(gòu)成CDS 1000的各部件的功能可以以多種方 式分布,包括(但不限于)單個(gè)服務(wù)器、服務(wù)器陣列、或者具有存儲(chǔ)陣列和流傳輸陣列的分 布式架構(gòu)。在圖10的示例架構(gòu)中,這些部件位于網(wǎng)絡(luò)的核心處。然而,本領(lǐng)域技術(shù)人員還 應(yīng)當(dāng)認(rèn)識(shí)到,這些部件可以替代地被位于網(wǎng)絡(luò)的邊緣或接近中間的某些地方(例如,處于 分發(fā)集線器處)。圖11是示出通用計(jì)算機(jī)中所選擇的可用于實(shí)現(xiàn)DHCT 130或錯(cuò)誤修復(fù)遞送部件 120的框圖。DHCT 130/錯(cuò)誤修復(fù)遞送部件120包括網(wǎng)絡(luò)接口 1110 ;處理器1120 ;和存儲(chǔ)器 1130。這些部件通過總線1140耦合。存儲(chǔ)器1130包含被處理器1120執(zhí)行以控制DHCT 130/錯(cuò)誤修復(fù)遞送部件120的指令。DHCT 130/錯(cuò)誤修復(fù)遞送部件120通過網(wǎng)絡(luò)接口 1110 與諸如錯(cuò)誤修復(fù)遞送部件120/DHCT 130等其它部件通信。從圖11省略了許多本領(lǐng)域技術(shù) 人員公知的傳統(tǒng)部件,這些傳統(tǒng)部件對(duì)于解釋在此公開的只在時(shí)間上按比例布置廣告內(nèi)容 的系統(tǒng)和方法的操作是不必要的。本領(lǐng)域技術(shù)人員應(yīng)明白,在此涉及的軟件部件包括封裝的可執(zhí)行代碼(例如獨(dú)立的可執(zhí)行文件、庫(kù)、共享的庫(kù)、可下載的模塊、驅(qū)動(dòng)器或者組件)以及被封裝的注釋代碼(例 如,類別)。流程圖中的任何處理描述或框應(yīng)當(dāng)被理解為表示用于執(zhí)行處理中的特定邏輯功 能或步驟的模塊、節(jié)段或者包括一個(gè)或多個(gè)可執(zhí)行指令的部分代碼。如軟件開發(fā)領(lǐng)域的技 術(shù)人員將會(huì)明白的,替代實(shí)施例也包括在本公開的范圍內(nèi)。在這些替代實(shí)施例中,各功能可 以不按照所示或所討論的順序來(lái)執(zhí)行,包括基本同時(shí)執(zhí)行或者以相反的順序執(zhí)行,這依賴 于所涉及的功能。在此公開的系統(tǒng)和方法可具體化在任何計(jì)算機(jī)可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)設(shè)備或裝置使用或結(jié)合它們使用。這樣的指令執(zhí)行系統(tǒng)包括任何基于計(jì)算機(jī)的系統(tǒng)、包含處 理器的系統(tǒng)或者可從指令執(zhí)行系統(tǒng)獲取指令并執(zhí)行的其它系統(tǒng)。在本公開的上下文環(huán)境 中,“計(jì)算機(jī)可讀介質(zhì)”可以是能包含、存儲(chǔ)、傳送、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)使用 或結(jié)合指令執(zhí)行系統(tǒng)使用的任何手段。例如,計(jì)算機(jī)可讀介質(zhì)可以是但不限于基于電、磁、 光、磁光、紅外或半導(dǎo)體技術(shù)的系統(tǒng)或傳播介質(zhì)。利用電技術(shù)的計(jì)算機(jī)可讀介質(zhì)的具體示例將包括(但不限于)如下具有一條或 多條導(dǎo)線的電連接(電子的);隨機(jī)存取存儲(chǔ)器(RAM);只讀存儲(chǔ)器(ROM);可擦寫可編程只 讀存儲(chǔ)器(EPR0M或快閃存儲(chǔ)器)。利用磁技術(shù)的具體示例包括(但不限于)便攜計(jì)算機(jī)磁 碟。利用光技術(shù)的具體示例包括(但不限于)致密盤只讀存儲(chǔ)器(⑶-ROM)。前面的描述已被呈現(xiàn)用于說(shuō)明和描述的目的。并不意在是窮盡的或者并不意在將 本公開限制于所公開的精確形式。根據(jù)上面的教導(dǎo),明顯的修改或變化是可能的。然而,所 討論的實(shí)施例被選擇并被描述以說(shuō)明本公開的原理及其實(shí)際應(yīng)用,從而使得本領(lǐng)域技術(shù)人 員能夠利用各實(shí)施例以及預(yù)期的適用于特別使用的各修改例中的公開。所有這樣的修改和 變化當(dāng)被根據(jù)正當(dāng)并且合法授權(quán)的廣度來(lái)解釋時(shí),它們都落在由所附權(quán)利要求確定的本公 開的范圍內(nèi)。
權(quán)利要求
一種方法,包括在第一信道上從節(jié)目源攝取節(jié)目流;存儲(chǔ)所述節(jié)目流;從客戶端接收關(guān)于在所述客戶端處所接收的流中存在不可復(fù)原的錯(cuò)誤的通知,所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分;以及響應(yīng)于所述通知,在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部分。
2.根據(jù)權(quán)利要求1所述的方法,還包括響應(yīng)于所述通知,生成與所述不可復(fù)原的錯(cuò)誤相應(yīng)的修復(fù)流;以及響應(yīng)于所述通知,在所述第二信道上向所述客戶端分發(fā)所述修復(fù)流。
3.根據(jù)權(quán)利要求1所述的方法,還包括檢測(cè)被遞送給所述客戶端的另一節(jié)目流中的不可復(fù)原的錯(cuò)誤,所述另一節(jié)目流包含與 所存儲(chǔ)的節(jié)目流相同的內(nèi)容。
4.根據(jù)權(quán)利要求1所述的方法,其中,所述通知指示出與另一節(jié)目流相應(yīng)的前向糾錯(cuò) (FEC)流上的不可復(fù)原的錯(cuò)誤,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ)的 節(jié)目流相同內(nèi)容的節(jié)目流。
5.根據(jù)權(quán)利要求1所述的方法,其中,所述通知指示出超過與另一節(jié)目流相關(guān)聯(lián)的重 傳功能中的重傳緩沖器的容量,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ)的 節(jié)目流相同內(nèi)容的節(jié)目流。
6.根據(jù)權(quán)利要求1所述的方法,其中,所述第二信道是多播流。
7.一種設(shè)備,包括用于在第一信道上從節(jié)目源攝取節(jié)目流的裝置;用于存儲(chǔ)所述節(jié)目流的裝置;用于從客戶端接收關(guān)于在所述客戶端處所接收的流中存在不可復(fù)原的錯(cuò)誤的通知的 裝置,所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分;以及用于響應(yīng)于所述通知,在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部 分的裝置。
8.根據(jù)權(quán)利要求7所述的設(shè)備,還包括用于響應(yīng)于所述通知,生成與所述不可復(fù)原的錯(cuò)誤相應(yīng)的修復(fù)流的裝置;以及用于響應(yīng)于所述通知,在所述第二信道上向所述客戶端分發(fā)所述修復(fù)流分的裝置。
9.根據(jù)權(quán)利要求7所述的設(shè)備,還包括用于檢測(cè)被遞送給所述客戶端的另一節(jié)目流中的不可復(fù)原的錯(cuò)誤的裝置,所述另一節(jié) 目流包含與所存儲(chǔ)的節(jié)目流相同的內(nèi)容。
10.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述通知指示出與另一節(jié)目流相應(yīng)的前向糾錯(cuò) (FEC)流上的不可復(fù)原的錯(cuò)誤,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ)的 節(jié)目流相同內(nèi)容的節(jié)目流。
11.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述通知指示出超過與另一節(jié)目流相關(guān)聯(lián)的重 傳功能中的重傳緩沖器的容量,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ)的 節(jié)目流相同內(nèi)容的節(jié)目流。
12.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述第二信道是多播流。
13.一種設(shè)備,包括存儲(chǔ)器,其上存儲(chǔ)程序代碼;以及處理器,至少被所述程序代碼編程為使得所述設(shè)備在第一信道上從節(jié)目源攝取節(jié)目流;存儲(chǔ)所述節(jié)目流;從客戶端接收關(guān)于在所述客戶端處所接收的流中存在不可復(fù)原的錯(cuò)誤的通知,所述不 可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分;以及響應(yīng)于所述通知,在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部分。
14.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述處理器還至少被所述程序代碼編程為使 得所述設(shè)備響應(yīng)于所述通知,生成與所述不可復(fù)原的錯(cuò)誤相應(yīng)的修復(fù)流;以及響應(yīng)于所述通知,在所述第二信道上向所述客戶端分發(fā)所述修復(fù)流。
15.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述處理器還至少被所述程序代碼編程為使 得所述設(shè)備檢測(cè)被遞送給所述客戶端的另一節(jié)目流中的不可復(fù)原的錯(cuò)誤,所述另一節(jié)目流包含與 所存儲(chǔ)的節(jié)目流相同的內(nèi)容。
16.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述通知指示出與另一節(jié)目流相應(yīng)的前向糾 錯(cuò)(FEC)流上的不可復(fù)原的錯(cuò)誤,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ) 的節(jié)目流相同內(nèi)容的節(jié)目流。
17.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述通知指示出超過與另一節(jié)目流相關(guān)聯(lián)的 重傳功能中的重傳緩沖器的容量,所述另一節(jié)目流是被遞送給所述客戶并且包含與所存儲(chǔ) 的節(jié)目流相同內(nèi)容的節(jié)目流。
18.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述通知指示出所述客戶端處的斷電。
19.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述通知指示出位于所述節(jié)目源和所述客戶 端之間的鏈路的中斷。
20.根據(jù)權(quán)利要求13所述的設(shè)備,其中,所述第二信道是多播流。
全文摘要
在一個(gè)實(shí)施例中,一種方法包括在第一信道上從節(jié)目源攝取節(jié)目流。該方法還包括存儲(chǔ)所述節(jié)目流,以及從客戶端接收在所述客戶端處所接收的流中存在不可復(fù)原的錯(cuò)誤的通知。所述不可復(fù)原的錯(cuò)誤相應(yīng)于所存儲(chǔ)的節(jié)目流的至少一部分。該方法還包括響應(yīng)于所述通知在第二信道上向所述客戶端分發(fā)所存儲(chǔ)的節(jié)目流的所述相應(yīng)部分。
文檔編號(hào)H04N7/64GK101889445SQ200880119365
公開日2010年11月17日 申請(qǐng)日期2008年12月2日 優(yōu)先權(quán)日2007年12月6日
發(fā)明者威廉·C·威斯蒂格, 約翰·皮肯斯 申請(qǐng)人:思科技術(shù)公司