專利名稱:用于經由網絡遠程控制媒體服務器的系統及方法
技術領域:
本發明大體上涉及用于經由網絡控制媒體記錄器、服務器及/或其它裝置的系統及方法。此類系統及技術可例如在遠程控制機頂盒、數字視頻記錄器(DVR)、易地播放裝置及/或其它類型媒體裝置時有用。
背景技術:
在個人生活及職業生活的每個方面因特網及其它數字通信網絡皆持續具有顯著 影響。歸因于便攜式計算裝置成本減少及能力增加且移動電話及其它無線通信技術逐漸盛行且能力增加,網絡通信正變得日益普遍。此外,越來越多的裝置(包含機頂盒(STB)、電視接收器、個人或數字視頻記錄器(DVR)、易地播放裝置等等)正變為可用于經由數字網絡通信。因此消費者正在期待方便控制他們的來自廣泛范圍的位置及設定的媒體內容。然而,在遠程控制網絡啟用的媒體裝置(例如STB、DVR、易地播放裝置等等)時常常出現挑戰。例如防火墻及其它安全機構可能限制對定位于住宅網絡上的消費者裝置的直接接入。因此,在聯系裝置以錄制或觀看節目規劃、改變裝置上的設定、觀看可經由裝置取得的內容或執行其它任務時出現困難。雖然有人已試圖通過因特網或其它網絡來建立與媒體裝置的通信,但這些有限解決方案通常依賴于裝置的周期性輪詢以獲得來自遠程服務器的任何命令。這些輪詢方案易于造成處理延遲且當用戶請求動作時缺乏反饋或確認的方便。另外,通過輪詢方案可取得的動作類型在實踐中已嚴重受限制。因此,現在希望建立用于控制DVR、STB、易地播放裝置或其它網絡啟用的媒體服務器裝置的系統及方法。此類系統及方法將理想地提供可從一系列廣泛客戶端裝置取得的一組豐富控制選項。結合附圖及此背景部分,從隨后詳細的說明書及隨附權利要求書將清楚這些及其它希望的特征及特性。
發明內容
根據各種示范性實施例描述用于遠程控制個人或數字視頻記錄器(PVR/DVR)、機頂盒(STB)、與PVR/DVR或類似裝置通信的易地播放裝置或系統及/或另一媒體服務器的系統及方法。在一些實施例中,響應于從客戶端接收的連接請求,建立在服務器主機與媒體服務器之間的實時、半實時或其它的通信會話。關于在媒體服務器處理的內容的信息經由會話接收且提供給所述客戶端。響應于從所述客戶端接收的隨后指令,媒體服務器可使用會話而受控制及/或采取其它動作。例如可刪除存儲在媒體服務器上的節目或可錄制額外節目。其它實施例可提供控制指令以改變頻道、快進或倒回內容、調整用戶偏好及/或采取希望的任何其它動作。
其它實施例涉及主機系統,所述主機系統經由網絡與客戶端及具有存儲節目內容的媒體服務器通信。所述系統適當包括消息服務器及引導服務器,所述消息服務器經配置以使用預先存在的連接經由網絡與媒體服務器通信。所述引導服務器經適當配置以接收對來自客戶端經由網絡到媒體服務器的連接的請求;指導消息服務器響應于所述請求而聯系媒體服務器;經由網絡建立與媒體服務器的會話;經由所述會話接收關于存儲在媒體服務器的媒體內容的信息;將關于媒體內容的信息提供到客戶端;從客戶端接收指令來控制媒體服務器;且響應于從客戶端接收的所述指令及經由所述會話指導媒體服務器執行所述指令。又有其它實施例提供一種方法,所述方法可由經由網絡與客戶端及與具有存儲的媒體內容的媒體記錄器通信的引導服務器或其它主機執行。在所述主機處經由所述網絡從客戶端接收第一消息,其中所述第一消息識別所述媒體記錄器。響應于所述第一消息,將第二消息發射到消息服務器,所述消息服務器具有與識別的媒體記錄器預先存在的連接。響應于從所述媒體記錄器接收的第三消息,經由所述網絡在媒體記錄器與主機之間建立會話。經由所述網絡從所述主機將節目指南信息提供到所述客戶端,且在所述主機處從所述·客戶端接收指令以錄制所述節目指南信息中識別的節目。響應于接收到所述指令,經由所述會話指示所述媒體記錄器錄制識別的節目。下文更詳細描述各種其它實施例、方面及特征。
將在下文中結合下列圖式描述示范性實施例,其中相同符號指示相同元件,且圖I是示范性引導服務器主機系統的框圖;圖2是展示用于控制遠程媒體服務器的示范性過程的圖;圖3展示在一些實施例中可由客戶端呈現的具有指南數據的接口及媒體播放器的一個實例;圖4展示在一些實施例中可用于遠程管理存儲在DVR或其它媒體服務器上的節目的接口的一個實例;及圖5展示在一些實施例中可用于解決節目錄制沖突的接口窗口的一個實例。
具體實施例方式本發明的下列詳細描述實質上僅為示范性且并非意欲限制本發明或本發明的應用及使用。另外,并非意欲受前述背景技術或下列詳細說明呈現的任何理論的束縛。根據各種實施例,引導服務器或其它主機使用網頁(web)或其它基于網絡的特征能夠與機頂盒(STB)、電視接收器、個人或數字視頻記錄器(DVR)、易地播放裝置、文件服務器或允許對裝置的直接及方便控制的其它媒體服務器建立實時會話。在一些實施例中,可使用聯網主機以設定偏好、選擇將由服務器錄制的節目、管理先前存儲的節目及/或適當的任何其它功能。例如在一些實施例中,主機能夠檢索關于存儲在媒體服務器上的媒體內容的實時(或接近實時)信息,因此允許方便搜索及管理存儲的文件,以及指示未來節目規劃的新錄制的能力,及/或按希望采取其它動作。主機還可提供搜索或其它特征;在一些實施例中,搜索可考慮存儲在媒體服務器上的節目規劃及節目指南信息、關于點播內容的信息及/或任何其它可取得信息來產生極強大搜索體驗。不同于依賴于遠程裝置間歇性輪詢以獲取指令或其它信息的技術,各種實施例能夠通過使用維持與媒體服務器的預先存在的連接的消息接發服務器而建立與遠程媒體裝置的實時連接。當用戶想要開啟與遠程媒體服務器的控制或其它會話時,可使用預先存在的連接來建立與在線主機的相對立即會話,因此允許將命令或其它消息實時(或接近實時)“推送”到媒體服務器而不必等待媒體服務器從主機“下拉”信息。此相對立即提供很大程度上改進的用戶體驗以及對一系列廣泛得多的特征的接入。例如通過提供對媒體服務器裝置的直接實時接入,主機的一些實施方案能夠提供將從直接連接客戶端應用程序取得但是在方便網頁接口中的大多數(如果非全部)功能性。因此各種實施例向觀看者提供可使用常規網頁或類似特征 方便地接入的相對穩健功能及特征組。其它實施例可按希望提供替代或額外特征。現轉到繪圖且首先參考圖1,用于遠程控制媒體服務器104的示范性系統100適當包含客戶端102,所述客戶端102經由網絡110獲得對引導服務器或其它主機116的接入。在一些實施例中,客戶端102可使用常規網頁瀏覽器103與引導服務器主機116交互。來接收到來自客戶端102的請求后,主機116即刻能夠建立與媒體服務器104的會話,以獲得關于服務器104可取得的節目規劃或其它媒體內容105的信息。此信息可經適當處理及/或格式化(例如為網頁或類似內容)且經由網絡110提供給客戶端102。還可將其它信息(例如節目指南信息115)提供給客戶端102。在各種實施例中,客戶端102的用戶提供指令以錄制即將播出節目、刪除存儲的節目及/或以其它方式改變轉發到主機116的內容105。在從客戶端102接收到此指令后,主機116即刻適當指導服務器104執行所述指令。其它實施例可提供其它功能或特征。例如,一些實施方案可提供內容105的穩健搜索。此搜索可按希望在從媒體服務器104獲得的信息以外還考慮節目指南信息115、關于點播節目規劃的信息112及/或其它信息。其它實施例可額外地或替代地提供改變媒體服務器104上的偏好或其它設定、在網頁瀏覽器或其它窗口中觀看媒體內容105及/或可按希望采取任何其它動作的能力。客戶端102可為能夠經由網絡110通信的任何裝置、組件、模塊、硬件、軟件應用程序及/或類似者。為此目的,可用任何種類的通用或專用硬件、軟件及/或固件實施許多不同類型的客戶端102。在一些實施例中,客戶端102可為常規個人計算機、便攜式計算機、工作臺及/或其它計算系統。在另一些實施例中,一些類型的客戶端102可包含個人數字助理、視頻游戲機、移動電話、網絡設備、網絡啟用的遠程控制件及/或可在網絡110上通信的任何其它裝置。在圖I中展示的實施例中,客戶端102執行與標準因特網、萬維網(WWW)及/或其它格式兼容的任何種類的常規瀏覽器應用程序103。針對大量不同計算平臺可用的常規網頁瀏覽器包含 INTERNET EXPLORER、MOZILLA FIREFOX、SAFARI、CHROME 及 OPERA 瀏覽器以及許多其它瀏覽器。此類瀏覽器103通常能夠顯示根據發布的協議(例如超文本標記語言(HTML)、可擴展標記語言(XML)及/或類似協議)格式化的活動文檔或其它文檔。許多瀏覽器103還能夠執行“插件”應用程序、小應用程序(applet)或類似程序。可根據ActiveX、JAVA及/或任何數目的其它格式來格式化此類插件。在一些實施例中,客戶端102包含媒體應用程序107。此應用程序107可為獨立媒體播放器,其與瀏覽器103分開執行,使得可不需要瀏覽器103。在其它實施例中,媒體應用程序107可實施為插件或按希望在瀏覽器103中運行的其它小應用程序。在一些實施例中,起初從連網的主機(例如主機116)獲得媒體應用程序107。在一些實施例中,可在按需要的基礎上檢索應用程序,或可將應用程序存儲在客戶端102供隨后執行。一些實施例可能不在客戶端102上提供媒體觀看;然而此類客戶端102可能能夠與主機116交互以選擇要錄制的節目、改變偏好、控制媒體服務器104的操作及/或采取與媒體服務器104相關的其它動作。網絡110為能夠在發送者(例如媒體服務器104)與接收者(例如媒體服務器104)之間發射消息的任何數字或其它通信網絡。在各種實施例中,網絡110包含支持任何數目的通信協議的任何數目的公共或私用數據連接、鏈路或網絡。網絡110可包含例如因特網或任何其它網絡。此類網絡可基于TCP/IP或其它常規協議,但其它實施例可按希望使用任何類型的替代或后繼協議。在各種實施例中,網絡110還可并入有無線及/或有線電話網絡,例如用于與移動電話通信的蜂窩式通信網絡、個人數字助理及/或類似者。網絡110的各種實施例還可并入有任何種類的無線或有線局域網絡,例如一個或一個以上IEEE 802. 3 及/或ffiEE 802. 11網絡。媒體服務器104為能夠接收、錄制、易地播放及/或以其它方式處理媒體內容105的在網絡110上通信的任何裝置或系統。在各種實施例中,媒體服務器104包含允許服務器104錄制接收的節目規劃供隨后觀看的個人或數字視頻記錄器(DVR)特征。DVR可為獨立裝置,或者可集成在能夠接收且解調節目規劃信號的任何種類的接收器(例如有線電視、直播衛星(DBS)或其它機頂盒(STB))中。媒體服務器104的其它實施例可包含能夠接收、存儲或以其它方式處理任何種類的基于流或文件的內容105的任何種類的獨立或混合媒體播放器、文件服務器及/或類似裝置。媒體服務器104的另一些實施例可按希望實施連網的游戲服務器或其它媒體服務。內容105為媒體服務器104可接入的任何類型的基于文件的節目規劃或其它內容。在各種實施例中,內容105表示從內部或外部電視接收器接收的存儲的節目規劃。內容105還可表示按希望從相機、網絡服務器及/或其它來源接收的節目規劃。內容可存儲在任何媒體中,包含存儲器中、硬盤上、連網的服務器上及/或任何其它數字媒體、光學或其它可用存儲媒體中。內容105可按希望以任何種類的經壓縮或未經壓縮格式存儲,且可按希望經編碼或代碼轉換供有效接收、存儲、檢索及播放。系統100的一些實施例可簡單地使用主機116提供對媒體服務器104的控制以錄制節目、刪除存儲內容105、改變設定或參數及/或執行任何其它希望的任務。然而,其它實施例可允許媒體內容105從服務器104到客戶端102的的流式傳輸或其它播放。為此目的,媒體服務器104的各種實施例可并入有易地播放功能性以支持經由網絡110(例如通過客戶端102)觀看內容105。在一些實施例中,媒體服務器104包含結合STB、接收器、DVR,媒體播放器或其它裝置工作的單獨易地播放裝置,以將來自住宅電視的觀看體驗轉移到經由網絡110接入的觀看顯示器。可在媒體服務器104的一些實施例中使用的易地播放裝置的實例可包含可購自美國加州福斯特(Foster)市的Sling Media的各種SLINGB0X產品,但在其它實施例中可使用其它產品或服務器104。許多不同類型的易地播放裝置一般能夠從外部來源(例如任何種類的DVR或STB、有線電視或衛星節目規劃來源、DVD播放器及/或類似者)接收媒體內容。在其它實施例中,易地播放特征被并入于提供內容接收或其它能力的同一裝置中。例如,服務器104可為還提供代碼轉換及易地播放特征的混合DVR及/或接收器。第2006/0095471號美國專利公開案中描述常規易地播放功能、特征、系統及結構的實例,但除此特定公開案中所描述的技術及結構之外可使用任何數目的其它技術及結構等效地應用本文中描述的特征。主機116為能夠與一個或一個以上客戶端102交互以將指令提供到一個或一個以上服務器104的任何服務器或其它網絡主機。在各種實施例中,主機116為節目指南服務器,所述節目指南服務器還允許節目指南信息115及/或關于可用點播節目規劃或類似者的信息112與關于內容105的信息的整合,下文將更徹底地加以描述。圖I展示可用于提供與任何數目的客戶端102及服務器104交互的引導服務器的主機116的一個實例。為此目的,可用基于任何處理器、架構及/或操作系統的服務器計算機系統或服務實施系統100中的每一主機116。將通常使用任何種類的常規處理硬件122、存儲器124及輸入/輸出特征125實施每一主機116。可使用專用或共享硬件服務器實施各種實施例;其它實施方案可利用作為“云計算”服務(例如AMAZON、GOOGLE、MICROSOFT、IBM、UBUNTU、SUN MICROSYSTEMS及/或任何數目的其它提供商提供的云計算服務的任何一者)的部分的虛擬服務器特征。雖然為了方便圖I展示單一主機116,但許多實際實施例可提供多個主機116的群集或其它集合以支持任何希望數目的同時連接。此群集還可并入有適當路由、負載平衡、接入及安全機構及或任何數目的其它特征。在各種實施例中,每一主機116為執行操作系統126 (例如任何版本的 LINUX、UNIX、SOLARIS、NETWARE、WINDOWS、0S/X、AIX 及 / 或類似者)的真實或虛擬計算機系統。各種UNIX/LINUX操作系統通常提供能夠執行引導服務器應用程序128的計算核心,及按希望的任何數目的守護程序(daemon)、過程、應用程序或其它實例模塊。例如,引導服務器應用程序128可作為守護程序在主機116上執行,而到分離客戶端102的連接作為使用操作系統126所提供的特征與服務器應用程序128通信的分離過程或實例而加以管理。當引導或以其它方式初始化主機116時通常啟始引導服務器應用程序128。在各種實施例中,應用程序128適當向任何適當負載平衡器或其它路由器注冊使得可適當分配與客戶端102的連接。接著應用程序128適當處理來自客戶端102的連接請求。在圖2中展示的實施例中,引導服務器應用程序128含有用于控制遠程定位服務器104及網頁服務器或其它呈現邏輯136的控制邏輯132,以用于以可方便呈現給用戶的基于網頁的格式或其它格式將信息提供到客戶端102。各種實施例還可按希望提供搜索引擎邏輯134 ;此搜索引擎可執行關于用遠程媒體服務器104存儲的內容105的信息以及任何節目指南信息115及/或按希望關于點播節目規劃的信息112的整合搜索。可從任何數據庫或主機116可取得的其它來源(包含在分離服務器或類似者上執行的任何數據庫)獲得此類信息112、115。控制模塊132含有響應于從客戶端102接收的請求而經由網絡110建立與一個或一個以上媒體服務器104的會話的任何適當編程邏輯。此類會話可用于從媒體服務器104檢索信息及/或按希望將指令提供到媒體服務器。如下文中描述,可通過已與待聯系的特定消息服務器114預建立連接的一個或一個以上消息服務器114啟始與媒體服務器104的會話。、
可用任何方式管理主機116與客戶端102之間的交互。在各種實施例中,客戶端 102使用常規網頁瀏覽器107與主機116交互,所述常規網頁瀏覽器107可從主機116處的常規網頁服務器模塊136接收信息。此類信息可提供作為動態或活動網頁內容的部分(例如,使用 ASP、JAVASCRIPT、Cold Fusion、PHP 及 / 或其它內容,或使用 JAVA、ACTIVEX 及 / 或其它插件)及/或為靜態內容(例如使用HTML、XML或類似結構)。在各種實施例中,呈現模塊136提供具有嵌入活動內容的常規網頁或類似文檔,其允許用戶使用常規圖形用戶接口(GUI)結構與節目指南或其它信息交互。從呈現模塊136提供的網頁還可提供媒體播放器應用程序107或可簡單地容納駐存在客戶端102上的媒體播放器應用程序107且與其交互。引導服務器應用程序128可按希望提供任何替代及/或額外功能及特征。一般來說,使用從任何編程語言(例如C、C++或類似者)的源代碼導出的常規編譯目標代碼來至少部分實施引導服務器應用程序128。其它實施例可利用解譯或其它抽象化的環境,例如可購自美國加州森尼維耳(Sunnyvale)市升陽電腦公司(Sun Microsystems)的JAVA環境或可購自美國華盛頓州雷蒙德市的微軟公司(Microsoft Corporation)的.NET環境。其它實施例可使用任何其它程序、編程語言、腳本語言、開發或執行環境及/或類似者實施引導服務器應用程序128的各種組件。此編程可以源代碼形式或目標代碼形式存儲在引導服務器應用程序128可接入的任何數字存儲媒體(例如存儲器124、大容量存儲裝置、可裝卸媒體或任何其它媒體)上。 如上文提及,歸因于網絡110中一個或一個以上防火墻或其它安全機構或任何數目的其它因素的存在,從網絡服務116或客戶端102到媒體服務器104直接連接并非總是方便。因此各種實施例提供各自能夠與一個或一個以上網絡服務器104維持預先存在的連接的任何數目的消息服務器114。使用常規計算機服務器硬件、軟件及/或服務(例如上文結合主機116所述的硬件或軟件特征的任何一者)實施每一消息服務器114。消息服務器114從一個或一個以上服務器104適當接收連接請求以用任何方式啟始與服務器104的持續連接。在各種實施例中,服務器104與消息接發服務器114在統一資源定位符(URL)或可在網絡110上輕易聯系的其它網絡地址處維持相對恒定連接。例如消息接發服務器114可能就是TCP服務器,當服務器104開啟、重新引導或在網絡110上以其它方式啟始活動時,自動接入所述TCP服務器。在此類情形中,服務器104聯系消息接發服務器114 (借助于適當路由或負載平衡特征),建立TCP或類似連接,然后等待進一步動作。可使用TCP協議部分的相對低帶寬“保持活動(keep alive) ”特征使此連接保持活動。 通過預先建立從服務器104到消息接發服務器114的連接,即使服務器受防火墻或其它安全機構保護,也可維持可用于將指令或請求發送到媒體服務器104的預先建立的連接。這是因為常規防火墻中使用的許多路由器在不允許傳入TCP(及其它)連接的同時將允許在受信任空間內起源的傳出TCP連接。在建立從服務器104到消息服務器114的TCP或其它連接之后,此預先存在連接可用于將指令發射到服務器104以建立與主機116的單獨會話。 可建立此第二會話作為不太可能被防火墻阻斷的另一傳出TCP (或其它協議)通信。就是說,消息服務器114可經由預先存在的信道發射指令,所述指令指示服務器104分別聯系主機116且建立在主機116與媒體服務器104之間的適當通信會話。此指令可任選地包含關于主機116或正在請求連接的其他方的信息,但此信息不需要存在于所有實施例中。當受指示如此進行時,服務器104適當建立與主機116的TCP或其它會話,所述TCP或會話可用于交換數據及指令或執行如下文中更徹底描述的其它任務。此外,在一些實施例中,從消息服務器114發送的消息可在相對立即基礎上提供給媒體服務器104。就是說,如果服務器116希望聯系特定媒體服務器104,那么服務器116 一直等到媒體服務器104輪詢服務器116,而是可經由網絡110實時或接近實時地提供消息。在此上下文中,“實時”指稱響應于刺激(例如用戶輸入、網絡請求或類似者)在刺激與動作之間無實質延遲的情況下出現的通信或其它動作。雖然“實時”通信通常在通常立即基礎上出現,但可能遭遇且考慮實際數據通信系統中固有的網絡及處理延遲及其它延遲。因此系統100允許主機116響應于從客戶端102接收的請求而建立與服務器104 的實時會話。通過將瀏覽器103或類似程序引導到URL或與主機116相關聯的其它地址而使客戶端102的用戶聯系主機116。在從客戶端102接收到請求后,主機116即刻經由消息服務器114適當聯系適當的媒體服務器104。在各種實施例中,消息服務器114經由預先建立的連接將消息發射到媒體服務器104,所述消息指導媒體服務器104聯系主機116以建立通信會話。在建立通信會話之后,主機116可獲得媒體服務器104可取得的關于節目規劃 105的信息,且按照希望將任何指令提供到媒體服務器104。在各種實施例中,主機116能夠使用網頁結構或類似者與客戶端102交互以提供內容搜索、服務器104的遠程控制、服務器104處存儲的節目規劃觀看及/或希望的任何其它特征。現轉到圖2,展示使用主機116經由網絡110建立在客戶端102與媒體服務器104 之間的控制會話的示范性過程200。一般來說,過程200包括響應于從客戶端102接收的請求204而建立在主機106與媒體服務器104之間的會話212。會話212可用于從媒體服務器104獲得信息213,提供控制媒體服務器104的操作的指令216及/或用于任何其它用途。主機116還按希望與客戶端102交互以提供信息、接收指令及/或用于任何其它用途。另外實施例還可適當提供從媒體服務器104到客戶端102的媒體內容的流218或其它共享。通常,在啟動或任何其它初始化狀態,媒體服務器104首先聯系消息服務器114以建立預先存在的連接202。如上文提及,媒體服務器104可響應于先前連接斷線或復位、響應于媒體服務器104的硬重新引導或軟重新引導及/或在任何其它適當時間在啟動時初始化與消息服務器114的連接202。接著,當媒體服務器104保持連接到網絡110時,連接202 持續以允許隨后的實時通信。如上文提及,連接202在規避可能阻止主機116與媒體服務器104之間的常規通信的路由器或其它安全機構時可能有用,媒體服務器104可定位于住宅、辦公室、校園或其它網絡上。客戶端102以任何方式提供用于交互會話的啟始請求204。在各種實施例中,客戶端102的用戶激活網頁瀏覽器應用程序103、獨立媒體應用程序及/或類似者且提供已知 URL或與主機106相關聯的其它地址。接著客戶端應用程序格式化可跨過網絡110傳送的超文本傳送協議(HTTP)或其它查詢以供主機116接收及處理。其它實施例可使用非HTTP 或其它常規網頁格式的其它協議或格式。在一些實施例中,請求204(及/或 在客戶端102 與主機116之間的其它通信)含有可用于鑒定用戶及/或確定待聯系的特定媒體服務器 104的識別符。在一些實施例中,此識別符可直接識別媒體服務器104,但其它實施例可改為基于用戶識別符/密碼組合、數字簽名或其它憑證識別用戶或用戶賬戶。可按希望選擇與識別的用戶或用戶賬戶相關聯的媒體服務器104以供進一步活動。為此目的,在一些實施例中,主機116可提供任何種類的客戶端102或其用戶的鑒定,或用于選擇特定媒體服務器104以供進一步活動的任何其它機構。可適當使用主機116與客戶端102之間的任何數目的消息或其它交互提供此鑒定及選擇。主機116可按希望進一步與安全數據庫、鑒定服務器及/或任何其它資源交互以識別且鑒定用戶。主機116處理接收到的請求204以建立與遠程定位的媒體服務器104的會話212。 在圖2中展示的示范性過程200中,主機116適當指導消息服務器114使用預先存在的連接202聯系適當媒體服務器104。為此目的,主機116將請求206提供到消息服務器114或其相關聯的負載平衡器,所述負載平衡器將請求206適當轉發到服務器114供進一步處理。 接著消息服務器114經由預先存在的連接202將請求208提供到媒體服務器104,請求208 指導媒體服務器104對請求主機116作出響應。媒體服務器104適當對請求主機116作出響應210,且接著媒體服務器104及主機116經由網絡110彼此建立會話212。會話212可例如為常規TCP會話,所述常規TCP會話允許以任何方便的方式進行雙向數據傳送。其它實施例可提供不同類型的會話212,包含根據任何協議或其它格式的任何種類的狀態或非狀態雙向互換。在各種實施例中,會話212是響應于請求208而建立的且在客戶端102持續提供對媒體服務器104的控制指令的整個時期持續的持續或半持續雙向互換。為此目的, 各種實施例可允許在主機116與服務器104之間使用 單一共同會話212交換多個命令、響應及/或其它消息。在主機116與媒體服務器104之間建立會話212之后,可以任何方式交換信息及命令。媒體服務器104可將關于內容105的信息213提供到主機116,例如以允許對所傳送的信息進行搜索或其它處理。在各種實施例中,主機116請求存儲在媒體服務器104處的媒體內容105的列表以及關于可能可取得的存儲內容105的任何元數據或其它描述性信息 (例如廣播時間、節目指南信息、當前偏好或其它設定及/或類似者)。接著此信息213可按希望在主機116處被處理及/或中繼到客戶端102。主機106還與客戶端102交互以適當地提供相關信息215及/或從用戶獲得指令 216。為此目的,可在主機116處過濾或以其它方式處理信息213以供作為信息215遞送及由客戶端102最終顯示。在各種實施例中,在常規網頁會話的上下文中實施客戶端102與主機116之間的交互214,所述常規網頁會話允許從呈現模塊136向瀏覽器103顯示有源及 /或無源網頁內容;其它實施例可按希望使用不同結構或技術。由主機106執行的特定處理可因實施例而異。在一些實施方案中,搜索引擎134 或其它模塊能夠搜索及/或過濾從媒體服務器104接收的信息213。各種實施例可進一步獲得且處理節目指南信息115、關于點播節目規劃的信息112及/或適當的任何其它信息以提供混合搜索特征。例如,一些實施例可允許用戶搜索特定節目以獲得識別存儲在媒體服務器上的內容105中、即將播出廣播中及/或點播內容中的特定節目的組合搜索結果。因此,通過提供考慮不同類型數據(包含從用戶特有的媒體服務器104獲得的信息213)的組合搜索工具可在很大程度上增強搜索的靈活性及能力。其它實施例將關于內容105的信息213的部分或全部提供到客戶端102,以允許客戶端102執行任何希望的動作。在各種實施例中,客戶端102將指令216提供到主機116, 所述指令216識別待由遠程定位媒體服務器104執行的所希望的動作。此類動作可包含例如錄制特定節目、刪除特定節目、更新設定或偏好、控制現場直播或預先錄制的節目規劃的播放及/或類似者。各種實施例還可促進在客戶端102上流式傳輸或用其它方式觀看用媒體服務器104存儲的內容105。在此類實施例中,主機116從媒體服務器104適當接收媒體流218且將流218中繼到客戶端102。其它實施例可以任何其它方式提供流。可在主機116處經由交互214以任何方式接收指令216。接著從主機116經由會話212或類似者將命令217提供到遠程服務器104,以控制媒體服務器104的操作及/或媒體處理功能。下文中關于接口 300、400及500描述利用命令217的客戶端102、主機116及媒體服務器104之間的各種交互。一般來說,可用系統100內的任何種類的硬件、軟件及/ 或固件邏輯執行結合過程200展示的各種任務。在各種實施例中,響應于存儲在存儲器中、 或在磁盤驅動器及/或與展示的主機116、消息服務器114、客戶端102及/或媒體服務器 104相關聯的其它存儲裝置上的軟件或固件指令而執行過程200的各種步驟。可由圖2中指示的主機116、消息服務器114、媒體服務器104、客戶端102及/或類似者中的任何處理器及/或其它處理特征執行此類指令。于是,用于實施圖2中展示的各種功能中的每一者的特定裝置可為執行任何格式的常規軟件邏輯的任何種類的處理硬件,所述常規軟件邏輯實施本文中描述的各種算法及技術。可使用與網絡110兼容的任何常規或專有格式(例如任何種類的TCP/IP兼容格式或協議)來格式化圖2中展示的消息中的每一者,但在其它實施例中可使用其它協議。圖3到5展示說明可在一些實施例中提供的各種特征的示范性接口 300、400及 500。然而,實施的實際特征可因實施例而異,且用于實施這些特征的圖形或其它接口元件可類似地明顯相異。于是,接口 300、400及500的圖形及空間布局純粹為示范性。接口 300、 400、500中的每一者可以任何方式產生。在各種實施例中,由與客戶端102相關聯的適當顯示器上的瀏覽器103或另一應用程序來呈現接口 300、400及500的部分或 全部。此類接口可包含由呈現模塊135或類似者提供的有源及/或靜態內容。 圖3展示示范性接口 300,其可用于將指南信息115提供到客戶端102且允許基于指南信息115與遠程媒體服務器104交互。如圖3中展示,示范性接口 300包含媒體播放器302、指南窗口 308、顯示關于當前觀看節目的信息的窗口 304及/或希望的任何其它接口特征。指南窗口 308提供關于可從一個或一個以上來源取得的節目規劃的信息。此信息可經由與主機116的交互214獲得,且可包含關于即將播出廣播節目的節目指南信息115、 關于用媒體服務器104存儲的內容105的信息、關于點播節目規劃的信息112及希望的任何其它信息。例如圖3展示可由與媒體服務器104相關聯的STB或其它接收器接收的節目規劃的節目指南信息115。在各種實施例中,觀看者可簡單選擇當前廣播節目以指導遠程服務器104調諧到特定節目且將媒體流218中的節目提供到客戶端102。在其它實施例中,點擊或以其它方式選擇窗口 308中的節目可產生關于正在被顯示(例如在窗口 304中)的節目的額外信息或希望的任何其它動作。為了觀看者方便,圖3中展示的示范性實施例在被認為是首播(相對于回放)的節目中的每一者上提供“新”標簽。然而,其它實施例可能不提供此特征,或者可適當響應于觀看者偏好激活/去激活標簽。雖然圖3中說明的窗口 308的特定視圖展示對應于廣播來源的節目指南信息,但窗口 308的其它視圖可展示關于媒體服務器104可取得的存儲節目規劃105的信息、可從網站或其它來源取得的點播內容112及/或來自任何其它來源的其它內容。指南窗口 308 可按希望等效顯示可取得節目規劃的搜索結果或任何其它列表。可使用例如按鈕314、316、 318或類似者選擇不同指南視圖。還可按希望提供一個或一個以上滾動按鈕、滑塊或其它導航特征312以允許觀看額外信息。在一些實施方案中,可以任何方式選擇及/或過濾窗口 308中呈現的信息。例如過濾特征322可允許觀看者設定將阻止在窗口 308中顯示及/或通過媒體播放器302觀看特定節目規劃的內容過濾器。過濾可在建立例如家長控制或基于內容分級、其它指南數據或類似者的其它過濾器時有用。過濾器可應用以阻斷符合某一準則(例如在特定時間期間的成人或暴力內容)的任何節目規劃。當然可應用其它過濾器使得僅顯示或觀看符合某一準則(例如在特定時間期間僅限兒童節目規劃)的節目規劃。可使用任何種類的方便接口建立及/或修改此類過濾器。另外,過濾322可不限于在客戶端102上觀看節目;相反,可將使用客戶端102建立的任何過濾器經由會話212提供到媒體服務器104且按希望跨過其它顯示器應用。接口 300還可用于設定或改變與客戶端102或媒體服務器104相關聯的任何設定或其它偏好320。此類設定可允許觀看者選擇例如對特定節目規劃類型、體育、網絡、頻道、 男演員/女演員或其它觀看選擇的偏好。此信息可用于優化(或至少改進)搜 索結果或用于任何其它用途。可使用任何接口特征320或類似者設定偏好。如上文提及,可通過搜索特征324或類似者提供搜索。在此類實施例中,觀看者輸入關鍵詞、標題或其它搜索項。客戶端102經由交互214將搜索項轉發到主機116,且主機 116處理搜索(例如,使用搜索引擎134)以識別符合搜索準則的可取得的節目規劃。在各種實施例中,主機116能夠搜索來自多個來源的節目規劃使得可將完整結果提供到客戶端 102。例如,如果觀看者搜索特定節目,那么主機116可能夠識別存儲內容105中、將播送的廣播(如節目指南信息115所識別)中、點播節目規劃中及/或任何其它可取得來源中的節目的一集或一集以上。這些結果可從主機116傳回到客戶端102以供在窗口 308中或其它地方顯示以允許觀看者采取任何希望的動作。例如,如果在未來廣播中識別出節目,那么觀看者可選擇指導媒體服務器104錄制即將播出放映。如果可在來自媒體服務器104的內容105及/或任何其它點播來源中取得節目,那么觀看者可選擇節目供立即觀看。這些結果可以任何方式相互組合。例如,搜索結果可指示將節目的某些集存儲在媒體服務器104 上;其它集是可從供免費或基于付費觀看的點播來源取得;及/或媒體服務器104將可在即將播出廣播中取得其它集。其它實施例可按希望提供不同結果或特征。媒體播放器窗口 302可對應于上述媒體播放器107。在此類實施例中,媒體播放器107基于所選內容再現媒體流且將媒體流呈現給觀看者。如果此類節目當前可從媒體服務器104或另一來源取得,那么可從窗口 308中列出的節目選擇內容。如上文提及,各種實施例允許觀看者從指南窗口 308選擇節目。接著客戶端102經由會話212將指令216提供到主機116以適當指導媒體服務器104開始流式傳輸所選節目規劃或采取任何其它適當動作。媒體播放器302還可提供導航控制303以倒回、停止、播放、快進或以其它方式修改媒體流218的回放。相對于導航控制303接收的用戶命令可按希望類似地經由主機116及會話212中繼到媒體服務器104。如圖3中所展示,窗口 304呈現關于當前選擇內容的信息。如果所選節目可立即取得,那么當前選擇的節目可對應于媒體播放器窗口 302中當前觀看的內容。或者,當前選擇的節目可對應于在節目指南、點播節目或窗口 308或其它地方中任何其它內容中展示的即將播出節目。在圖3中展示的實例中,當前選擇的節目當前在媒體服務器104處接收且流式傳輸到客戶端102供立即觀看。如果觀看者希望錄制節目,那么提供將允許指令216 發送到主機116的錄制按鈕306,所述錄制按鈕306又將指導媒體服務器104錄制節目。類似地,可通過簡單選擇指南窗口 308中的即將播出節目、搜索結果或類似者而錄制即將播出節目,且接著激活錄制按鈕306或接口 300中的其它錄制特征。因為可跨過當前會話212 實時將此類指示217提供給媒體服務器104,所以在一些實施例中可在相對立即基礎上啟始錄制。圖4展示示范性接口 400,其可在一些實施方案中使用以管理用媒體服務器104存儲的內容105。如圖4中說明,接口 400包含存儲在媒體服務器104上的節目規劃內容105 的列表408以及信息窗口 404,所述信息窗口 404提供磁盤、固態驅動器及/或與媒體服務器104相關聯的其它數據存儲媒體的當前狀態。在圖4中展示的特定實例中,按節目標題來分組節目,也指示可取得的集數414的數目。其它實施例可按任何希望的方式組織且呈現節目規劃列表408。按照任何數目的其它額外特征或替代特征的做法,還可提供上述的搜索特征324。接口 400允許觀看者管理DVR內容或來自客戶端102的內容105的其它儲存庫。 可從服務器104例如通過選擇接口 400中的“播放”特征412來播放特定節目。選擇此特征將使得指令216被發送到主機116,主機116又將經由會話212發送適當消息217以指導遠程媒體服務器104開始流式傳輸所選節目。還可使用“清除”特征410產生媒體217,所述“清除”特征410將產生指令216,其將被提供到主機116,主機116又將指導媒體服務器 104清除指示的節目。在一些實施例中,接著媒體服務器104可提供經更新的信息213使得列表408及信息404保持準確。在一些實施例中,可使用另外其它指令216來控制媒體服務器104的操作。移動電話、計算機或網絡啟用的遠程控制件例如可與主機116交互以選擇節目規劃、播放、暫停、錄制、前進/倒回或執行希望的其它控制功能。在任何數目的替代實施例中可提供其它特征及功能。圖5展示示范性接口 500,其允許用戶從沖突錄制中進行選擇。在各種實施例中, 媒體服務器104可能夠錄制僅僅有限數目的同時節目。例如,許多常規STB可具有調諧器能力以接收且且錄制兩個同時節目,但無法接收且錄制第三個。因此,如果接收到錄制第三節目的指令,那么可請求觀看者選擇將不錄制哪個節目。接口 500展示可提供將允許觀看者通過激活對應于待跳過的節目的適當特征502、504、506而選擇將不錄制哪個節目的窗口的一個實例。可以任何方式發生錄制沖突的識別。在各種實施例中,媒體服務器104提供作為信息213的部分的當前計劃錄制的列表。可響應于主機116的請求提供或可按希望自動提供此信息。在此類實施例中,主機116識別何時在來自客戶端102的指令216中請求沖突錄制,且作為響應提供接口 500或類似者。在其它實施例中,響應于來自媒體服務器 104的消息產生接口 500,指示存在錄制沖突且提供供觀看者解決所 述沖突的足夠信息。在任何數目的替代實施例中可闡明其它過程及技術。因此圖I到5說明系統100的至少一個實例,所述系統100可用于經由網絡110 遠程控制DVR、STB或其它接收器、易地播放裝置、文件服務器或其它媒體服務器104。在一些實施例中,使用持續連接聯系媒體服務器104,媒體服務器104與消息接發服務器114事先建立所述持續連接以與主機116建立網絡會話212 ;因為此會話允許主機116與服務器 104之間的實時(或接近實時)交互,因此可從主機116提供待在媒體服務器104上執行的任何數目的命令217。可使用例如網頁瀏覽器103或類似者中實施的常規有源或靜態接口技術,響應于客戶端102處的用戶輸入而提供此類命令217。各種實施例可使用命令217 指導存儲在媒體服務器104處的節目規劃內容105的錄制、清除、播放或其它處理。其它實施例可使用命令217來更新設定或偏好、控制媒體服務器104的操作及/或采取希望的任何其它動作。
雖然在前述詳細描述中已呈現若干示范性實施例,但應了解存在大量替代但等效的變動,且無論如何并不希望本文中呈現的實例限制本發明的范疇、應用性或配置。相反, 在不脫離權利要求書及其等法律等效物的范疇的情況下可對描述的元件的功能及布置進行各種改變。本文中使用術語“示范性”來表示可具有任何數目的替代方案的一個實例、例子或說明。本文中描述為“示范性”的任何實施方案不必要理解 為比其它實施方案優選或有利。
權利要求
1.一種可由經由網絡與客戶端及媒體服務器通信的主機執行的方法,所述媒體服務器經配置以處理媒體內容,所述方法包括 在所述主機處經由所述網絡從所述客戶端接收第一消息; 響應于所述第一消息,經由所述網絡在所述主機與所述媒體服務器之間建立會話; 在所述主機處經由所述會話從所述媒體服務器接收關于在所述媒體服務器處處理的所述媒體內容的信息; 經由所述網絡將關于在所述媒體服務器處處理的所述媒體內容的所述信息從所述主機提供到所述客戶端; 在所述主機處從所述客戶端接收指令以控制所述媒體服務器;及 經由所述會話指導所述媒體服務器執行所述指令。
2.根據權利要求I所述的方法,其中所述媒體服務器包括數字視頻記錄器,且其中所述指令指導所述數字視頻記錄器錄制節目。
3.根據權利要求I所述的方法,其中所述媒體服務器包括數字視頻記錄器,且其中所述指令指導所述數字視頻記錄器從所述數字視頻記錄器刪除節目。
4.根據權利要求I所述的方法,其進一步包括經由所述網絡將節目指南信息從所述主機提供到所述客戶端,其中所述節目指南信息描述所述媒體服務器可取得的節目規劃內容。
5.根據權利要求4所述的方法,其中所述媒體服務器包括數字視頻記錄器,且其中改變所述媒體內容的所述指令包括使用數字視頻記錄器錄制所述節目指南信息中識別的節目的指令。
6.根據權利要求I所述的方法,其中所述建立包括將請求發射到具有經由所述網絡與所述媒體服務器建立的預定連接的消息服務器,且其中響應于由所述媒體服務器提供的消息而建立所述預定連接。
7.根據權利要求I所述的方法,其中所述會話是實時通信會話。
8.根據權利要求I所述的方法,其中所述提供包括形成具有所述信息的網頁及將所述網頁發射到在所述客戶端上執行的應用程序。
9.根據權利要求7所述的方法,其中所述網頁經形成以容納媒體播放器應用程序。
10.根據權利要求8所述的方法,其進一步包括指導所述媒體服務器將存儲在所述媒體服務器上的所述媒體內容的至少一些提供到所述媒體播放器應用程序。
11.一種系統,其經由網絡與客戶端及媒體服務器通信,所述媒體服務器經配置以處理媒體內容,所述系統包括 消息服務器,其經配置以使用預先存在的連接經由所述網絡與所述媒體服務器通信;及 引導服務器,其經配置以接收對來自所述客戶端經由所述網絡到所述媒體服務器的連接的請求,指導所述消息服務器響應于所述請求經由所述預先存在的連接而聯系所述媒體服務器,經由所述網絡建立與所述媒體服務器的會話,經由所述會話接收關于所述媒體內容的信息,將關于所述媒體內容的信息提供到所述客戶端,從所述客戶端接收指令來控制所述媒體服務器,且響應于從所述客戶端接收的所述指令經由所述會話指導所述媒體服務器執行所述指令。
12.根據權利要求11所述的系統,其中所述會話是實時通信會話。
13.根據權利要求11所述的系統,其中所述引導服務器包括網頁服務器,其經配置以提供關于以網頁兼容格式存儲在所述媒體服務器處的所述媒體內容的所述信息。
14.根據權利要求11所述的系統,其進一步包括包括節目指南信息的第一數據庫,其中所述引導服務器經配置以從所述第一數據庫接收所述節目指南信息且經由所述網絡將所述節目指南信息提供到所述客戶端,且其中所述指令包括錄制提供到所述客戶端的所述節目指南信息中識別的節目的指令。
15.根據權利要求14所述的系統,其中所述引導服務器經進一步配置以從所述客戶端接收指令以搜索特定節目,在關于存儲在所述媒體服務器處的所述媒體內容的所述信息及所述節目指南信息兩者中搜索所述特定節目,且將組合的搜索結果提供到所述客戶端。
16.根據權利要求14所述的系統,其中所述媒體服務器是易地播放裝置,其中存儲在所述媒體服務器處的所述內容包括由用戶錄制的節目,且其中所述指令是錄制響應于由所述用戶提供到所述客戶端的輸入而提供的由所述用戶錄制的節目中的一者的指令。
17.根據權利要求16所述的系統,其中所述媒體服務器經進一步配置以在建立與所述媒體服務器的所述會話之前鑒定所述用戶。
18.一種方法,其可由主機執行,所述主機經由網絡與客戶端及與存儲有媒體內容的媒體記錄器通信,所述方法包括 在所述主機處經由所述網絡從所述客戶端接收第一消息,其中所述第一消息識別所述媒體記錄器; 響應于所述第一消息,將第二消息發射到消息服務器,所述消息服務器具有經由所述網絡與所述識別出的媒體記錄器的預先存在的連接; 響應于從所述媒體記錄器接收的第三消息,經由所述網絡在所述媒體記錄器與所述主機之間建立會話; 經由所述網絡將節目指南信息從所述主機提供到所述客戶端; 在所述主機處從所述客戶端接收指令以錄制所述節目指南信息中識別的節目;及 響應于在所述主機處接收到所述指令,經由所述會話指導所述媒體記錄器錄制所述識別的節目。
19.根據權利要求18所述的方法,其中所述會話是實時通信會話,且其中所述方法包括經由所述實時通信會話從所述媒體記錄器接收當前計劃的錄制的列表。
20.根據權利要求19所述的方法,其進一步包括識別從所述客戶端接收的所述指令與當前計劃的錄制的所述列表之間的沖突,且如果存在所述沖突,則從所述客戶端接收解決所述沖突的第二指令且根據所述第二指令經由所述實時通信會話指導所述媒體記錄器解決所述沖突。
全文摘要
本發明描述系統及方法,所述系統及方法用于遠程控制個人或數字視頻記錄器PVR/DVR、機頂盒STB、易地播放裝置或任何其它媒體服務器。響應于從客戶端接收的連接請求在服務器主機與所述媒體服務器之間建立通信會話。經由所述會話接收關于在所述媒體服務器處處理的內容的信息且將其提供到所述客戶端。響應于從所述客戶端接收的隨后指令,通過經由所述通信會話將指示從所述主機提供到所述媒體服務器,可控制所述媒體服務器或可采取其它動作。可按希望提供額外特征或替代特征。
文檔編號H04L29/06GK102714659SQ201080062065
公開日2012年10月3日 申請日期2010年12月16日 優先權日2009年12月23日
發明者彼得馬克·亨尼西, 約翰·保羅, 邁爾斯·卡格尼 申請人:斯靈媒體公司