音頻解碼:音頻解碼部分完成對音頻數(shù)據(jù)的解碼。在目前的很多手機(jī)電視終端方案中,由于采用了高性能的應(yīng)用處理器,并且這些處理器往往針對多媒體處理進(jìn)行過優(yōu)化,因此很多終端方案都沒有采用硬件協(xié)處理器進(jìn)行音視頻的解碼,而是通過純軟件方式來實(shí)現(xiàn)音視頻數(shù)據(jù)的解碼。通信子系統(tǒng)軟件:通信子系統(tǒng)軟件是終端軟件架構(gòu)中相對獨(dú)立的一部分,由通信子系統(tǒng)中的基帶處理器運(yùn)行,主要包括GSM/GPRS通信協(xié)議棧、SIM卡管理模塊,以及電信業(yè)務(wù)
音頻解碼:音頻解碼部分完成對音頻數(shù)據(jù)的解碼。
在目前的很多
手機(jī)電視終端方案中,由于采用了高性能的應(yīng)用處理器,并且這些處理器往往針對多媒體處理進(jìn)行過優(yōu)化,因此很多終端方案都沒有采用硬件協(xié)處理器進(jìn)行音視頻的解碼,而是通過純軟件方式來實(shí)現(xiàn)音視頻數(shù)據(jù)的解碼。
通信子系統(tǒng)軟件:通信子系統(tǒng)軟件是終端軟件架構(gòu)中相對獨(dú)立的一部分,由通信子系統(tǒng)中的基帶處理器運(yùn)行,主要包括GSM/GPRS通信協(xié)議棧、
SIM卡管理
模塊,以及電信業(yè)務(wù)管理。
AT指令擴(kuò)展模塊:AT指令擴(kuò)展(AT+)的主要功能是提供手機(jī)電視業(yè)務(wù)鑒權(quán)、密鑰管理所需的SIM卡訪問命令。
SG功能模塊:SG功能模塊主要負(fù)責(zé)處理由移動(dòng)網(wǎng)絡(luò)下發(fā)的業(yè)務(wù)指南。通過對業(yè)務(wù)指南進(jìn)行解析,終端應(yīng)可以向用戶顯示有關(guān)節(jié)目信息,包括顯示頻道名稱、節(jié)目名稱、內(nèi)容簡介、開始時(shí)間、結(jié)束時(shí)間、付費(fèi)標(biāo)準(zhǔn)等信息。業(yè)務(wù)指南基于XML數(shù)據(jù)格式定義。業(yè)務(wù)指南中,除了包含可以顯示給用戶的信息(頻道信息、節(jié)目介紹、付費(fèi)信息)以外,還包含了接收頻道的方法(頻點(diǎn)、頻道編號等),以及交互所需要的信息(交互內(nèi)容、時(shí)間提前量以及交互服務(wù)器地址)。終端可以方便地向用戶展示用戶需要的查看的信息,并且在需要播放相關(guān)頻道和進(jìn)行交互操作時(shí)候提供必要的技術(shù)參數(shù)。
交互功能模塊:交互模塊主要負(fù)責(zé)手機(jī)電視節(jié)目中觀眾與節(jié)目的互動(dòng)。手機(jī)電視業(yè)務(wù)與傳統(tǒng)電視業(yè)務(wù)的最大區(qū)別就是可以非常方便地提供交互功能,這也是手機(jī)電視業(yè)務(wù)的亮點(diǎn)之一。交互業(yè)務(wù)提供與廣播節(jié)目的相關(guān)信息,用戶通過交互業(yè)務(wù)可以獲取和節(jié)目內(nèi)容相關(guān)的背景介紹信息、資料數(shù)據(jù)、參與投票、競猜活動(dòng)等。
鑒權(quán)與密鑰管理模塊:鑒權(quán)技術(shù)是手機(jī)電視業(yè)務(wù)的核心功能之一,掌握鑒權(quán)技術(shù)也就意味著掌握了手機(jī)電視業(yè)務(wù)的主導(dǎo)權(quán)。中國移動(dòng)通信研究院在結(jié)合3GPP相關(guān)標(biāo)準(zhǔn)的基礎(chǔ)上提出了基于SIM/USIM卡的鑒權(quán)方案。鑒權(quán)與密鑰管理模塊的主要功能如下。
(1)通過底層的通信協(xié)議、GPRS連接與核心網(wǎng)業(yè)務(wù)管理平臺進(jìn)行交互,進(jìn)行用戶鑒權(quán)認(rèn)證并獲得密鑰信息;
(2)通過AT命令與SIM卡或USIM卡交換鑒權(quán)信息及密鑰信息。SIM卡或USIM卡則負(fù)責(zé)完成相關(guān)的密鑰運(yùn)算。
3 手機(jī)電視終端客戶端的移植性
手機(jī)電視終端上的播放器軟件是手機(jī)電視業(yè)務(wù)的最前端,直接面向用戶:向用戶呈現(xiàn)電視節(jié)目、業(yè)務(wù)導(dǎo)航信息,并提供與用戶的互動(dòng)。在未來的手機(jī)電視商用階段,終端將會由多個(gè)廠家提供。因此,不同型號、平臺的手機(jī)電視終端能否提供風(fēng)格一致的用戶界面和操作流程,以及終端播放器軟件能否快速的移植到新的硬件平臺上都將影響的業(yè)務(wù)的推廣和用戶體驗(yàn)。
以下我們將針對不同的情況來分析終端客戶端軟件的可移植性及提高可移植性的手段。
3.1 跨硬件平臺的移植性
當(dāng)手機(jī)電視的移動(dòng)接收子系統(tǒng)的硬件發(fā)生改變時(shí),和芯片相配套的驅(qū)動(dòng)程序必然會發(fā)生變化,因此中間層的SDK需要重新開發(fā)。為了將底層硬件的變化對上層軟件的影響降低到最小,有必要將中間層SDK向上層的接口進(jìn)行統(tǒng)一和規(guī)范。這樣當(dāng)?shù)讓拥挠布膀?qū)動(dòng)發(fā)生改變時(shí),只需要重新開發(fā)SDK,并保持SDK向上層提供的接口不變,就能夠最大程度的重用之前的軟件模塊。
當(dāng)手機(jī)軟件的應(yīng)用處理器芯片發(fā)生變化時(shí),會引起操作系統(tǒng)、驅(qū)動(dòng)程序等一系列的變化。如果只是操作系統(tǒng)版本的變化,則對上層軟件的影響不會太大;如果是操作系統(tǒng)種類的變化,則牽扯到下面要討論的跨操作系統(tǒng)的移植。
3.2 跨操作系統(tǒng)的移植性
在不同的操作系統(tǒng)中移植性將面臨比較大的工作量,最主要的問題包括進(jìn)程/線程管理機(jī)制、消息機(jī)制、開發(fā)環(huán)境和GUI上的差異。例如在Win Mobile中通常使用
EVC作為開發(fā)工具,而在Linux中通常是GNU C。雖然同為C/C++語言,但二者在庫文件、程序控制機(jī)制方面存在較大差異,使得這種跨平臺的移植或重用難度較大,很多模塊的代碼都要重寫。再加上不同操作系統(tǒng)的界面風(fēng)格、GUI資源也存在差別,因此界面部分也很難實(shí)現(xiàn)跨操作系統(tǒng)的重用。為了統(tǒng)一終端客