器94處顯示。
[0062]像上文,首先考慮用于發起無線顯示會話的請求涉及對首先通過網絡接口 120流式傳輸到源設備100并且在網絡流客戶端98的指引下解碼的內容的傳輸和顯示的情況。為了在源設備100中進行本地顯示,網絡流客戶端98可以從網絡接口 120接收經解析的流內容,并且在經解析的流118處進行處理。然后,經解析的流可以由解碼器116來解碼并且由渲染器114移交給顯示處理器86。然后,顯示處理器86可以獲得經解碼并且經渲染的內容,并且產生像素用于存儲在幀緩沖器74中。
[0063]如果會話控制器102確定宿設備不能夠對由網絡流客戶端98接收的壓縮內容進行解碼,則會話控制器102可以指示無線顯示控制器104、RTSP服務器92以及編碼器128對幀緩沖器74的內容進行編碼和發送(S卩,對壓縮內容進行轉碼)。然而,如果會話控制器102確定宿設備能夠對通過網絡流客戶端98接收的內容進行解碼,而不是使用編碼器128來對幀緩沖器74的內容進行重新編碼,則會話控制器102可以指示無線顯示控制器104和RTSP服務器92直接地將在網絡接口 120處接收的壓縮內容流式傳輸到宿設備。也就是說,可以在不解碼的情況下,將在網絡接口 120處接收的壓縮內容指向RTP封裝單元88。如圖5中示出的,將經解析的流118指向RTP封裝單元88。再次地,這可以被稱為“解析分組敲出”模式。在其它例子中,可以在不首先解析的情況下,將在網絡接口 120處接收的壓縮內容指向RTP封裝單元88。
[0064]像上文,會話控制器102還可以被配置為針對可以改變將內容路由到宿設備的方式的觸發來持續地監控無線顯示會話。也就是說,會話控制器102可以監控網絡流客戶端98和/或無線顯示控制器104的狀態和/或動作。如果發生狀態改變或某些動作,則會話控制器102可以指引源設備100返回到幀緩沖器(FB)模式,因此編碼器128對幀緩沖器74的內容進行編碼,用于發送給宿設備。例如,如果用戶停止回放通過網絡流客戶端98接收的壓縮內容,并且替代地想要顯示其它內容(例如,未壓縮內容,或由宿設備不可解碼的內容),會話控制器102可以檢測這樣的動作并且指示無線顯示控制器104和RTSP服務器102發送由編碼器128編碼的幀緩沖器內容。
[0065]用于啟動/停止無線顯示會話中的轉碼過程的觸發器可以散布在源設備中的多個模塊之中。這樣的觸發器可以包括:對視頻/音頻解碼器的初始化的檢測、對壓縮文件的加載、加載或解析器模塊、對顯示驅動器的加載和或對顯示處理器的使用。源設備可以使用單個觸發器和/或多個觸發器的組合。
[0066]圖6是示出了被配置為實現本公開內容的技術的源設備的例子的框圖。在圖6的例子中,論述了用于將本公開內容的技術擴展到具有視頻捕獲設備(例如,攝像機)的功能的系統。如圖6中示出的,源設備100還可以包括被配置為控制對視頻捕獲設備的操作的攝像機應用150,所述視頻捕獲設備可以包括照相機傳感器156、視頻處理引擎(VPE) 154以及文件存儲152。照相機傳感器156可以是能夠捕獲光用于產生視頻的任何類型的照相機傳感器。VPE 154是轉換來自照相機傳感器156的捕獲的信號并且創建未壓縮的視頻流的處理器。
[0067]在使用攝像機的當前無線顯示技術中,如果用戶想要使用攝像機,用戶必須停止無線顯示會話。如果在源設備處只存在一個編碼器,則用戶不能夠向遠程顯示器發送由攝像機捕獲的直播視頻流。同樣地,要么用戶必須停止該無線顯示會話,要么在源設備中必須包括多個編碼器。
[0068]為了處理該缺點,本公開內容提出了一種技術,由此會話控制器102與攝像機應用150配合。如果用戶利用攝像機應用100開始視頻錄制,則會話控制器102將指示ff1-Disp控制器104停止對來自幀緩沖器74的內容進行編碼。替代地,編碼器128將被分配用于進行攝像機處理。以這種方式,捕獲的視頻將獲得編碼并且被存儲到文件存儲152中。然而,W1-Disp控制器104(或類似模塊)可以使編碼器128的輸出流出(tap)并且將其發送給遠程顯示器(即,宿設備)。在一個例子中,會話控制器102可以被配置為控制攝像機應用150來選擇宿設備也支持的編碼格式(例如,H.264等)。本地顯示路徑可以采用正常過程。
[0069]這種方式有助于降低針對在源設備處需要的硬件和/或軟件編解碼器的數量的需求、避免在用戶調用視頻捕獲(例如,攝像機)應用的情況下停止無線顯示會話的有力需求,并且節省了包括電池壽命在內的處理資源。
[0070]圖7是描繪了本公開內容的示例性方法的流程圖。圖7的技術可以由源設備的一個或多個硬件和/或軟件單元(包括源設備100的會話控制器102)來執行。
[0071]在本公開內容的一個例子中,源設備100可以被配置為確定宿設備的解碼能力(700),以及接收對在無線顯示會話中在宿設備處顯示壓縮內容的請求(702)。在宿設備的解碼能力允許對壓縮內容進行解碼的情況下(704),源設備100還被配置為將壓縮內容從源設備發送給宿設備(706),由此避免了在源設備中對壓縮內容進行轉碼。也就是說,在宿設備的解碼能力允許對壓縮內容進行解碼的情況下,如果先前正發生針對無線顯示會話的轉碼,則源設備100將被配置為停止源設備處的轉碼過程,用于將壓縮內容發送給宿設備。
[0072] 在一些例子中,源設備100還可以被配置為本地地回放壓縮內容。在該情況下,源設備100還可以被配置為在源設備處對壓縮內容進行解碼以創建經解碼的內容,將該經解碼的內容存儲在源設備處,以及與被發送給宿設備的壓縮內容基本同時地在源設備處顯示該經解碼的內容。
[0073] 在宿設備的解碼能力不允許對壓縮內容進行解碼的情況下(704),源設備100還可以被配置為以由宿設備可解碼的格式對經解碼的內容進行編碼以創建經轉碼的內容(708),以及將該經轉碼的內容從源設備發送給宿設備(710)。
[0074]圖8是描繪本公開內容的另一個示例性方法的流程圖。再次地,圖8的技術可以由源設備的一個或多個硬件和/或軟件單元(包括源設備1〇〇的會話控制器102)來執行。
[0075] 在一個例子中,源設備100可以被配置為監控無線顯示會話(800),以及檢測關于該無線顯示會話的觸發事件(802)。在一些例子中,源設備100可以被配置為響應于該觸發事件來停止源設備處的轉碼過程,用于將內容發送給宿設備(804)。例如,如果要被顯示的壓縮內容是由宿設備可解碼的。在其它例子中,源設備100可以被配置為響應于觸發事件來在源設備處開始轉碼過程,用于將內容發送給宿設備(804)。例如,如果要被顯示的壓縮內容是由宿設備不可解碼的。
[0076] 在一些例子中,監控無線顯示會話包括下列各項中的一項或多項:監控本地回放狀態、監控視頻解碼器狀態、監控宿設備的解碼能力、監控無線顯示控制器狀態、以及監控網絡流客戶端狀態。觸發事件可以包括下列各項中的一項或多項:視頻/音頻解碼器初始化、對壓縮文件的加載、加載或解析器模塊、對顯示驅動器的加載、以及對顯示處理器的使用。
[0077] 在一個或多個例子中,所描述的功能可以用硬件、軟件、固件、或其任何組合來實現。如果用軟件來實現,則該功能可以被存儲在計算機可讀介質上或者作為計算機可讀介質上的一個或多個指令或代碼來傳輸。計算機可讀介質可以包括計算機數據存儲介質或通信介質,該通信介質包括促進計算機程序從一處傳送到另一處的任何介質。在一些例子中,計算機可讀介質可以包括非暫時性計算機可讀介質。數據存儲介質可以是可以由一個或多個計算機或一個或多個處理器存取以取回用于實現本公開內容中描述的技術的指令、代碼和/或數據結構的任何可用介質。
[0078] 通過舉例而非限制的方式,這樣的計算機可讀介質可以包括非暫時性介質,諸如,RAM、ROM、EEPROM、CD-ROM或其它光盤存儲、磁盤存儲、或其它磁存儲設備、閃存,或可以被用來攜帶或存儲具有指令或數據結構形式的期望的程序代碼并且可以由計算機存取的任何其它介質。此外,將任何連接恰當地稱為計算機可讀介質。如本文中所使用的,磁盤和光盤包括壓縮光盤(CD)、激光光盤、光盤、數字多功能光盤(DVD)、軟盤以及藍光光盤,其中磁盤通常磁性地復制數據,而光盤則利用激光來光學地復制數據。以上的組合也應當被包括在計算機可讀介質的范圍內。
[0079] 代碼可以由一個或多個處理器來執行,諸如,一個或多個數字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現場可編程門陣列(FPGA),或其它等效的集成的或分立的邏輯電路。因此,如本文所使用的,術語“處理器”可以指代前述的結構或適用于實現本文所描述的技術的任何其它結構中的任何結構。此外,在一些方面中,本文所描述的功能可以被提供在被配置用于編碼和解碼的專用硬件和/或軟件模塊內,或者被合并到組合的編解碼器中。此外,本技術可以被完全用一個或多個電路或邏輯元件來實現。
[0080]本公開內容的技術可以用各種各樣的設備或裝置來實現,包括無線手持機、集成電路(1C)或1C集(例如,芯片集)。在本公開內容中描述各個部件、模塊或單元來強調被配置為執行所公開的技術的設備的功能性方面,而不必然地需要由不同的硬件單元來實現。更確切地,如上文所描述的,各個單元可以被組合到編解碼器硬件單元中或由互操作的硬件單元的集合來提供,包括如上文所描述的一個或多個處理器,連同適當的軟件和/或固件。
[0081]已經描述了本發明的各個實施例。這些以及其它實施例在所附權利要求書的范圍內。
【主權項】
1.一種用于壓縮內容的無線顯示的方法,所述方法包括: 由源設備確定宿設備的解碼能力;由所述源設備接收對在無線顯示會話中在所述宿設備處顯示壓縮內容的請求;以及在所述宿設備的所述解碼能力允許對所述壓縮內容進行解碼的情況下,將所述壓縮內容從所述源設備發送給所述宿設備,由此避免了在所