《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ARM-Linux的高清數(shù)字機頂盒軟件系統(tǒng)設(shè)計與實現(xiàn)
基于ARM-Linux的高清數(shù)字機頂盒軟件系統(tǒng)設(shè)計與實現(xiàn)
來源:微型機與應(yīng)用2010年第9期
龔士強,熊慶宇
(重慶大學(xué) 自動化學(xué)院,重慶 400044)
摘要: 介紹了一種在嵌入式Linux系統(tǒng)下數(shù)字高清晰度電視機頂盒系統(tǒng)軟件的研究與開發(fā)。該軟件配合機頂盒硬件平臺構(gòu)成一個整機系統(tǒng),在完成整個軟件系統(tǒng)構(gòu)架的基礎(chǔ)上探討了其設(shè)計方法的合理性和可靠性等問題。該軟件系統(tǒng)具有解調(diào)、解碼外,還能向用戶提供一系列選單式圖形菜單界面的交互操作等功能。
Abstract:
Key words :

摘  要: 介紹了一種在嵌入式Linux系統(tǒng)下數(shù)字高清晰度電視機頂盒系統(tǒng)軟件的研究與開發(fā)。該軟件配合機頂盒硬件平臺構(gòu)成一個整機系統(tǒng),在完成整個軟件系統(tǒng)構(gòu)架的基礎(chǔ)上探討了其設(shè)計方法的合理性和可靠性等問題。該軟件系統(tǒng)具有解調(diào)、解碼外,還能向用戶提供一系列選單式圖形菜單界面的交互操作等功能。
關(guān)鍵詞: 嵌入式;機頂盒系統(tǒng)軟件;ARM-Linux;MiniGUI

    數(shù)字電視特別是數(shù)字高清晰度電視的誕生應(yīng)該說是電視界的一場深刻變革[1]。電視系統(tǒng)已進(jìn)入數(shù)字化的進(jìn)程,數(shù)字機頂盒是該系統(tǒng)的關(guān)鍵部件,特別是其軟件系統(tǒng)的設(shè)計和開發(fā)。但無論是模擬彩電還是數(shù)字處理電視,都不具備對全數(shù)字電視信號進(jìn)行解碼的功能,所以一種能夠接收數(shù)字電視信號并能夠解碼輸出用于顯示的中間設(shè)備——機頂盒,就顯得很有必要了[2]。
    目前國內(nèi)機頂盒以有線標(biāo)清為主,歐洲以衛(wèi)星和地面的機頂盒為主,美國以高清地面機頂盒產(chǎn)品為主[3]。隨著技術(shù)的發(fā)展,機頂盒已不只單純接收數(shù)字電視節(jié)目,還要接收大量的數(shù)據(jù),而且用戶和電視機之間還要實現(xiàn)互動[4]。目前國內(nèi)還沒有一種成熟的交互式應(yīng)用,所謂的交互式應(yīng)用基本上都還停留在本地交互的基礎(chǔ)上[5]。本文研究的機頂盒可以支持諸如電子節(jié)目指南、按次付費觀看、立即按次付費觀看、準(zhǔn)視頻點播、數(shù)據(jù)廣播、Internet接入、電子郵件、視頻點播以及IP電話、可視電話等的應(yīng)用[6]。因此要求電視接收機具有很好的信息處理能力和網(wǎng)絡(luò)通信能力。
1 機頂盒軟件系統(tǒng)
    數(shù)字機頂盒由硬件平臺和軟件系統(tǒng)構(gòu)成,音視頻解碼主要由硬件實現(xiàn),而操作界面的功能、電視圖像的重現(xiàn)、數(shù)據(jù)廣播業(yè)務(wù)的平臺以及Internet的接入等都需要軟件系統(tǒng)實現(xiàn)[7]。
    數(shù)字機頂盒的軟件系統(tǒng)主要由嵌入式操作系統(tǒng)(EOS)、硬件抽象層(HAL)、軟件抽象層(SAL)以及應(yīng)用程序(ASL)組成。本文主要研究基于ARM(HHARMS3C6410)平臺、Linux(v2.6.21)操作系統(tǒng)、THOMSON公司的數(shù)字高清解碼芯片的HDTV機頂盒系統(tǒng)的軟件設(shè)計,功能包括通過Demux模塊接收流數(shù)據(jù)、解析PSI信息、對音視頻流進(jìn)行解碼及播放、接收用戶遙控器輸入,并具有簡單的用戶界面。研究的目標(biāo)是開發(fā)出適用于所選的硬件平臺特點、具有基本的機頂盒產(chǎn)品功能的軟件系統(tǒng)。
    開發(fā)內(nèi)容有以下幾個方面:
    (1)機頂盒底層驅(qū)動程序。包括前端、USB、Enthernet、Flash的驅(qū)動及遙控信號接收的軟件等。
    (2)機頂盒節(jié)目管理模塊。包括整機狀態(tài)信息和用戶設(shè)置信息的存取和管理,業(yè)務(wù)數(shù)據(jù)的存取、更新和管理,節(jié)目數(shù)據(jù)的獲取、分析。
    (3)機頂盒應(yīng)用程序。包括機頂盒用戶界面、選單的設(shè)計與顯示、圖形用戶界面/選單/用戶交互操作的應(yīng)用和管理等。
    軟件系統(tǒng)整體結(jié)構(gòu)如圖1所示。

2 節(jié)目管理模塊的開發(fā)
    節(jié)目操作管理模塊是用戶應(yīng)用程序的重要組成部分,該軟件模塊主要實現(xiàn)確定節(jié)目操作管理模塊與系統(tǒng)其他模塊的關(guān)系(包括相互之間的通信協(xié)議)、建立節(jié)目數(shù)據(jù)庫、本模塊內(nèi)部軟件結(jié)構(gòu)的設(shè)計。
    有關(guān)節(jié)目的各種操作是數(shù)字電視機頂盒軟件功能中非常重要的一部分,用戶所有有關(guān)頻道、節(jié)目的實質(zhì)性操作功能都在這部份實現(xiàn)。在本文的總體設(shè)計方案中,節(jié)目的操作功能主要包括節(jié)目搜索(自動和手動)、節(jié)目選擇、節(jié)目信息的提取和保存、節(jié)目數(shù)據(jù)庫操作等。
    在本機頂盒有關(guān)節(jié)目操作的各種功能中,絕大部分都與節(jié)目數(shù)據(jù)庫有關(guān)。如自動節(jié)目搜索時,需要建立節(jié)目數(shù)據(jù)庫,并為搜索到的節(jié)目建立相應(yīng)的數(shù)據(jù)單元,用于存儲節(jié)目的各種信息;在刪除節(jié)目時,需要改變刪除節(jié)目在節(jié)目數(shù)據(jù)庫中的連接關(guān)系,并打上刪除標(biāo)志等。因此,節(jié)目數(shù)據(jù)庫是節(jié)目操作軟件的關(guān)鍵部分之一。
2.1 Builder模塊
    該模塊主要功能是在USIF的控制下建立節(jié)目數(shù)據(jù)庫,該模塊通過MSG Mgr向USIF反饋搜索狀態(tài)以及內(nèi)容,根據(jù)用戶的需要建立頻點、頻道信息數(shù)據(jù)庫。Builder模塊結(jié)構(gòu)圖如圖2所示。

    Builder主要支持3種搜索方式:
    (1)盲掃。根據(jù)預(yù)置頻點搜索節(jié)目信息,建立完整節(jié)目數(shù)據(jù)庫。
    (2)網(wǎng)絡(luò)搜索。根據(jù)輸入頻點搜索NIT表,根據(jù)網(wǎng)絡(luò)信息搜索該網(wǎng)絡(luò)的所有節(jié)目信息,建立完整的網(wǎng)絡(luò)節(jié)目信息數(shù)據(jù)庫。
    (3)手動搜索。根據(jù)輸入頻點搜索該頻點,建立該頻點完整的節(jié)目信息數(shù)據(jù)庫。
2.2 PSI模塊
    PSI模塊需要Demux模塊提供Section數(shù)據(jù)的搜索功能,其建立在Demux驅(qū)動之上,為EPG、Builder等模塊提供完整表及條件捕獲接口。PSI模塊結(jié)構(gòu)圖如圖3所示。

    PSI模塊提供2種得到表方式:
    GetTable:通過該功能接口,直接得到表數(shù)據(jù)返回,如果超時沒有得到表數(shù)據(jù),返回超時。
    Capture:通過該功能接口,先提出表申請,通過異步通信方式獲得表結(jié)構(gòu)并通知應(yīng)用模塊。
    在捕獲方式中都有3種模式:
    (1)Update Mode:在得到版本更新時通知應(yīng)用模塊。
    (2)Complete Mode:當(dāng)?shù)玫酵暾斫Y(jié)構(gòu)時通知應(yīng)用模塊。
    (3)Section Mode:當(dāng)接收到Section數(shù)據(jù)時候就立即通知應(yīng)用模塊。
2.3 DBaseMgr模塊
    該模塊是一個數(shù)據(jù)庫管理系統(tǒng),主要功能是實現(xiàn)對頻道、頻點、系統(tǒng)信息、EPG等信息的存儲與管理,以及對節(jié)目頻點的添加、刪除、排序、查找、編輯等。該模塊主要與Builder、EPG、USIF、Player 4個模塊交互,并通過與Flash交互進(jìn)行物理操作。為了保證數(shù)據(jù)元素操作的效率,避免產(chǎn)生大量的內(nèi)存碎片,也為了元素操作方便,該設(shè)計以靜動結(jié)合的思路采用靜態(tài)雙向鏈表的數(shù)據(jù)結(jié)構(gòu)。在多個進(jìn)程或線程同時對同一個數(shù)據(jù)庫進(jìn)行操作時,要考慮同步互斥機制了。在對數(shù)據(jù)庫進(jìn)行任何操作之前先對數(shù)據(jù)庫加鎖,當(dāng)數(shù)據(jù)庫操作完成之后,再解鎖,這樣就保證了數(shù)據(jù)庫操作的一致性。數(shù)據(jù)庫模塊結(jié)構(gòu)如圖4所示。

    數(shù)據(jù)庫管理系統(tǒng)功能特點主要有以下幾點:
    (1)功能完備。該模塊需要提供完備的功能接口,包括數(shù)據(jù)庫的創(chuàng)建、管理以及刪除等基本操作。另還需要滿足多視窗操作。
    (2)多用戶操作。本系統(tǒng)采用的是嵌入式Linux系統(tǒng),它是一個多用戶分時系統(tǒng),所以該數(shù)據(jù)庫需要保證同時滿足多用戶操作需要,保證系統(tǒng)的安全。
    (3)數(shù)據(jù)完整。本系統(tǒng)屬于嵌入式系統(tǒng),該模塊必須保證掉電后數(shù)據(jù)庫數(shù)據(jù)的完整性。
    從前幾節(jié)的內(nèi)容可以看出,有關(guān)節(jié)目的操作與PSI表的處理有著十分密切的關(guān)系。這是因為PSI表的分析管理直接影響到節(jié)目數(shù)據(jù)庫的內(nèi)容,而節(jié)目的各種操作又都是與數(shù)據(jù)庫緊密相連的。節(jié)目操作管理部分的軟件設(shè)計主要可分成3大部分:PSI表處理模塊、節(jié)目數(shù)據(jù)庫模塊和節(jié)目操作模塊。其中PSI處理模塊主要完成PSI表的各種操作,如表的獲取、分析及管理等;節(jié)目數(shù)據(jù)庫模塊主要完成關(guān)于數(shù)據(jù)庫的操作,如數(shù)據(jù)庫的初始化、建立、內(nèi)容的讀寫及更新等;節(jié)目操作模塊則實現(xiàn)有關(guān)節(jié)目的操作,如節(jié)目的搜索、刪除、恢復(fù)、選擇等。這3部分有機結(jié)合起來就形成了節(jié)目操作的整體軟件模塊。
3 機頂盒應(yīng)用程序的開發(fā)
    機頂盒應(yīng)用程序主要實現(xiàn)用戶交互選單的顯示等功能,因此選擇MiniGUI開源軟件開發(fā)機頂盒應(yīng)用程序。
    MiniGUI作為嵌入式Linux系統(tǒng)下的一個輕量級圖形用戶界面支持系統(tǒng)已被應(yīng)用到很多實際項目中。與其他嵌入式GUI相比,其具有系統(tǒng)資源消耗小、可配置和可定制性高、穩(wěn)定性高、可移植性好等優(yōu)勢。
    MiniGUI具有良好的軟件架構(gòu),通過抽象層IAL、GAL將MiniGUI上層和底層操作系統(tǒng)隔離開來?;贛iniGUI的應(yīng)用程序一般通過支持庫、操作系統(tǒng)和驅(qū)動程序接口以及MiniGUI自身提供的API來實現(xiàn)自己的功能。
    基于MiniGUI開發(fā)的UI模塊如圖5所示。UI模塊主要滿足用戶通過遙控器進(jìn)行節(jié)目搜索、播放、換臺以及節(jié)目瀏覽等操作。

    UI模塊的體系結(jié)構(gòu)如圖6所示。

    本研發(fā)項目,形成了一套包括Linux操作系統(tǒng)移植、驅(qū)動程序、MiniGUI庫移植和上層應(yīng)用程序在內(nèi)的機頂盒軟件系統(tǒng)。該軟件配合機頂盒硬件平臺構(gòu)成了基本實用的整機系統(tǒng),經(jīng)測試該系統(tǒng)的設(shè)計方法具有很好的合理性和穩(wěn)定性。本項目采用的傳輸標(biāo)準(zhǔn)是我國目前采用的DVB-C標(biāo)準(zhǔn),因此,在系統(tǒng)整體功能的定位上,主要考慮了DVB-C標(biāo)準(zhǔn)的特點,在軟件功能上也側(cè)重了對DVB-C PSI的支持。該軟件實現(xiàn)的功能主要有:一方面機頂盒利用該軟件可以實現(xiàn)基本的解調(diào)、信道解碼、音/視頻解碼輸出等功能;另一方面還能向用戶提供一系列選單式的交互操作功能,實現(xiàn)諸如節(jié)目搜索、系統(tǒng)設(shè)置的改變存儲、節(jié)目信息的查看、定時操作、電子節(jié)目指南、本地存儲節(jié)目的快進(jìn)快退等附加功能。這些功能的實現(xiàn)基本滿足了當(dāng)前用戶對高清數(shù)字機頂盒的要求。我國是彩電大國,但目前機頂盒還很不普及,因此該項目不僅具有很好的研究價值,而且具有廣闊的市場前景。
參考文獻(xiàn)
[1] 張晟,郭小勤.?dāng)?shù)字機頂盒軟件設(shè)計[J].中國有線電視,2007(14):1367-1369.
[2] 鄭端建,郭磊,魏世民.MiniGUI圖形庫在嵌入式Linux平臺上的移植與實現(xiàn)[J].儀表技術(shù),2008(10):10-14.
[3] 林德才,李悅,魏芳.基于STB7100的高清IPTV機頂盒設(shè)計[J].電視技術(shù),2008(1):47-49.
[4] 黃欣,陳珊,俞斯樂.基于ST解決方案的HDTV機頂盒軟件的設(shè)計實現(xiàn)[J].信息終端,2002(7):63-65.
[5] 胡宏平.基于數(shù)字電視機頂盒的嵌入式Linux操作系統(tǒng)的設(shè)計[J].電視技術(shù),2005(8):52-57.
[6] YU Si Le, CHEN Shan. An improved structure of pre-determined parental viewing control data in software design for ATSC receiver[J]. IEEE Trans, on CE, 2002,48(1).
[7] 陳珊,俞斯樂.?dāng)?shù)字電視接收機中電子節(jié)目指南功能的軟件實現(xiàn)研究[J].NSBT,北京:2000.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久综合999| 国产精品网站一区| 亚洲欧美一区二区三区在线| 最新日韩在线| 亚洲国产日韩欧美在线图片| 久久av红桃一区二区小说| 亚洲欧美综合精品久久成人| 亚洲伊人伊色伊影伊综合网| 亚洲午夜一区二区| 中文亚洲欧美| 亚洲一区日韩| 午夜欧美大尺度福利影院在线看 | 日韩亚洲欧美精品| 亚洲精品美女在线| 亚洲精品日产精品乱码不卡| 亚洲三级免费| 99综合在线| 亚洲性视频网址| 国产精品午夜视频| 亚洲精品美女91| 极品少妇一区二区三区| 影音先锋中文字幕一区| 亚洲电影在线看| 在线免费高清一区二区三区| 欧美视频在线观看免费| 久久大香伊蕉在人线观看热2| 午夜视频一区二区| 欧美一二三视频| 久久九九精品| 久久天堂精品| 美国十次成人| 欧美日韩国产免费观看| 欧美亚韩一区| 国产一区成人| 亚洲韩日在线| 在线天堂一区av电影| 午夜在线视频观看日韩17c| 久久疯狂做爰流白浆xx| 久久精品国产视频| 亚洲美洲欧洲综合国产一区| 亚洲深夜激情| 欧美专区在线播放| 久久综合成人精品亚洲另类欧美| 欧美成人午夜激情在线| 欧美体内she精视频| 国产三级欧美三级| 亚洲二区三区四区| 9人人澡人人爽人人精品| 亚洲欧美日韩成人| 亚洲精品免费看| 亚洲欧美区自拍先锋| 久久久久一区二区三区四区| 欧美精品二区| 国产精品揄拍500视频| 在线免费观看日本欧美| 99在线热播精品免费99热| 亚洲欧美中文在线视频| 亚洲欧洲日本mm| 西西人体一区二区| 欧美成人官网二区| 国产毛片一区| 最近中文字幕日韩精品| 亚洲一区欧美激情| 日韩视频永久免费观看| 久久黄金**| 欧美日韩亚洲高清| 精品99一区二区三区| 在线综合欧美| 久久精品人人做人人爽电影蜜月| 一区二区三区日韩精品| 久久综合九色| 国产精品热久久久久夜色精品三区| 国产最新精品精品你懂的| 一区二区三区日韩欧美| 亚洲二区三区四区| 欧美亚洲尤物久久| 欧美日韩一区视频| 一区二区三区在线观看国产| 亚洲永久免费精品| 日韩一级在线| 久久人人看视频| 国产精品区一区二区三区| 亚洲精品久久久蜜桃| 久久av一区二区| 亚洲欧美日韩一区二区| 欧美伦理影院| 狠狠狠色丁香婷婷综合激情| 亚洲香蕉网站| 99re视频这里只有精品| 久久天天躁狠狠躁夜夜av| 国产精品日韩精品| 99精品视频一区| 亚洲靠逼com| 美女图片一区二区| 国产伊人精品| 亚洲一区尤物| 亚洲小视频在线| 欧美片网站免费| 亚洲第一偷拍| 亚洲国产精品小视频| 久久精品色图| 国产精品一区二区在线| 一区二区三区 在线观看视| 99在线精品视频在线观看| 欧美刺激午夜性久久久久久久| 国产欧美在线视频| 亚洲图片自拍偷拍| 亚洲一级黄色| 欧美吻胸吃奶大尺度电影| 亚洲精品免费一区二区三区| 亚洲精品国精品久久99热一| 欧美+亚洲+精品+三区| 一区视频在线播放| 亚洲国产成人不卡| 久久一区国产| 国内精品视频在线观看| 久久精品亚洲热| 久久免费高清| 国产在线精品二区| 欧美一级在线播放| 久久精品一区二区三区中文字幕| 国产精品―色哟哟| 国产日韩欧美精品综合| 影音先锋日韩有码| 亚洲精品1234| 欧美成人精品在线视频| 亚洲激情av在线| 亚洲伦伦在线| 欧美精品午夜| 一区二区欧美日韩| 亚洲综合精品四区| 国产精品久久久久久av福利软件| 一区二区三区国产盗摄| 亚洲欧美久久| 国产日韩欧美综合| 久久精品夜色噜噜亚洲aⅴ| 免费黄网站欧美| 亚洲国产欧美一区二区三区久久| 日韩视频中文字幕| 欧美图区在线视频| 亚洲欧美日韩在线观看a三区| 欧美在线亚洲综合一区| 黄色国产精品一区二区三区| 久久精品视频免费观看| 欧美福利网址| 日韩午夜在线| 午夜视频在线观看一区二区| 国产区在线观看成人精品| 亚洲国产成人一区| 欧美好吊妞视频| av成人动漫| 欧美一区视频| 激情久久久久久久| 久久精品亚洲一区| 欧美日韩aaaaa| 亚洲新中文字幕| 久久国产精品99国产| 一区一区视频| 亚洲精品视频在线观看免费| 欧美午夜精品电影| 欧美影院成人| 欧美国产一区二区| 亚洲无亚洲人成网站77777| 久久免费高清视频| 亚洲精选视频在线| 欧美在线观看一区二区| 韩国一区二区三区在线观看| 日韩亚洲欧美一区| 国产精品视频最多的网站| 亚洲高清一区二区三区| 欧美日韩精品一区二区三区| 亚洲欧美精品在线观看| 欧美大片免费久久精品三p | 一本色道久久综合亚洲精品按摩 | 国产精品系列在线| 亚洲黄色免费网站| 欧美午夜精品理论片a级按摩| 欧美在线一二三| 欧美日韩国内| 欧美一区二区免费观在线| 欧美精品三级在线观看| 亚洲欧美日韩一区在线| 欧美精品精品一区| 午夜精品一区二区三区电影天堂| 欧美成人激情视频| 亚洲欧美在线x视频| 欧美激情一区在线| 久久精品国产视频| 国产精品高清一区二区三区| 亚洲激情av在线| 国产精品日本| 亚洲免费观看高清在线观看 | 亚洲黄色影片| 国产欧美亚洲精品| 在线综合亚洲欧美在线视频| 黑人巨大精品欧美一区二区| 亚洲天堂成人在线观看| 在线欧美电影| 久久精品国产精品 | 最新亚洲激情|