新四季網

經帶寬受限的網絡傳輸與動態再現大型媒體資料的系統的製作方法

2023-05-02 04:56:36

專利名稱:經帶寬受限的網絡傳輸與動態再現大型媒體資料的系統的製作方法
技術領域:
本發明涉及通過網絡把基於媒體的高質量內容傳輸與再現給用戶或進程,其中即使在沒有充足的網絡帶寬可供使用的情況下也能以保證的服務質量(QoS)來傳輸和再現。
背景技術:
發明人意識到,即使隨著網絡技術的發展,傳輸豐富的高質量的媒體體驗仍是一個難題。尤其是傳輸大型媒體資料,無論它們是音頻、視頻、FLASH、遊戲、數據或其它媒體格式,通常要求比可利用的更多的帶寬/網絡流量。例如,在音頻和視頻的情況下,如果用戶 的有效帶寬至少等於資料的比特率,高比特率的資料只能被實時地傳輸,否則將導致不理想的用戶體驗,包括發生停頓、停止以及內容緩衝。另ー方面,ー個大型的可執行遊戲可能不與視頻ー樣有實時的限制(或要求的服務質量),然而,下載該資料需要大量的時間和用戶開銷,即使在最快的網絡中也是這樣。儘管市場上出現的「下載管理員」可以為用戶照顧這些方面,但內容供應商仍然希望以ー種得體的、透明的、不需要用戶操心的方式,並且智能地、可定製地管理資料下載到用戶設備上(比如,計算機、有存儲器與/或處理器的機頂盒,或其它設備)。鑑於此,存在這樣的需求,即,使用有限的帶寬以時間可選的方式來管理和傳輸大型的、高質量的媒體資料給用戶。也就是說,有這樣ー種需求,要求通過現有的帶寬和空閒時隙,順暢地把內容傳輸給用戶,從而當需要內容的時候,它已經應需要而就緒了,用戶體驗不打折扣。這自然就引發了ー種期望,即用戶擁有比實際可利用的更有效的帶寬。為此,也需要把這種技術無縫地集成於傳輸與再現平臺(包括但不局限於網絡瀏覽器、FLASH動畫和其它平臺)以及內容發布系統。本發明達到了這一目的,而且實現了其它功能,並克服了現有技術的局限。為便於理解,下述定義將適用於整個申請文件中。然而,不應該認為這些定義替代了對本領域中已接受的,所列出的術語的理解。術語定義I.流量-在規定時間內,從一地傳輸到另一地的數據量,通常,流量用kbps (千字節每秒)、Mbps (兆字節每秒)和Gbps (千兆字節每秒)來量度。2.服務質量,QoS-該術語代表規定ー個受保證的流量水平。3.客戶進程-在客戶端執行的進程,它接收來自伺服器進程的高速緩存/顯示管理指令或提示並執行這些指令,從而把高速緩存現在的狀態變成期望的狀態,還可在做這些的過程中發起ー個或更多的通知給用戶。4.高速緩存-用「已知」條件或QOS對資料的存儲。該上下文中所說的高速緩存是ー種資料存儲機制,其中的QOS滿足內容需要並且通常高於用來獲取資料的媒體。高速緩存內狀態的變化可能導致通知的發生。5.伺服器進程-向用戶提供為管理高速緩存的狀態所需要的信息。它最簡單的實現方式是,它類似於ー個準動態的、由伺服器生成的播放節目単。更詳細的實現(都是本發明的)還提供控制指令,以便客戶把資料的具體一部分的進展通知給其它進程的客戶。6.到期日-資料的到期日,井指出何時資料應當從本地高速緩存中移除。7.回叫URL-資料項目被下載後又重新獲得的URL。8.用戶端令牌-當資料項目被下載以後設置的令牌或COOKIE。這允許客戶或伺服器應用確定一項資料在本地系統中的存在。9.禁止日-表示資料將被使用的最近日期。10.刪除-表示資料將被標記成明確刪除(覆蓋到期日)。這便於資料的收回。 11.更新率-確定客戶如何頻繁地檢查要改變的資料列表。12.資源路徑-與資源列表有關的任何數量的資源的網絡地址。13.媒體資料-文本、音頻、視頻,或ニ進位文件/數據中的至少ー種。14.項目-單個媒體文件15.連接-用於媒體文件的URL16. hitCountURL (計時URL)-文件被成功下載後要ping接的URL, —個參數,即時長,被附加到URL的尾部,以秒為単位表示下載花了多長時間。17. hlpeURL (幫助URL)-用於用戶進程幫助的URL,在用戶選擇幫助菜單項目時被
顯不O18. trackffithCookie (跟蹤C00KIE)- 一個可選單元,當它存在的時候,表示這個資料被添加到被C00KID名所指定的C00KIE中的資料單中。19. cookieName (COOKIE名)_列舉了所有被下載的、具有跟蹤C00KIE單元存在的資料的C00KIE的名稱。這種C00KIE對廣告服務是很必要的,以使廣告伺服器知道哪些廣告已經被下載。C00KIE的這種格式將僅包含文件的名字(無擴展名或路徑),由逗號分隔。20. cookieDomain(C00KIE域)-將被下載的資料C00KIE設置於其中的域。如果用半冒號或逗號分隔,可以指定多個域。21./regserverC/註冊伺服器)-把ActiveX控制項註冊到系統並把客戶進程添加到啟動文件夾。22. /shutdown (/關機)-停止另ー個在運行客戶進程的程序,如果存在的話。23. /unregserver (/解註冊伺服器)-解註冊ActiveX控制項,並把快捷鍵從啟動文件夾中卸除。它還停止正在運行的客戶進程.exe程序,並卸除COM對象寄存器條目。24.⑶N-內容分布網絡,由第三方擁有和操作的、連結成組的內容伺服器。通常,CDN服務使用高度分散的一群伺服器,可以提供額外的業務能力。

發明內容
本發明提供一種系統和方法,其中媒體內容基於預先設定的ー組條件,在瀏覽媒體之前,從內容供應商傳輸到ー個用戶設備的本地高速緩存。ー個資料單含有與要被下載到客戶設備的媒體資料有關的信息,並被從內容提供商傳輸到用戶設備。例如,資料單包含有關媒體資料的位置的URL或信息。
客戶資料管理器進程駐留於用戶設備,負責從內容提供商下載資料。該資料管理器使用資料單,來請求獲得位於遠程地點的媒體資料。當具體的條件被滿足時,客戶進程管理媒體定期地向用戶設備傳輸。例如,當具有理想的網絡可用帶寬、用戶存儲器和可保證的服務質量吋,資料被傳輸給用戶。本發明通過有效地傳輸媒體資料給用戶還提供了媒體資料的連續、不中斷、和持續地無縫的顯示(視頻和音頻)。通過把這些資料集成於ー個瀏覽裝置(如網絡瀏覽器),提供給用戶無中斷的、連續的媒體內容流,無需實時緩沖。本發明還提供了一種改進的方法,用來通過網絡或本地資料存儲庫,智能地和可適配地,傳輸ー個或更多的大型媒體資料,如,音頻內容、視頻內容、電影、遊戲等。這樣,本地媒體存儲庫對於客戶進程或最終用戶來說是可用的,其中相對高質量的服務將被保證。本發明還包括一種適配方法,基於資料的本地可用性,把這些資料集合組合到實質上無縫的再現。本發明包括一種通過網絡傳輸資料的方法。該方法包括通過網絡把資料單提供給、一個用戶設備。該方法進ー步包括在用戶設備上運行的客戶進程,客戶進程在下載和傳輸資料給用戶設備中參考資料單。客戶管理程序進ー步依據何時滿足了至少ー個預定的條件而管理資料的下載。內容提供商可以用推定的方式把數字資料放在用戶設備中,這樣,當用戶需要它的時候,它立即可用,無需網絡下載。當有用戶或進程明示請求時可以發生這種情形,或者可以由內容提供商根據訂購的服務而發起。下面結合附圖對本發明做進ー步說明。


圖I是根據本發明ー個實施例的客戶進程,與內容提供商站點和遠程媒體伺服器互動的概況示意圖;圖2是上述客戶進程的另ー個示意圖,表示用來把流和高速緩存的媒體集成於網絡瀏覽器的腳本;圖3示出了文件的程序代碼的示例;圖4是客戶進程應用中的C++類的示意圖;圖5是客戶用於進程下載媒體資料的時間特性的示意圖;圖6是影響等待媒體資料被下載的時間長度的誤差表;圖7描繪了有關資料單中的資料信息的屬性的分級化性質的ー個方面;以及圖8描繪了有關資料單中的資料信息的屬性的分級化性質的另ー個方面。
具體實施例方式A.總體說明通過有效地傳輸媒體資料,媒體內容的連續的、無中斷的和持續無縫的顯示(視頻和音頻)被提供給用戶。具體地說,當具體的條件被滿足時(如,網絡帶寬可用性,用戶設備存儲器和保證的QOS等),資料被周期性地傳輸給一人用戶設備。通過把這些資料集成於ー個瀏覽裝置(如,網絡瀏覽器),不需要實時緩衝的、無中斷的、連續的媒體內容流被提供給用戶。ー個或多個大型媒體資料,如音頻內容、視頻內容、電影、遊戲等,被智能地、適配地通過網絡傳輸給一個本地資料存儲庫。這樣,本地資料存儲庫對於客戶進程或最終用戶來說是可用的,其中將可以保證相對高質量的服務。本發明還包括一種適配方法,基於資料的本地可用性,把這些資料集合進實質上無縫的再現。可以保證服務質量的本地資料存儲庫的ー個例子,可以是ー個由用戶設備連接的本地網(LAN)提供的ー個高速緩存或數據存儲設備。本地可用性的含義是,資料在本地對於最終用戶或進程存儲系統(或一個本地存儲庫,在客戶與本地存儲庫之間有高速網絡)是可用的。在一個實施例中,一個進程或應用運行於用戶設備中,在此稱之為客戶進程。客戶進程負責管理用戶本地資料庫中的ー個內容高速緩存。應用、網頁和多媒體講稿可以靠所 述的高速緩存來組合已經駐留的大型媒體資料。應用、網頁和多媒體講稿可以詢問高速緩存的內容並動態調整與可用的內容有關的用戶體驗。這些應用可以是客戶端或伺服器端面 的應用。客戶進程可以是從網際網路下載並裝入用戶設備的服務。作為替換,客戶進程可以作為計算機作業系統的核心部件來提供,也可以與其它軟體應用打捆來提供。客戶進程為最終用戶管理媒體資料的高速緩存。在一個實施例中,包含在高速緩存中的資料專用於ー個資料單,該資料單由ー個內容提供商提供。在此實施例中,客戶進程從ー個網絡地點按特定和可調的時間間隔重新獲得資料単。基於資料單中的信息,當滿足預定的條件吋,客戶進程管理從遠程地點的資料下載。一個客戶進程可以與不止ー個資料單組合,所以許多服務提供商或一個服務提供商的多個業務部門可以獨立地維護他們自己的資料單,並使用同一客戶進程來管理下載。此外,當客戶進程被安裝或升級時,客戶進程可以被告知資料單的位置。安裝可以從ー個網站發起。如果客戶進程還沒被安裝在客戶設備中,網頁中的軟體檢測到這種狀況並提示用戶下載並安裝客戶進程。也有可能通過網頁中的腳本(與ActiveX控制項相結合)把資料單添加給客戶進程。客戶進程根據預定的條件對資料的下載進行管理。如上所述,預定的條件例如可以包括網絡帶寬可用性、用戶設備存儲器、時間、和保證的服務質量。例如,在客戶進程的一個實現方式中,只在用戶設備閒置時才進行下載。在另一個實現方式中,只有當網絡活動低於某ー個水平時客戶進程才進行下載。又例如,客戶進程測量用戶設備中的CPU與存儲器的使用狀況,當該狀況低於某個運行水平時,滿足預定的條件。在再一個例子中,客戶進程依據一天中的某個時間,依據何時網絡使用狀況最低對資料的下載進行管理。當然,客戶進程此外還使用條件的任何其它組合來管理資料的下載。下載能力可以由用戶打開和關閉。用戶還可以指定只能當設備處於某ー個網絡中時(例如,與撥號連接相対的LAN)才能夠下載。例如,用戶可以向內容供應商訂購這樣的服務,在深夜時分(由客戶進程)下載資料,供早晨時分觀看。進ー步,智能地和可適配地管理資料的下載也是可能的,無需ー個外在「下載管理器」處於用戶的管理之下。所謂的智能,意思是說,當一個預先設定的條件被滿足時(如網絡帶寬、一天中的某個時間、QOS等)資料才被傳輸。所謂的可適配,意思是說,資料單,處於內容供應商端或用戶設備端,可以基於用戶瀏覽的傾向來自動地進行更新。資料單被用作內容製作者在客戶的本地商店發布和管理內容的ー種手段。所以,該功能允許內容製作者發布那些將在後來的某時被集成於應用的再現、網頁、或基於FLASH的講稿之中的媒體資料。在一種情形中,製作者在一個後臺發布系統中錄入有關資料的信息,包括它的地點、再現的時間、文字、和與資料關聯的其它信息。這些信息然後被發布和合併到有關的資料単。所述的發布系統還可以發布(立即或在未來的某個日期或時間)合併了這些資料的網頁或講稿。一種通過網絡傳輸資料的方法,包括(i)由內容供應商通過網絡把資料單提供給ー個用戶進程,其中所述的用戶進程運行於ー個用戶設備中;(ii)當預先設定的條件被
滿足時,對應於資料單,把資料通過網絡傳輸給用戶設備。作為ー個例子,資料可以是ニ進位數據、音頻內容、視頻內容、文本內容、或ー個多媒體文件中的至少ー個。預先設定的條件可以包括,一天中的某個時間、用戶設備狀態(即,設備是否在使用或閒置)、帶寬使用狀況(即,帶寬的使用是否低於ー個預先設定的運行水平)、用戶設備CPU使用狀況、用戶設備存儲器的使用狀況(即存儲器使用是否低於預先設定的運行水平)。此外,客戶進程可以存儲在用戶設備的本地高速緩存中。不僅如此,客戶進程可以把存儲的資料與來自於內容提供商的實時內容結合起來,以無中斷的、無縫再現的方式將內容提供給用戶。此外,資料單可以經常更新,從而讓客戶進程(或高速緩存)有能力周期性地、按預先設定的條件接收豐富的內容。為用戶提供無中斷的內容流的系統包括(i)ー個資料單,由內容供應商準備就緒,通過網際網路供客戶進程使用,其中的客戶進程運行於用戶的設備上;(ii) ー個資料,當預先設定的條件被滿足時從ー個遠程地點準備就緒,通過網際網路供用戶設備使用,其中遠程地點的信息從所述的資料單中獲得;和(iii) 一個用於把傳輸的資料集成於由用戶設備正從遠程地點通過網絡接收的內容流的集成器工具。無中斷的和連續的內容流被提供給用戶。製作者可以錄入可供選擇的低帶寬媒體資料和相應的文字信息,它們可以在後臺與豐富的媒體資料信息結合起來,從而產生兩種不同版本的頁面(一種用於不管出於何種原因未能下載大型資料的用戶,另ー種用於豐富的媒體資料)。用戶可能因為多種原因無法下載豐富的媒體資料,比如,(I)不兼容的系統;(2)系統不在線,無法接收下載;(3)未為收費服務付費;(4)盤空間不夠;(5)計算機一直在使用,用戶不希望其資源被用於下載。所以以上述兩種方式提供可選的用戶體驗是重要的能力。例如,廣告中的內容可以以序列的方式傳輸,只允許內容在相應的廣告也存在於本地高速緩存的情況下才被顯示。在一個實施例中,這一功能是通過使用(客戶端或伺服器端)腳本來確定是否兩種媒體資料都存在於用戶設備中(內容部分與廣告)來實現的。在另ー個實施例中,這一功能是通過使用資料單的集束來實現的,其中的資料單集束當兩種資料都在本地設備中時設置了令牌。用戶可以主動地指定媒體被下載和高速緩存在本地設備中。在一種實施方式中,這是通過ー個為每個用戶管理資料的伺服器端資料庫實現的。例如,在一周的中間,用戶可以指定他想在周末看一部一般電影長度的DVD質量的電影。這將導致資料被加入到資料單中,並導致在接下來的時間裡客戶進程下載資料。用戶可能因為資料加入到單子而被收費,或者(見下文)是數據權利管理可能被使用來控制資料。在另ー個例子中,這種方法與來自內容提供商的一種「推動」結合起來,即,為了在每天早上看深夜時的新聞廣播,用戶通過一項服務來訂購。其結果是,這項服務會每晚在用戶的資料單中插入一條新的資料以確定新聞廣播被下載。進ー步,系統可以利用ISP和有線服務提供商的協同定位傳輸設備來工作。在一種實現方案中,當製作者發布ー項資料時,它隨即被轉移到ー個ISP和有線服務提供商的協同定位傳輸設備或系統(它在網絡布局中接近用戶的位置)。客戶進程獲得該資料並把它放在本地的高速緩存中,方法是從ISP和有線服務提供商的協同定位傳輸設備或系統中獲得,而不是從服務供應商的源媒體伺服器中獲得。此外,內容提供商能夠以基於它手頭的資料來優化用戶體驗。例如,如果沒有豐富的媒體資料可供使用,有關新聞的網頁可以提供一個新聞事件的圖片,然而,如果有ー項視 頻資料在本地存儲,網頁可以在網頁中圖象的位置用視頻來替代。這可能包括視頻的相應的文字「拷貝」,因為視頻和圖象可以不是針對同一事件的,因而會需要不同的支持文字和字幕。在一個實施例中,這一功能是這樣實現的,讓伺服器端應用通過相應的資料令牌來檢測資料的存在(參見上文的資料單屬性)。依據令牌是否存在,為用戶生成不同的頁。在另ー個實施例中,它是在客戶端通過網絡瀏覽器中腳本來實現的。就是說,使用網頁中的腳本,基於媒體資料令牌的存在利用動態HTML來生成不同的頁。本發明的ー個優點是它允許內容供應商優化其網絡帶寬的使用。具體而言,當使用狀況低於峰值時增加內容的傳輸,帶寬使用的低谷被填充,從而優化了帶寬的使用。另ー方面,數字權利管理(DRM)方案可以用於數據流。如,被DRM保護的資料可以利用本發明的方案來發布。所以,當用戶「播放」資料時,提示他獲得合適的許可,作為資料的「使用權」。另ー方面,GAME資料可以以可能用於客戶進程的真實或虛擬ISO圖象的方式來發布。B.機頂盒的的例子客戶進程可以下載和管理來自不同來源的有關媒體內容的媒體資料,所述的來源例如可以是電視機頂盒,其中資料是通過ー個載波信號的邊頻帶或通過數據網絡,如有線網或衛星網或網際網路或內部網傳輸的。例如,在一個實施例中,在家中的瀏覽者可以訪問一個電影庫,或供隨時瀏覽的任何其它的音頻/視頻內容。所述方法涉及傳輸媒體資料,如電影,給位於家中的機頂盒並允許電影聚合起來。機頂盒中的一個硬碟用來存儲電影。電影的傳輸利用通過標準廣播電視信號傳輸大量數據的數據廣播技木。有關數據廣播技術的信息可以從Hartson等人名下的專利申請W09955087號文件中找到,該申請的申請日為1999年4月16日,
公開日為1999年10月28日,在此作為本專利文件的參考。例如,在24小時時間內,該廣播技術可以傳播20部一般片長的高質量電影。機頂盒很容易連接到電視機上,就象任何其它外設一祥,如VCR或DVD播放機。由於計費的緣故,機頂盒還連接於電話線上。在一個作為示例的實施例中,機頂盒位於ー個人的家中,用標準視頻電纜連接於他們的電視機。機頂盒有一個天線,通過廣播電視信號接收數據。機頂盒最好有一個至少80G字節的硬碟驅動器用來存儲多部電影。機頂盒有ー個數據機,機頂盒用它來周期性地與服務供應商聯繫。在服務供應商與機頂盒之間傳輸的信息包括用戶「瀏覽/租賃歷史」,用來計費之用,機頂盒日誌,用來監測系統的運行和用來解密電影的「電影密鑰」。機頂盒有一個處理器,能夠接收來自廣播信號的數據流,能夠重建數據,和把數據寫到硬碟上。處理器必須還能夠在播放一部電影的同時,對來自遙控器的紅外信號作出反應,並對數據機作出反應。出於安全的考慮,硬碟與機頂盒一対一關聯搭配,使得它ー旦被卸除或用於其它地方都不可用。機頂盒最好沒有風扇,因為它需要被設計成很安靜的設備。機頂盒還包含ー個安全處理器,作為其安全系統的一部分。安全處理器是ー個智慧卡的ー個主動構件,該智慧卡用環氧物質物理地連接於PCB,以使其不易被改變。電影並不是實時地「流傳輸」到機頂盒,相反,內容文件被打包,這些包被連續地傳輸到機頂盒,在那裡,它們被累加重組起來。用戶並不清楚什麼數據被傳輸給他們的機頂盒。供應商將電影下傳,並被動地駐留在機頂盒中ー個有限的時間。數據傳輸被內容或服務供應商所控制。為保證電影被完整地接收,同一部電影可能被廣播傳遞給機頂盒幾次。任何在第一次傳輸嘗試中沒收到的數據包會在以後的廣播傳輸中被收到。在本發明中,ー個客戶進程駐留於機頂盒中,當預先設定的條件被滿足時(如網絡帶寬,Q0S),媒體資料(電 影內容)被從遠程地點獲得。傳輸給機頂盒的電影還可以包含有關信息,定義電影的一定的特性。如,一個電影可以有ー個關聯性的開始和結束的日期或時間,用來限定可以看電影的時間範圍。電影可以到達並存儲於機頂盒中,但它可以有ー個關聯的時間,在這個時間之間不可以看電影。這一功能容許電影在從ー個到另一地的傳輸時間上的差異,允許電影被「預裝」,使得在正式發行的日期立即就緒。類似地,資料單可以有ー個結束的日期與電影關聯,過了這個日期,電影就不可以看了,並自動從機頂盒中刪除。存儲於機頂盒中的電影是被加密的。當一部電影要被選擇觀看而且滿足商業條件(如,用戶還有足夠的額度),機頂盒將允許電影被解密和播放。在允許電影被觀看之前,機頂盒無需連接服務供應商,因為解密電影的密鑰通常是與當前帳戶狀況一起被先前取得,並駐留在機頂盒中。顯然,加密的電影未經解密是無法觀看的。所有的解密都被記錄,該記錄用於確定用戶的帳単。與解密和用戶帳戶狀況有關的邏輯處理都由安全處理器來進行。在本發明的一個優選實施例中,在觀看電影之前,隨著電影被選擇用於觀看,和接著的「租賃確認」對話,費用就被收取。在另ー個實施例中,當電影的主要部分已經被觀看,用戶就會被收費。一旦電影已經被選取,它可在一段有限的時間內(如,24小吋)重新觀看而不收費,或者有限的重看次數而不收費。在另ー個實施例中,不是為每部電影收費,而是收取月費。月費的多少取決於各種選擇,如可看的電影的數量,一部被選的電影可以看的時間長度,每部電影可看的次數。可以用ー根電話線來實現源自用戶的信息的傳輸,所述的信息可以是用戶的需要一把密鑰,和由此應當收取的費用。因此,即使用戶有ー個電影庫存儲於用戶的機頂盒中,如果不實際觀看電影,則不收費。在另ー個實施例中,數據可以通過電纜、衛星、網際網路等傳輸給機頂盒。雖然無線廣播是優選實施例,本發明不應局限於無線傳輸。C.結合附圖的說明圖I是表示用來傳輸和在用戶設備中無中斷地再現媒體流的系統10的總體示意圖。具體地說,用戶設備20包括至少ー個客戶進程24(如,客戶資料管理器進程),該用戶進程與客戶資料單42互動,客戶資料42處於用40表示的內容供應商的地點。在用戶設備20中還有用來存儲信息的一個本地高速緩存26。高·速緩存26可以是至少ー個隨機讀取存儲器(RAM),或只讀存儲器(ROM),或硬碟。此外,還可能有一個遠程地點60,它包含資料62,例如程序內容(如ー個體育事件、廚藝節目等)。作為另ー種方案,資料62可以位於內容供應商地點40,或者位於有線/網際網路服務供應商地點(未示出)。在客戶開始提取之前,資料已經在有線/ISP供應商的地點就緒。進ー步,客戶可以同時從多個物理上不同的地點(如,從有線/ISP供應商,內容供應商等)提取資料。客戶進程24為最終用戶管理媒體資料高速緩存26。在一種實現方式中,包含在高速緩存26中的資料62關聯於資料單42,資料單42由內容供應商40通過數據通道80來提供。在此實現方式中,客戶資料管理器進程24按指定的(可調整的)時間間隔從網絡地點(如內容供應商地點40)通過數據通道80提取資料單42。具體地講,客戶進程24通過控制信號通道84提出ー個請求給內容供應商40,要求通過通道80傳輸更新的資料單42。類似地,在另ー種實現方式中,資料單42可以被內容供應商的伺服器(未示出)以周期性的方式發送給最終用戶客戶進程24。資料單42是ー個數據文件,它至少包含內容資料的ー個清単。資料單42中的每個單元通常確定獲取該資料所需的ー個網絡地點和協議。例如,在一種實現方式中,該網絡地點是一個統一資源定位器(URL :UniversalResource Locator),而所述的協議是HTTP。資料單42還可以包含與姆項資料關聯的其它屬性(如在發明內容部分所解釋的和在術語定義部分所定義的),如⑴失效日期,(ii)刪除;(ii)回叫URL-在一個實施例中,該回叫URL用來發起有關資料下載的操作,如跟蹤應用(允許跟蹤哪些資料被下載,頻繁程度如何),和通過電子郵件或即時信息通知客戶ー項資料已經就緒可以瀏覽的應用;(iii)客戶端令牌-在一個實施例中,用來基於資料的可用性來調整再現;(iv)流量-在一個實施例中,該數字是可用的客戶流量的ー個百分比,小於100%,客戶進程可以嘗試僅按這樣的流量來取得數據,而不是ー下全取得,從而減慢下載。在另ー個實施例中,該數字是用字節每秒表示的下載數據率。禁止日期-任何內容都可以在ー個有限的時間窗口內才可用。一旦禁止日期到了,內容會被客戶進程移除,不再可用了。一方面,這些資料可以被合併成一束一束的內容。上述的屬性可以被指定給一束。例如,這使得一旦ー組媒體資料已經被傳輸給用戶設備,一個客戶端令牌就被生成。某些些屬性可以與整個資料單42關聯起來,這些屬性是(a)更新率在一種實現方式中,可以在伺服器端對此進行控制(如,在內容供應商地點40),伺服器端把資料單42通過數據通道80下傳給客戶管理器24。(b)資源路徑;和(C)媒體資料圖7描繪了有關資料單中的資料信息的屬性的分級化性質的ー個方面。如圖所示,內容供應商/ISP提供給客戶的資料單具有所有資料信息的屬性。舉例來說,屬性(1,2)可以指向資料I的過期日。該圖所描述的屬性與每項資料處於一地。作為另一方面,屬性對於資料單來說可以是全球性的,如圖8所示。在這種情形下,客戶進程基於適用於所有資料的全球性屬性來管理資料單中的資料的下載。客戶進程24還能夠從遠程地點60管理它的資料下載行為的許多參數。例如,在一種實現方式中,客戶資料管理器24通過信號86向遠程地點60發送ー個請求,請求通過數據通道90傳輸媒體資料62給本地高速緩存26。客戶進程24可以基於一組預先設定的條件是否被滿足來把這些數據傳輸(下載)的請求發送給遠程地點60。例如,下載會下列情形下發生,當用戶設備20閒置時,當網絡帶寬低某個水平,當用戶設備20中的CPU與/或存儲器的使用狀況低於某個運行水平吋。下載能力也可以由用戶打開或關閉。用戶可以指定只有當設備處於某個網絡中時(如相對於撥號上網的LAN)下載才可以進行。在沒有由客戶進程24發起請求的情況下,依據網絡狀況(如,流量大小、可用帶寬、時間,等),遠程地點60可以減緩或推動媒體資料62。資料單42用作ー種手段,供內容製作者發布和管理客戶的本地存儲/高速緩存中、的內容。例如,該功能允許內容製作者發布將在某些點被無縫地集成入網頁再現或FLASH再現(未示出)中的媒體內容。相應地,製作者可以把有關資料的信息錄入ー個後臺發布系統,包括它的地點,再現的日期和文字,以及將會被與資料關聯的有關信息。這些信息然後會被發布並包含到相應的資料單中。發布系統還可以(立即或在未來的某個日期或時間)發布包含了該資料的網頁或再現。製作者還可以錄入低帶寬媒體資料及相應的文字信息,這些內容之後會與豐富媒體資料合併生成兩種不同版本的頁(一種用於不管出於何種原因未能下載大型資料的用戶,另ー種用於豐富的媒體資料)。客戶資料管理器進程24是可運行於用戶設備20上以提供下載和高速緩存的應用。用戶將能夠自主決定獲得客戶管理器/迸程,很可能是通過內容供應商來獲得。作為一個示例的實施例,客戶管理器可以被安裝成自動啟動,且在後臺運行。圖2顯示了系統100中信息流動的示意圖,其中客戶資料管理器進程102運行在用戶設備中。在一個示例性的描述中,客戶資料單110(如,ー個XML文件)被定期從內容供應商120下載,列於那個文件中的資料130被從遠程地點/內容供應商140處下載並被要相應地高速緩存起來。用戶通過把腳本150包括進來可以導航到顯示資料的網頁,腳本150與客戶管理器進程160通信。由於客戶管理器進程102也可以是ActiveX伺服器,僅ー個代理對象可以在網頁180中運行,實際的控制可以是客戶管理器進程102的一部分。在另ー方面,客戶進程160可以嵌入在網頁180中或客戶管理器進程102的一部分中。C(i).設計方面的說明輸入可以是(i)配置文件,如XML文件,允許遠程控制客戶管理器進程102的行為;(ii)將被高速緩存於客戶端的遠程媒體文件。輸出可以指向媒體文件的本地路徑。任何網頁都可以顯示被客戶進程102高速緩存的資料。使用客戶進程的ActiveX界面,一頁可以包含JavaScript碼150,來看是否安裝了客戶進程102,並詢問客戶關於媒體文件的本地路徑的信息。如果ー個路徑被返回,腳本然後會將該路徑信息傳達給接受參數的任何基於網絡的媒體播放器。設置伺服器120可以是寄存設置文件110的任何網絡伺服器。媒體伺服器140可以是寄存媒體文件或資料130的任何網絡伺服器。
C(ii).實施流程客戶進程102可以被打包於ー個.cab文件並用ー個數字證書籤證以標記程序的創作者(如,沃爾特迪斯尼網際網路集団公司)。可以為不同的內容供應商生成獨立的.cab文件xyzvideo. cab。例如,用於ESPN的文件名可以是espnvideo. cab,它可以用ESPN數據證書籤證。Internet Explorer使用網際網路構件功能下載和跟蹤應用。ー個.INF文件可以被含在.cab中來指導構件下載器如果安裝客戶進程102。所述的.cab文件被放在一個網絡伺服器上,當瀏覽器載入ー個具有OBJECT標籤的網頁,所述標籤包含適合的ActiveX控制的類別身份碼(ID),瀏覽器會使用由CODEBASE屬性指定的URL來下載.cab文件。數字證書被顯示,以此通知用戶我們的控制已經被下載,並提示用戶作出執行的許可。一旦用戶接受,該窗ロ將不被再次顯示,除非ー個更新的版本 被下載。模塊Clientprocess. exe 被加入到名為 Downloaded Program Files (已下載程序文件)的子目錄中,客戶可以自己在啟動(startup)子目錄中建立快捷鍵。快捷鍵的名字取決於誰建立了這些文件(如,迪斯尼,ESPN等)。客戶進程102也可以在go. com域中建立ー個cookie,稱之為ClientProcess (客戶進程),在客戶進程被安裝後被設置為「真」。該cookie可以被定期地檢查,以防止它被用戶無意中刪除。該程序首先被作業系統執行,從那時起,無論何時用戶啟動設備,它都會運行。前述的數字證書可能是必要的,因為大多數用戶都有他們的瀏覽器安全設置,而且安全程序都足夠高,不允許安裝來自網際網路的不可信的應用程式。證書的存在允許瀏覽器確定軟體的來源,並詢問用戶那個公司或個人是否可信。OBJECT標籤的CODEBASE屬性支持可選性地添加安裝希望的軟體版本。版本信息附加在cab所在地點的URL上,用「#」作分隔符。例如,如果客戶進程目前的版本是欄位1,0,0,1,新版本1,0,0,2已經被放在網絡伺服器上,把「#I,O,O,2」附加在CODEBASE URL的尾部,這將指示構件下載器下載和安裝新版本。· INF文件包含ー個設置,它使得先用/shutdown (關機)參數來運行clientprocess. exe以便先關閉clientprocess. exe,使得更新版本不要求重啟設備。構件安裝器可以用事先定義的鍵添加信息給註冊表。對應於客戶進程系統託盤圖標的菜單中將含有一個卸載選項。點擊該先項後,客戶進程運行clientprocess. exe另ー個程序的,傳出/unregserver(解註冊■伺服器)參數,從而卸載它自己。卸載進程將做以下事情(i)解註冊控制項,( )清理由客戶進程添加的註冊表項目,(iii)從啟動文件夾中移除客戶進程項目。當作業系統啟動,且Explorer運行啟動文件夾中的項目吋,客戶進程102將啟動。除非用戶把它從系統託盤圖標中丟了或者是系統關機,否則它不會終止。客戶進程102對於用戶來說是不可見的,除了含有幾個菜單項目的系統託盤圖標,例如,如果ESPN的BottomLine (底線)應用正在運行,客戶進程的ESPN版本將不會顯示它的圖標,因為BottomLine將會在它的菜單中為客戶進程102提供ー些選項。這是有用的,因為它減少了可能會放在一個客戶進程中的託盤圖標的數目。程序BottomLine與客戶進程102可能需要定期彼此通信,保證一方在另一方關閉時可以知道,且在它的菜單項目中的一個被選定時客戶進程可以知道。圖標可以是ESPN圖標或取決於創建方式的另ー個圖標。下列項目將存在於客戶進程託盤圖標菜單中(i)幫助-顯示客戶進程102的幫助,(ii)XML群組文件可以具有一個可選的helpURL項目。當用戶選擇幫助時,用這個URL打開ー個瀏覽器,(iii)About(關於)-顯示程序的版權/信息對話框,(iv)Exit(退出)-停止程序(不將其從啟動文件夾中移除),(V)卸載-卸載程序井清除COM註冊表項目。姆次至少客戶進程102的一個程序可以運行。卩隹ー的例外中,如果clientproces.exe在/unregserver (解註冊■伺服器)或/shutdown (關機)參數運行,所述程序會終止ー個已經在運行的程序,如果存在的話。Clientprocess. exe建立ー種互斥關係,後來的程序檢查該互斥關係,從而實現單ー程序功能。所以,在某些情形下,如果發現一個正在運行的程序,第二個會立即終止。客戶進程的線索記錄模型可以是公寓模型。就是說,客戶進程ActiveX控制項是這樣的設計的,它們希望僅從ー個線索記錄被訪問。然而,客戶進程作為ー個整體是多線索 的,它將啟動ー個線索來進行單個資料下載,終止那個線索,當下一個下載發生時啟動另一個線索。一次只能進行ー個下載。在通常的運行模式中,客戶進程將不用任何參數而運行。然而,下列命令行參數可能會被支持(i)/regserver (註冊■伺服器);(ii)/shutdown (關機)-停止在運行clientprocess. ext的另ー個程序,如果它存在的話;和(iii)/unregserver (解註冊■伺服器)。使用從設置伺服器上下載的XML群組文件設置客戶進程。通過ー個網頁內為ClientProcessGroup (客戶進程群組)ActiveX控制項而設的OBJECT (對象)標籤中的PARAM標籤來獲得群組文件的URL。姆當ー個ClientProcessGroup (客戶進程群組)被ー個XML參數發起時,客戶進程進行檢查,看看該群組是否已經被加入。如果沒有,它會被加到註冊表,文件會被下載並拆解。群組文件的註冊表項目不會移除,起到該客戶進程被卸載。通常,根據可配置的更新率來下載群組文件。如果伺服器支持If-Modified-Since (如果-從某時-修改)文件頭,客戶進程可能不下載該文件,如果它自上次下載以來還沒被修改。群組文件中的XML使用RSS格式,並具有一個客戶進程特殊的元素。RSS是ー個公開格式,用於許多迪斯尼作品的合成。這樣做的初衷是試圖使儘可能充分地使用標準,使得群組文件有可能用於其它系統。圖3示出了一個用於群級文件的示例DTD。啟動之後,客戶進程把自己註冊於系統中,作為ー個用於後續的ActiveX控制項的COM本地伺服器(Local Server)。只有ClientProcessGroup (客戶進程群組)被標誌為安全,可以用於初始化,只有ClientProcessLocator (客戶進程定位器)被標記為安全,可以用於腳本。這是為了避免控制項被用於不良目的。Clientprocess (客戶進程)的初始模型設計成具有用於每個主要構件的ー個ActiveX界面,允許網頁顯示狀態。這些界面對於開發/測試階段的故障檢修也很有用。ClientProcessSvc 這是應用的主要類型,放在安裝網頁上,它有ー個OBJECT標籤,用來強制應用的下載和安裝。生成一個單獨的CClientProcessSvc程序,用於對已經生成的資料和群組對象進行跟蹤的進程。IclientProcessSev界面提供用於報告程序狀態的方法。ClientProcessGroup (客戶進程群組)ClientProcessGroup (客戶進程群組)ActiveX 控制項被 JavaScript (Java 腳本)用來指定ー個設置給客戶進程。通過IproperBag界面,ClientProcessGroup (客戶進程群組)接受OBJECT標籤參數,調用被設定給XML文件的URL的XML或資源。單個的XML設備文件(或群組文件)用ー個ClientProcessGroup (客戶進程群組)對象來表達。IclientProcessGroup界面提供狀態功能。ClientProcessLocator(客戶進程定位器)ClientProcessLocator (客戶進程定位器)是一個簡單的控制項,它對腳本安全,且只有ー個方法,即GetLocalPath0如果已被下載,它被JavaScript (Java腳本)用於顯示媒 體資料的網頁,以確定本地文件的路徑。此外,如果用戶已經停止客戶進程,然後瀏覽到下ー個媒體網頁,含有ClientProcessLocator (客戶進程定位器)類別號(id)的OJBECT標籤將會引發clientprocess. exe再運行。如果用戶卸載該產品,在CODEBASE參數被確定的情況下,該標籤將強制重新安裝或升級。ClientProcessAsset (客戶進程資料)ClientProcessAsset (客戶進程資料)代表將被本地高速緩存的任何對象(群組或媒體文件)。該COM對象在ClientProcessDownloader (客戶進程下載器)中的ClientProcessSve 或 get_queueAsset 用 get_asset 萬法返回。ClientProcessDownloader(客戶進程下載器)單個的ClientProcessDownloader (客戶進程下載器)在應用啟動時被生成。它處理資料下載隊列。當一項資料來到下載隊列的頂端時,資料用QueueDownload(下載隊列)將它們自己添加到隊列中,它被交給CasyncCacheDownloader程序去處理。ClientProcessReference (客戶進程參照)ClientProcessReference (客戶進程參照)對象代表媒體文件。姆個群組可以有一個或多個參照。該COM對象在ClientProcessGroup (客戶進程群組)被get_reference方法返回。其它C++類該部分定義了客戶進程應用中的C++類的示例,並總結它們的行為以及相互間的作用。這些類中的ー些具有COM封面對象,用幹與其它應用通信。圖4給出了各種類的表格。しasyncしacheDownloader—asynccachedownloader. h/. cpp 該類別通過HTTP把資料的下載封裝進本地設備中。CasyncCacheDownloader再細分類Cwindoelmpl,允許它接收信息,因為它的大部分操作發生在ー個單獨的線索記錄中。客戶進程使用window信息用於線索內部的通信。其方法中的大部分運行於主線索中,但StartDownload(啟動下載)生成一個新的線索,該線索又調用DoDownloadO方法。DoDownloadO用Winnet APIs (Winnet應用程式接ロ)來下載單個資料並為它生成ー個Internet Explorer高速緩存記錄項。DoDownload方法在一個時間用小塊的方式下載文件。如果設置的流量小於100%,它還會在每完成ー塊的下載後休眠一會兒。例如,如果流量為50%,下載線索休眠的時間將與它用來下載這塊數據所需要的時間ー樣長,以實現50%的流量。CCacheAsset-cacheasset. h/. cpp ー個CcacheAsset程序代表需要被高速緩存在本地系統中的單個文件。這可以是一個群組文件或一個媒體文件(參照)。CCacheGroup和CCacheReference兩個程序都例示ー個CcacheAsset程序,以處理文件的下載和高速緩存。GetInternet方法返回其各自的COM封面對象的ClientProcessAsset (客戶進程資料)界面指示器。如果下載不成功,CCacheAsset將設定一個計時器,從而根據圖5中的表格再嘗試一次。如果下載成功,CCacheAsset觀察文件系統,以確認高速緩存項目沒被從高速緩存中刪除。如果刪除了,再次下載該項目。CCacheGroup-cachegroup. h/. cpp、
該類別封裝XML群組文件。姆個Group XML文件被傳遞給CCacheGroup的一個程序,程序解析此文件,並生成用於每個媒體文件項目的CCacheReference程序。GetInternet方法返回其各自的COM封面對象的ClientProcessGroup (客戶進程群組)界面指不器。ー個CCacheAsset程序被生成,以代表該組文件,一個計時器也被設定以一定的時間間隔,該間隔被設成XML中指定的refreshRate (更新率)。當計時器到時時,用於該組文件的CCacheAsset被加入到下載隊列。CCacheReference-cachereference. h/. cpp當XML群組文件被CCacheGroup解析,為姆個媒體文件項目生成ー個CCacheReference 程序。CCacheReference 生成一個 CCacheAsset 程序來處理下載 / 高速緩存功能。該類別還負責檢查項目過期時間,將過期的項目從盤中刪除。CCacheTime (高速緩存時間)-cachetime· h/. cpp CCacheTime再細分類ATL CTime,以提供時間轉換功能。客戶進程中所有的日期/時間變量都利用CCacheTime存儲。CClientProcessModule-clientprocess. cpp 該類別代表可執行進程自己。CClientProcessModule對標準的ATLCAtlExeModuleT類再細分類。其原因是為了添加功能給進程的啟動,以及註冊和解註冊。在啟動時,以ClientProcessSve⑶ID為名字生成ー個共用的互斥關係。如果該互斥關係已經存在,這意味著應用已經在運行,所以當前的程序存在。所有額外的安裝和卸載功能也在該類中完成。CException-exception. h/. pp發生錯誤時,CException程序被生成並被丟棄。CException處理錯誤的信息。CRegistryVirtualDeviceX-registryvirtualdevicex. h 這是ATL 中 CregistryVirtualDevice 子類。該過度載入AddStandardReplacements (增加標準替代)來阻止ATL,不讓它檢查模塊的擴展以確定我們是否應當把InProcServer32或LocalServer32放入註冊■表中。客戶進程始終中一個· exe,所以也是ー個LocalServer (本地伺服器),因而,在應用上添加外部要求的調用可能是不必要的。CTime 和 CTimeable-timer, h/. cpp
CTime包括時間功能。希望使用計時器的對象僅需要從CTimeable衍生,和實現OnTimer,並生成ー個CTimer程序,調用它的Start方法。StopO停止計時器。CUrIMap-urlmap. h/. cpp CUrlMap是ー個專門的CatlMap模板,它允許用戶生成把對象映射到URL的雜湊映射類。具體地說,系統通過一列方式得到增強(i)為下載碼增加下載率(節流)支持,
(ii)到期時刪除資料,(iii)實現ClientProcessLicator (客戶進程定位器)控制項並刪除COOKIE邏輯,(iv)使用系統託盤圖標和菜単,(vi)提供HitCountURL支持,(vii)提供程
序信息(一個「關幹」對話框)。本發明還給予一定的注意,以保證下列事項(i)所有適當的ActiveX安全設置都被應用到每個控制項,(ii)COM方法和特性被隱藏(這就是說,它們不會顯示在控制項設計用戶界面,如Visual Basic中),(iii)靜態功能被用來決定文件系統,所以只使用一個計時器,(iv)添加BottomLine邏輯以檢查ClientProcess (客戶進程)並提供系統圖標子菜單,(v)使用啟動菜單快捷鍵,而不是windows運行註冊表項目,(vi)定期地檢查COOKIE,所術COOKIE指示是否ClientProcess (客戶進程)已安裝或在必要時重新生成。C (iii) · BottomLine 增強BottomLine (ESPN的商標)可能需要被修改,以檢測客戶進程,如果進程存在,在它的系統託盤菜單中顯示客戶進程菜單項目。這排除了如果用戶有兩個應用安裝和運行的情況下在託盤中出現多個圖標的情形。該客戶進程將在CLIENTPROCESS_MENU_START (客戶進程菜單開始)和CLIENTPROCESS_MENU_END (客戶進程菜單結尾)範圍內定義其菜單項目標識。當ー個BottomLine可能訪問的頭文件被建立起來以後,這些常數將被定義在該頭文件中。BottomLine和客戶進程還需知道是否所有的進程在運行,所以它們需要執行下列步驟(a)當BottomLine啟動時,它設法生成客戶進程互斥關係,來看該客戶進程是否在運行,(b)當客戶進程啟動或關閉時,它廣播ー個註冊'windows信息,BottomLine會看到這個信息,並用ー個回執作出回應,(c)當BottomLine啟動或關閉時,它廣播ー個註冊'windows信息,BottomLine會看到這個信息,並用ー個回執作出回應。註冊的windows信息可以允許應用來定義它們自己唯一的信息,用來與其它已經註冊■了同樣信息的windows通信。當客戶進程或BottomLine向其它應用或回執宣布它的存在,它將沿著wondow句柄發送,以利於未來的通信。然後,客戶進程將使用WM_C0PYDATA把將顯示在菜單上的信息發送給BottomLine。當ー個客戶進程菜單項目被選定時,BottomLine將轉發它。一些功能也包括在實現客戶進程的系統中,它們是(i)安裝與升級的停止(自動地),( )客戶端用戶界面很少或沒有,(iii)窗戶程序的伺服器端設置,(iv)跟蹤有多少個媒體文件被下載的能力,(V)通過JavaScriptCJava腳本)來確定ー個媒體文件下載的狀態的能力,(vi)按其命名發送內容供應商的特殊控制項(如ESPN的特殊控制項)的版本的能力。C(iv).系統功能客戶進程程序
客戶進程程序負責在媒體內容顯示於網頁前的幾小時下載該媒體內容。當用戶瀏覽到ー個含有顯示那個文件的HTML的頁面時,該文件的本地拷貝會被用到,這將顯著地提高播放質量。安裝客戶程序被允許自動安裝。任何網頁都可以含有ー個指向客戶進程的標籤,必要吋,瀏覽器將自動安裝它或對它進行升級。用戶界面通過ー個提供了關閉或卸載產品的能力的菜單,客戶程序的用戶界面可以被集成於ー個系統託盤圖標中。如果BottomLine應用存在,那麼就使用它現有的系統託盤菜單。執行 客戶進程可以被安裝於用戶設備的啟動文件夾中,所以它一直在運行。程序會定期地從ー個WDIG伺服器下載ー個XML文件,該WDIG伺服器包含關於哪個資料要被下載、何進過期、以何種速率下載的信息。還有ー個界面,供內容提供商網站與客戶進程進行通信,以確定本地媒體文件的地點。寄存(hosting). cab安裝文件可以被寄存於由使用該產品的Vertical提供的一個或多個首端文件。由於它是一個靜態文件,它可被任何網絡伺服器寄存。隨著新版本的客戶進程的發布,該文件將在伺服器中被升級。內容供應商Bottom Line (底線)修改可以對BottomLine應用作合適的修改,從而為客戶進程提供系統託盤界面。HTML和腳本範例HTML和JavaScript (Java腳本)範例可以被提供給開發商,以演示如何寄存客戶進程和與之進行通信。外部界面要求這一部分描述外部系統,其中,界面需要為之生成和修改。ESPN BottomLine 需要對BottomLine做小的改動,以檢測客戶進程的存在,増加菜單項目以停止和卸載該客戶進程。客戶進程檢測姆當BottomLine被顯示時,BottomLine必須檢測客戶進程的存在,如果存在並且正在運行,顯示ー個包含客戶進程菜單項目的子菜単。通過檢查互斥關係的存在,客戶進程的檢測很容易做,其中的互斥關係是客戶進程在啟動或尋找具有客戶進程window類的window時生成的。客戶進程通信如果客戶進程在運行,BottomLine可能會使用window消息以詢問哪個菜單項目被顯示。當一個客戶進程項目被選定時,BottomLine將會使用該信息來告訴客戶進程哪個項目被選定了。媒體內容伺服器寄存媒體文件的伺服器可以是任何HTTP I. I網絡伺服器,只要它支持HTTP字節範圍的下載(206success碼),以實現下載節流。如果伺服器不支持字節範圍,整個文件可能會被一次下載,不管設置如何。配置伺服器界面可以有ー個寄存XML配置文件的伺服器。XML可以跟從一個按照設計參數發布的格式。功能要求I.在用戶設備上設置ー個C00KIE,表示程序被安裝了。該COOKIE可以定期被檢查,以確保用戶不刪除它。2.通過Internet Explorer構件下載功能來更新支持軟體,這將保證當ー個新版 本被放在首端和當HTML被修改以要求一個更新的版本時,客戶代碼被適當地更新。而且,還可以保證在更新時不需要重新啟動系統。3.程序可以被安裝在啟動文件夾中,所以將一直運行,除非用戶專門停止它。4.在一個時間只有ー個程序運行。5.通過ー個系統託盤圖標菜單提供卸載功能。卸載可以從程序外部發起。6.由系統託盤圖標提供的菜單項目。7.幫助-顯示迪斯尼高速緩存的幫助。8.配置文件可以有ー個可選的helpURL(幫助URL)項目。當用戶選擇了幫助吋,用該URL打開ー個瀏覽器。關於-顯示程序版權/信息對話框。退出-停止程序(不將它從啟動文件夾中刪除)。卸載-卸載程序並將它從註冊表項目中刪除配置文件⑴可以是XML格式,(ii)可以提供更新率,用來確定以何種頻度下載配置文件,(iii)可以提供URL的按項目設置、過期時間、點擊跟蹤的URL、和下載率。進ー步,一個項目的優先性可以按設置文件的次序來確定。而且,兩個不同的設置文件不可以包含同樣URL的同樣的項目。此外,有關XML設置文件的地點的信息可以被HKEY_CURRENT_USER之下的註冊表來定位。文件下載瀏覽器(如Internet Explorer)高速緩存用戶進程可以用Internet Explorer高速緩存來提供媒體文件的客戶端高速緩存。存於高速緩存中的文件可以被Internet Explorer清除,如果必要的話,以便為其它項目留出空間。XML設置文件,可以被標記成粘性,以讓它在硬碟上存在一定長的時間(如30天)。由於Internet Explorer高速緩存是按姆個Windows聯機註冊■來工作的,姆個用戶需要有単獨的高速緩存。客戶進程需要定期(或使用文件系統觀察工具)檢查以檢測何時ー個項目被從高速緩存中刪除。如果它還沒到期,它將會再次下載。項目有效期每個項目都有一個到期日和時間。定期地,客戶進程將檢查這些時間,從高速緩存中刪除已經過期的項目。客戶進程需要確保跟蹤資料,如果它們在客戶進程有機會作廢它們之前就把它們從XML配置文件中刪除,它們將被從用戶硬碟中刪除(如果用戶讓他的設備關機時間過長,這有可能發生)。一旦一個項目被下載,它將不會再被下載,除非Internet Explorer已經將它從高速緩存中刪除。配置的更新客戶進程通 過把XML配置文件從伺服器按照由refreshRate (更新率)XML元素所定義的速率下載,定期地更新XML設置文件。下載錯誤如果在下載ー個項目時發生錯誤,在一段暫停後,客戶進程將再試。等待的時間取決於依據圖6所提供的圖表的錯誤類型。進一歩,如果網絡連接就緒,客戶進程可以進行下載,如果需要,它可以不通過撥號上網來進行下載。節流配置文件中的每個項目都可以被可選擇地配置成具有ー個具體的下載流量比例。這意味著,客戶進程可以分塊地下載文件,而且可以在塊與塊之間停頓,以實現流量比例。寄存該文件的網絡伺服器應該能夠支持HTTP字節範圍特性。網絡界面用於配置文件的URL可以通過ー個ActiveX控制項特性被傳遞給客戶進程。ActiveX控制項對腳本是安全的,對初始化也是安全的。客戶進程可以檢查XML設置URL的伺服器部分,以證明它是來自於go. com域。這可以防止惡意網頁用可能有害的數據(以低更新率下載的大型文件)對客戶進程進行初始化。OBJECT標籤不需要有ー個CODEBASE參數,以致客戶進程不會被意外地安裝給某個無權限的人。JavaScript (Java腳本)可以有代碼來檢查是否對象在進行任何API調用之前就存在,而且檢查已安裝的C00KIE。用戶進程的至少ー個版本可以被安裝在客戶設備中。P.總結以上關於本發明的例子和希望的實施例的說明是為了解釋和說明之目的。其意圖不在於窮舉和將本發明限定於具體描述的方式。根據本發明的精神還可以做多種修改和變化,例如(a)有可能創建ー個新的構件,它提供通用的系統託盤圖標,其中已安裝的應用可以自我註冊,以添加菜單項目。(b)伺服器端用戶設置確定客戶進程的行為。客戶進程需要ー個唯一的標誌,固定關聯於安裝了它的用戶。伺服器可以更複雜,為不同的用戶發送XML設備文件。(C)未完成的下載繼續進行。(d)添加更複雜的下載節流(例如,對客戶的基準帶寬進行測量,把它用於計算流量控制)。(e)伺服器端的智能設置,用於基於MRTG數據來確定伺服器負載,並用它來決定返回503回應給客戶進程以防止資料下載的過重負荷。很顯然,本領域技術人員可以在不背離本發明的概念的情況下對本發明進行多種使用和修改,而且不同於這裡所做的具體實施例的說明。所以,本發明應被理解為包括了所述的所有新的特徵和新的組合,或所公開的裝置方法所具備的所有新的特徵與新的組合。其保護範圍以該發明的精神和權利要求的範 圍為限。
權利要求
1.一種通過網絡傳輸資料的方法,包括步驟 由內容供應商通過網絡把資料單提供給用戶設備,所述的用戶設備包括客戶進程;以及 當滿足預先設定的條件時,把對應於資料單的資料通過 網絡傳輸給用戶設備。
2.根據權利要求I所述的方法,其中資料是音頻內容、視頻內容、文本內容、使用許可的權利或ー個多媒體文件中的至少ー種。
3.根據權利要求I所述的方法,其中資料單由來自用戶的請求而生成。
4.根據權利要求I所述的方法,進ー步包括訪問內容供應商的內容網站。
5.根據權利要求I所述的方法,其中預先設定的條件是用戶設備正閒置,網絡服務質量(QOS),或者帶寬使用情況低於預先設定的運行水平中的至少ー種。
6.根據權利要求I所述的方法,其中預先設定的條件是用戶設備CPU使用情況,或用戶設備中的存儲器使用情況中的至少ー個低於預先設定的運行水平。
7.根據權利要求I所述的方法,其中客戶進程發起資料的傳輸,從內容供應商通過網絡傳輸給用戶設備。
8.根據權利要求I所述的方法,其中資料存儲於本地高速緩存。
9.根據權利要求8所述的方法,進ー步包括把存儲的資料與實時內容一起再現,所述的實時內容由內容供應商提供。
10.根據權利要求I所述的方法,其中預先設定的條件包括一天中的某個時間。
11.根據權利要求8所述的方法,進ー步包括從用戶設備CPU使用情況,帶寬使用情況,本地高速緩存使用情況,和用戶設備活動計時器中確定至少ー個參數。
12.根據權利要求8所述的方法,進ー步包括當資料沒有在用戶端就緒時,把替代資料與來自內容供應商的實時內容一起再現。
13.—種通過網絡把連續的和無中斷的內容流提供給用戶的方法,該方法包括步驟 由內容供應商通過網絡把資料單提供給客戶進程,所述的客戶進程運行於用戶的設備中; 當滿足預先設定的條件時,把資料從遠程地點通過網絡傳輸給用戶設備,其中遠程點的信息從所述的資料單中獲得;以及 把傳輸的資料與由用戶設備正從遠程地點通過網絡接收的內容流結合,從而向用戶提供連續的和無中斷的內容流。
14.根據權利要求13所述的方法,其中資料是音頻內容,ニ進位數據內容,視頻內容,使用許可的權利,文本內容,或多媒體文件中的至少ー種。
15.根據權利要求13所述的方法,其中資料單由內容供應商提供給客戶進程。
16.根據權利要求13所述的方法,進ー步包括訪問內容供應商的網站。
17.根據權利要求13所述的方法,其中預先設定的條件是用戶設備正閒置,網絡服務質量(QOS),或者帶寬使用情況低於預先設定的運行水平中的至少ー個。
18.根據權利要求13所述的方法,其中預先設定的條件包括用戶設備的CPU使用情況或用戶設備中的存儲器使用情況中的至少ー個低於預先設定的運行水平。
19.根據權利要求13所述的方法,其中客戶進程發起資料的傳輸,從內容供應商通過網絡傳輸給用戶設備。
20.根據權利要求13所述的方法,其中資料存儲於本地高速緩存。
21.根據權利要求20所述的方法,進ー步包括把存儲的資料與實時內容一起再現,所述的實時內容由內容供應商提供。
22.根據權利要求13所述的方法,其中預先設定的條件包括一天中的某個時間。
23.根據權利要求20所述的方法,進ー步包括從用戶設備的CPU使用情況,帶寬使用情況,本地高速緩存使用情況、和用戶設備活動計時器中確定至少ー個參數。
24.根據權利要求20所述的方法,進ー步包括,當資料沒有在用戶端就緒時,把替代資料與來自內容供應商的實時內容一起再現。
25.根據權利要求13所述的方法,其中資料單由內容供應商傳輸到客戶進程。
26.ー種用於把連續的無中斷的內容流通過網際網路提供給用戶的系統,該系統包括 資料單,由內容供應商準備就緒,通過網際網路供客戶進程使用,所述的客戶進程運行於用戶的設備中; 資料,當滿足預先設定的條件時從遠程地點準備就緒,通過網際網路供用戶設備使用,其中遠程地點的信息從所述的資料單中獲得。
27.根據權利要求26所述的系統,進一歩包括用於把傳輸的資料與由用戶設備正從遠程地點通過網絡接收的內容流結合,從而向用戶提供連續的和無中斷的內容流的集成器エ具。
28.根據權利要求26所述的系統,其中資料是音頻內容,視頻內容,ニ進位數據內容,文本內容,或多媒體文件中的至少ー種。
29.根據權利要求26所述的系統,其中資料單由內容供應商提供給客戶進程。
30.根據權利要求26所述的系統,進ー步包括訪問內容供應商的網站。
31.根據權利要求26所述的系統,其中預先設定的條件包括用戶設備正閒置,或者帶寬使用情況低於ー個預先設定的運行水平中的至少ー個。
32.根據權利要求26所述的系統,其中預先設定的條件包括用戶設備的CPU使用情況,或用戶設備中的存儲器使用情況低於預先設定的運行水平。
33.根據權利要求26所述的系統,其中客戶進程發起資料的傳輸,從內容供應商通過網絡傳輸給用戶設備。
34.根據權利要求26所述的系統,其中資料存儲於本地高速緩存中。
35.根據權利要求34所述的系統,進一歩包括把存儲的資料與實時內容一起再現的裝置,所述的實時內容由內容供應商提供。
36.根據權利要求26所述的系統,其中預先設定的條件包括一天中的某個時間。
37.根據權利要求34所述的系統,進一歩包括用於從用戶設備的CPU使用情況,帶寬使用情況,本地高速緩存使用情況、和用戶設備活動計時器中確定至少ー個參數的裝置。
38.根據權利要求34所述的系統,進一歩包括,當資料沒有在用戶端就緒時,把替代資料與來自內容供應商的實時內容一起再現的裝置。
39.根據權利要求26所述的系統,其中資料單定期地由內容供應商更新。
40.根據權利要求26所述的系統,其中客戶進程與多個資料單關聯。
41.根據權利要求26所述的系統,其中資料單包括到期日期,回叫URL,客戶端令牌,節流參數,更新率參數,刪除資料標誌,幫助連結,和資源路徑信息中的至少ー個。
42.根據權利要求26所述的系統,其中資料在傳輸給用戶設備之前被傳輸給有線服務供應商或者網際網路服務供應商中的至少ー個,所述有線和網際網路服務供應商在地理上與用戶設備鄰近。
43.一種通過網絡把內容流提供給用戶的方法,該方法包括步驟 由內容供應商通過網絡把資料單提供給客戶進程,所述客戶進程運行於用戶的設備中; 當滿足預先設定的條件時,把資料從遠程地點通過網絡傳輸給用戶設備,其中遠程地點的信息從所述資料單中獲得;以及 把傳輸的資料與由用戶設備正從遠程地點通過網絡接收的內容流結合; 其中所述資料和內容流被實質上無縫地再現給用戶。
44.一種用於把連續的、無中斷的內容流通過網際網路提供給用戶的系統,該系統包括 資料單,由內容供應商準備就緒,通過網際網路供客戶進程使用,所述客戶進程運行於用戶的設備中; 資料,當滿足預先設定的條件時從遠程地點準備就緒,通過網際網路供用戶設備使用,其中遠程地點的信息從所述的資料單中獲得; 集成器工具,用於把傳輸的資料與由用戶設備正從遠程地點通過網絡接收的內容流結合,從而向用戶提供連續的和無中斷的內容流; 其中預先設定的條件包括用戶設備正閒置,網際網路帶寬使用情況低於預先設定的運行水平,一天中的某個時間,用戶設備的CPU使用情況,或存儲器使用情況低於預先設定的運行水平中的至少ー個。
45.一種用於通過網絡接收資料的方法,包括步驟 由內容供應商通過網絡把資料傳輸給客戶進程,所述客戶進程運行於用戶的設備中;以及 當滿足預先設定的條件吋,對應於資料單,通過網絡在用戶設備上接收該資料; 其中所述預先設定的條件包括用戶設備正閒置,網絡服務質量(QOS),網絡帶寬使用情況低於預先設定的運行水平,用戶設備的CPU使用情況,或者用戶設備中的存儲器使用情況低於預先設定的運行水平中的至少ー個。
46.一種用於通過網絡把家庭多媒體資料提供給用戶的方法,該方法包括步驟 由內容供應商通過網絡把資料單提供給機頂盒,所述機頂盒包括對資料的傳輸進行管理的客戶進程;以及 當滿足預先設定的條件時,從遠程地點通過網絡按照所述客戶進程的指示把資料傳輸給所述機頂盒,其中遠程地點的信息從所述資料單中獲得。
47.ー種用於把電影傳輸給觀眾家中的機頂盒以備存儲和在以後進行瀏覽的方法,該方法包括步驟 在機頂盒上接收來自內容供應商的媒體資料單,所述媒體資料單包括將要下載的資料的清單和有關每項媒體資料的地點的信息; 在機頂盒上運行客戶進程,所述客戶進程讀取媒體資料單以確定什麼媒體資料應當被傳輸給機頂盒,並基於預先設定的條件管理數據資料的傳輸; 當滿足預先設定的條件時,把數字媒體資料從遠程內容供應商下載到機頂盒;以及把下載的數字媒體資料存儲於機項盒,以便用戶以後在電視機上或其它顯示設備上觀看。全文摘要
本發明為經帶寬受限的網絡傳輸與動態再現大型媒體資料的系統。基於一組預先設定的條件,把媒體內容從內容供應商傳輸到用戶設備的高速緩存,以供以後瀏覽。一個客戶資料管理器進程駐留於用戶設備,資料單處於內容供應商的地點,媒體資料位於遠程地點。
文檔編號H04N5/00GK102739670SQ20121021379
公開日2012年10月17日 申請日期2003年7月31日 優先權日2002年8月17日
發明者亞倫·P·拉伯格, 亞當·T·弗裡特斯, 伊莉莎白·M·弗裡曼, 埃裡克·C·赫塞爾廷, 埃裡克·弗裡曼, 斯科特·F·瓦特森 申請人:迪斯尼實業公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀