機頂盒作為一個客戶端系統,除了要具有良好的硬件平臺外還需要配備不同的軟件系統才能使其完成各種任務。機頂盒中的軟件可以分成三個主要的層:應用層、中間解釋層和驅動層,每一層都包含了諸多的程序或接口等。
驅動層
驅動層包括機頂盒硬件的驅動程序和API接口,它主要用于完成對硬件設備的操作。
中間解釋層
中間解釋層將STB的應用程序指令翻譯成CPU能識別的指令,從而通過驅動層去調動硬件設備完成相應的操作。該層包括嵌入式操作系統、中間件、CA駐留軟件等。雖然中間件的使用可以給STB軟件的設計和應用帶來極大好處,但高昂的使用費用,對硬件需求的增加以及技術上的不成熟使中間件在國內鮮有應用。目前許多軟件設計者采用直接調用驅動層的軟件來編寫應用程序,這雖然可以滿足一時的需求,但隨著應用需求的增加,在STB中使用中間件才是一個很好的解決方案。
應用層
應用層可以分成駐留應用程序和可下載應用程序兩部分,不同的STB軟件設計理念使這兩個部分包含的應用程序也不盡相同,合理規劃這兩部分的組成將有助于提高STB的可靠性和相應時間。目前國內機頂盒中的應用較少,主要以EPG、數據廣播、股票、簡單的下載游戲等為主,而數字電視的魅力并不在于看電視,而在于這種基于數字電視平臺的業務應用,這些應用將會改善人們的一些日常生活習俗。隨著雙向網絡的建設,交互式應用的普及,基于交互式的應用軟件也將越來越多,這也會給運營商帶來難以預料的增值收入。 有線電視數字機頂盒的技術含量非常高,它集中反映了多媒體、計算機、數字壓縮編碼、 加解擾算法、加解密算法、通信技術和網絡技術發展水平。
※加解擾技術
加解擾技術用于對數字節目進行加密解密,其基本原理是采用加擾控制字加密傳輸的方法,用戶端利用IC卡解密。在MPEG傳輸流中,與控制字傳輸相關的有兩個數據流:授權控制信息 (ECMs)和授權管理信息(EMMs),由業務密鑰(SK)加密處理后的控制字在ECMs中傳送,其中還包括節目來源、時間、內容分類和節目價格等節目信息。對控制字加密的業務密鑰在授權管理 中傳送,并且業務密鑰在傳送前要經過用戶個人分配密鑰( PDK)的加密處理,EMMs中還包括地址、用戶授權信息,如用戶可以看的節目或時間段,用戶付的收視費等。用戶個人分配密鑰(PDK)存放在用戶的智能卡(Smart Card)中。 在用戶端,機頂盒根據PMT和CAT表中的CA-descriptor,獲得EMM和ECM的PID值,然后從TS流中過濾出ECMs和EMMs,并通過Smard Card接口送給Smart Card。Smart Card首先讀取用戶個人分 配密鑰(PDK),用PDK對EMM解密,取出SK,然后利用SK對ECM進行解密,取出CW,并將CW通過 Smart Card接口送給解擾引擎,解擾引擎利用CW就可以將擾的傳輸流進行解擾。 加解擾技術分為同密和多密技術。 同密技術是將兩家或兩家以上的條件接收(CA)系統應用于同一網絡平臺之中,從有線電視臺角度是實現技術的選擇和競爭的環境。 多密技術要求機頂盒采用CI技術,實現同一機頂盒可接收不同CA系統加密節目。從用戶角度 來講,不會因購買是一家CA的機頂盒而受到限制,用戶還有選擇其CA服務的可能性。