br>[0042]以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制。
[0043]對(duì)于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細(xì)討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為說明書的一部分。
[0044]在這里示出和討論的所有例子中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實(shí)施例的其它例子可以具有不同的值。
[0045]應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步討論。
[0046]〈硬件配置〉
[0047]圖1是示出可以實(shí)現(xiàn)本發(fā)明的實(shí)施例的智能電視1000的硬件配置的框圖。
[0048]如圖1所示,智能電視1000典型地包括經(jīng)由系統(tǒng)總線1111連接的主處理器1108、用于接收電視信號(hào)的高頻頭1101、解調(diào)器1102、非易失性存儲(chǔ)器1109、解復(fù)用器1103、解擾器1104、易失性存儲(chǔ)器1105、解碼器1106、音視頻接口 1107和其他外圍接口 1110、在電視與機(jī)頂盒集成的智能電視中還包括顯示器1200。
[0049]非易失性存儲(chǔ)器1109中駐留有智能操作系統(tǒng)、應(yīng)用程序、其它程序模塊和某些程序數(shù)據(jù)。
[0050]圖1所示的智能電視終端僅僅是說明性的并且決不意味著對(duì)本發(fā)明、其應(yīng)用或使用的任何限制。
[0051 ]〈實(shí)施例〉
[0052]根據(jù)本發(fā)明的實(shí)施例,如圖2所示,以智能電視終端為例,根據(jù)本實(shí)施例的在智能電視操作系統(tǒng)中支持全媒體播放的方法,所述智能電視操作系統(tǒng)實(shí)施于智能電視終端之中,在一個(gè)實(shí)施例中智能電視終端可以是機(jī)頂盒或者智能電視一體機(jī)。所述智能電視操作系統(tǒng)包括全媒體服務(wù)模塊2200,所述全媒體服務(wù)模塊包括全媒體服務(wù)接口客戶端2201、全媒體服務(wù)接口服務(wù)端2202、媒體播放適配模塊2203、媒體元件管理器2204。所述方法包括:
[0053]S1:響應(yīng)于用戶通過不同的媒體播放應(yīng)用2300-1、2300-2、.^2300-11觸發(fā)的媒體播放請(qǐng)求,與該媒體播放應(yīng)用相應(yīng)的全媒體服務(wù)接口客戶端2201-1、2201-2、...、2201-η向全媒體服務(wù)接口服務(wù)端2202發(fā)送播放指令,所述播放指令中包括媒體資源標(biāo)識(shí)(URI)。
[0054]媒體播放應(yīng)用2300-1、2300-2、…、2300_η可以是實(shí)現(xiàn)不同媒體類型的應(yīng)用,例如可以是實(shí)現(xiàn)直播數(shù)字電視、點(diǎn)播數(shù)字電視、互聯(lián)網(wǎng)電視、IPTV、跨屏媒體、本地媒體、融合媒體的媒體播放應(yīng)用。且所述媒體播放應(yīng)用可以是不同編程類型的,例如可以是Java類應(yīng)用也可以是Web類應(yīng)用,媒體播放應(yīng)用可以是安裝在所述智能電視的操作系統(tǒng)之中的,也可以是隨后由用戶在應(yīng)用商店中選擇并下載繼而安裝在操作系統(tǒng)之上。
[0055]用戶根據(jù)自身的觀看需求啟動(dòng)相應(yīng)的媒體播放應(yīng)用,例如當(dāng)用戶希望觀看直播數(shù)字電視時(shí)需要啟動(dòng)直播數(shù)字電視類型的媒體播放應(yīng)用。在該媒體播放應(yīng)用中用戶選擇需觀看媒體內(nèi)容,觸發(fā)媒體播放請(qǐng)求。媒體播放請(qǐng)求表現(xiàn)為播放指令,所述播放指令中包括媒體資源標(biāo)識(shí)符URI。在本實(shí)施例中,不同媒體類型的應(yīng)用會(huì)具有不同的媒體資源標(biāo)識(shí)符URI,例如:媒體類型是互聯(lián)網(wǎng)電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為http;媒體類型是直播數(shù)字電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為dvb;媒體類型是點(diǎn)播數(shù)字電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為vod,媒體類型是本地媒體時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為fi Ie等等。
[0056]相應(yīng)地,媒體播放請(qǐng)求通過媒體播放應(yīng)用被用戶觸發(fā)后,將通過與該媒體播放應(yīng)用相對(duì)應(yīng)的全媒體服務(wù)接口客戶端2201-1、2201-2、-^2201-11向全媒體服務(wù)接口服務(wù)端2202發(fā)送該播放指令,所述全媒體服務(wù)接口客戶端包括實(shí)現(xiàn)直播數(shù)字電視、點(diǎn)播數(shù)字電視、互聯(lián)網(wǎng)電視、IPTV、跨屏媒體、本地媒體、融合媒體的播放接口單元。
[0057]當(dāng)用戶通過多個(gè)媒體播放應(yīng)用觸發(fā)多個(gè)媒體播放請(qǐng)求時(shí),對(duì)應(yīng)于不同媒體播放應(yīng)用的不同的全媒體服務(wù)接口客戶端會(huì)分別向全媒體服務(wù)接口服務(wù)端發(fā)送各自媒體播放應(yīng)用的媒體播放請(qǐng)求,以便支持不同媒體類型的全媒體播放。
[0058]在步驟S2:所述全媒體服務(wù)接口服務(wù)端2202記錄所述全媒體服務(wù)接口客戶端2201-1、2201-2、...、2201-η與媒體播放請(qǐng)求之間的對(duì)應(yīng)關(guān)系,并將所述播放指令發(fā)送給媒體播放適配模塊2203;
[0059]所述全媒體服務(wù)接口服務(wù)端2202將媒體播放請(qǐng)求與全媒體服務(wù)接口客戶端之前的對(duì)應(yīng)關(guān)系記錄之后便可以根據(jù)需要向不同的媒體服務(wù)接口客戶端反饋信息和狀態(tài),例如:反饋的信息和狀態(tài)可以是播放狀態(tài)信息,如播放、暫停、快進(jìn)、快退、直播數(shù)字電視和點(diǎn)播數(shù)字電視媒體類型時(shí)的鎖頻狀態(tài)、節(jié)目信息等,以用于控制不同媒體類型的全媒體播放并支持媒體播放應(yīng)用呈現(xiàn)相應(yīng)的節(jié)目信息和狀態(tài)。
[0060]在步驟S3:所述媒體播放適配模塊2203根據(jù)所述播放指令中的媒體資源標(biāo)識(shí)URI所表示的媒體類型啟動(dòng)相應(yīng)類型的媒體播放器2205-1。
[0061 ]在本實(shí)施例中,媒體播放適配模塊2203會(huì)根據(jù)不同的媒體類型啟動(dòng)相應(yīng)的媒體播放器2205。例如:媒體類型是互聯(lián)網(wǎng)電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為http,將啟動(dòng)http媒體播放器;媒體類型是直播數(shù)字電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URlSdvb,將啟動(dòng)dvb媒體播放器;媒體類型是點(diǎn)播數(shù)字電視時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為vod,將啟動(dòng)vod媒體播放器,媒體類型是本地媒體時(shí),對(duì)應(yīng)于媒體資源標(biāo)識(shí)符URI為file,將啟動(dòng)file媒體播放器等等。在本發(fā)明中不同的媒體播放器將組建與該媒體播放類型的相適應(yīng)的媒體播放管道,以便支持相應(yīng)的媒體播放類型。
[0062]在步驟S4:所述媒體播放器2205-1通過所述媒體元件管理器2204生成與該媒體類型相應(yīng)的媒體播放管道3000-1,所述媒體播放管道3000-1包括與該媒體類型相應(yīng)的媒體源3001-1、解復(fù)用元件3002-1、解碼元件3003-1和輸出元件3004-1 ;其中
[0063]所述媒體元件管理器2204包括適配各種媒體類型的多個(gè)媒體源、解復(fù)用、解碼和輸出元件,并用于對(duì)元件進(jìn)行加載、組合及元件間的消息通信和元件狀態(tài)監(jiān)控。例如,所述媒體元件管理器2204可以包括適配直播數(shù)字電視、點(diǎn)播數(shù)字電視、互聯(lián)網(wǎng)電視、IPTV、跨屏媒體、本地媒體、融合媒體的各種媒體源元件、解復(fù)用元件、解碼元件和輸出元件,除上述元件外,所述媒體元件管理器2204還可以包括用于各種媒體類型播放的其他元件,例如適配數(shù)字電視直播媒體類型的解擾元件或適配互聯(lián)網(wǎng)電視或數(shù)字電視媒體類型的解密元件等,可以知道,除上述列出的元件外,所述媒體元件管理器還可以包括其他元件,只要它們?cè)诟鼜V泛的媒體類型的播放時(shí)需要被使用。而且,應(yīng)當(dāng)理解,雖然在本實(shí)施例中統(tǒng)一被稱為媒體源元件、解復(fù)用元件、解碼元件、輸出元件等,但是不同的媒體類型會(huì)對(duì)應(yīng)不同功能和不同定義與不同硬件和軟件模塊交互的源元件、解復(fù)用元件、解碼元件、輸出元件,而且這些元件可以是由軟件實(shí)現(xiàn)、由硬件實(shí)現(xiàn)也可以是由軟件結(jié)合硬件實(shí)現(xiàn)。因此當(dāng)媒體播放適配模塊啟動(dòng)某一類型的媒體播放器時(shí),該類型的媒體播放器就確定了所需的、在媒體元件管理器中的媒體源元件、解復(fù)用元件、解碼元件、輸出元件、和其他元件(如果需要)各自的具體類型及與其相適配的硬件,并相應(yīng)地通過所述媒體元件管理器來獲取并生成媒體播放管道。
[0064]其中,所述媒體源元件,用于根據(jù)媒體播放指令通過與相關(guān)硬件資源和媒體元件管理器交互確定相應(yīng)媒體播放管道中其他元件的類型。所述解復(fù)用元件,用于媒體流化協(xié)議解析和封裝協(xié)議解析。所述解碼元件,包括視頻解碼和音頻解碼元件,用于媒體音視頻壓縮編碼基本流的解碼。所述輸出元件,包括視頻輸出和音頻輸出元件,用于將解碼后的媒體音視頻幀輸出到音視頻輸出硬件。
[0065]特別地,在一個(gè)實(shí)施例中,所述全媒體服務(wù)模塊還包括硬件資源管理器2206,所述硬件資源管理器2206用于管理媒體元件管理器中的元件所使用的硬件資源,在步驟S4中通過請(qǐng)求-分配機(jī)制將資源分配給相應(yīng)元件。例如,可以將適配互聯(lián)網(wǎng)電視的硬件解復(fù)用器分配給媒體播放管道中的解復(fù)用元件、將音視頻輸出硬件分配給輸出元件等。進(jìn)一步地,所述媒體播放管道中的各元件通過HAL層調(diào)用硬件資源管理器分配的硬件資源,以使元件與硬件電路之間具有標(biāo)準(zhǔn)化的統(tǒng)一接口,增加媒體服務(wù)模塊的可擴(kuò)展性。
[0066]以上已經(jīng)結(jié)合附圖描述了本發(fā)明的實(shí)施例,隨著三網(wǎng)融合的不斷普及,互聯(lián)網(wǎng)電視、直播數(shù)字電視、點(diǎn)播數(shù)字電視、家庭網(wǎng)關(guān)等各種媒體類型的播放需求越來越多樣化。而根據(jù)本實(shí)施例的方法,提供了從應(yīng)用層面到硬件層面的解決方案,使得各種媒體類型的媒體播放可以按照統(tǒng)一的機(jī)制進(jìn)行規(guī)劃,有效地協(xié)調(diào)了軟件與硬件之間的關(guān)系,獲得了全媒體處理的融合的解決方案。
[0067]以上已經(jīng)結(jié)合附圖描述了本發(fā)明的實(shí)施例,下面描述根據(jù)本發(fā)明的幾種媒體類型的例子,下面的例子與前述實(shí)施例相同的部分將不再贅述。
[0068]〈例子1>
[0069]本例子,描述了媒體類型為直播數(shù)字電視時(shí)的媒體播放方法的實(shí)例。在媒體類型為直播數(shù)字電視時(shí),如圖3所示,所述智能電視操作系統(tǒng)還包括數(shù)字電視模塊5000,所述數(shù)字電視模塊5000用于獲取、解析、存儲(chǔ)包含視頻流標(biāo)識(shí)videoPid、音頻流標(biāo)識(shí)aud1Pid的數(shù)字電視節(jié)目信息,所述直播數(shù)字電視類型的媒體播放器根據(jù)媒體資源標(biāo)識(shí)(URI)向數(shù)字電視模塊查詢并獲取視頻流標(biāo)識(shí)videoPid、音頻流標(biāo)識(shí)aud1Pid并設(shè)置到相應(yīng)媒體播放管道的解復(fù)用元件3002-