亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于S3C6400的移動多媒體廣播終端設計

        2009-03-19 01:59:12楊祖芳熊承義陳方強
        現(xiàn)代電子技術 2009年3期

        楊祖芳 熊承義 陳方強

        摘 要:隨著信息技術和計算機技術的飛速發(fā)展,在移動設備上欣賞豐富的電視節(jié)目和接收及時的交通、股市等實時數(shù)據(jù)信息越來越成為眾多消費者期待的功能。提出一種應用于CMMB移動多媒體廣播系統(tǒng)的手持數(shù)字移動電視終端的設計,以三星的ARM11處理器S3C6400作為硬件平臺,采用Linux作為軟件平臺,詳細介紹了硬件結構和軟件系統(tǒng)的設計,實現(xiàn)數(shù)字移動電視的音視頻解碼,最終實現(xiàn)數(shù)字移動電視的播放。

        關鍵詞:移動多媒體廣播;S3C6400;數(shù)字移動電視;媒體終端

        中圖分類號:TN919.8文獻標識碼:B

        文章編號:1004-373X(2009)03-179-04

        Design of Mobile Multimedia Broadcasting Terminal Based on S3C6400

        YANG Zufang,XIONG Chengyi,CHEN Fangqiang

        (College of Electronic Information Engineering,South-Central University for Nationalities,Wuhan,430074,China)

        Abstract:With the rapid development of information technology and computer technology,appreciating a wealth of television programs and receiving real-time data such as prompt transportation,the stock market on the mobile equipment becomes the function which more and more consumers expected.A design of portable digital mobile TV terminal applied to China Mobile Multimedia Broadcasting system(CMMB) is presented.The design of hardware structure and software system are introduced in detail.The digital mobile TV terminal using Sumsung′s ARM11 processor S3C6400 as hardware platform,using Linux as software platform.The digital mobile TV audio and video decoding and digital mobile TV broadcasting are realized ultimately.

        Keywords:mobile multimedia broadcast;S3C6400;digital mobile TV;medium terminal

        0 引 言

        移動多媒體廣播目前已經(jīng)成為炙手可熱的發(fā)展熱點。移動多媒體廣播業(yè)務是指通過衛(wèi)星和地面無線廣播方式,在具有7英寸以下小屏幕的移動便攜式終端上,實現(xiàn)隨時隨地接收廣播電視節(jié)目收視與信息服務[1-3]。

        我國于2006年提出了具有自主知識產(chǎn)權的中國移動多媒體廣播(China Mobile Multimedia Broadcasting,CMMB) 系統(tǒng)[4,5],能夠支持諸如手機、PDA、MP3、MP4、數(shù)碼相機、筆記本式計算機等小尺寸、小屏幕、移動便攜的多種終端,實現(xiàn)隨時隨地提供廣播影視節(jié)目和信息服務,滿足當代社會“信息無處不在”的需求。

        為了實現(xiàn)較高質(zhì)量的電視節(jié)目接收和播放,終端的性能起著重要的作用,其中終端的音視頻解碼能力又是主要因素。同時兼顧到終端的成本,選擇合適的軟硬件平臺十分關鍵。因此本設計兼顧數(shù)字移動電視的性能要求和成本兩個方面。

        1 CMMB系統(tǒng)架構與終端結構簡介

        2006年10月24日,國家廣播電影電視總局正式頒布了中國移動多媒體廣播CMMB系統(tǒng)的廣播信道行業(yè)標準《GY/T 220.1-2006 移動多媒體廣播 第1 部分:廣播信道幀結構、信道編碼和調(diào)制》,確定了采用我國自主研發(fā)的移動多媒體廣播傳輸技術標準(Satellite-Terrestrial Interactive Multi-service Infrastructure,STiMi)。目前國際上還沒有形成統(tǒng)一的移動多媒體廣播技術標準,尚處于大規(guī)模應用的前期,因此該標準的及時出臺,對我國移動多媒體廣播和相關民族工業(yè)的發(fā)展具有重要的促進作用。

        CMMB 技術體系是利用大功率S波段衛(wèi)星信號覆蓋全國,利用地面增補轉(zhuǎn)發(fā)器同頻同時同內(nèi)容轉(zhuǎn)發(fā)衛(wèi)星信號補點覆蓋衛(wèi)星信號盲區(qū),利用無線移動通信網(wǎng)絡構建回傳通道,從而組成單向廣播和雙向交互相結合的移動多媒體廣播網(wǎng)絡[6]。CMMB 體系架構如圖1所示。

        數(shù)字移動電視終端的硬件部分主要分為兩部分:電視的接收模塊和播放顯示模塊。前者負責控制CMMB信號,后者負責播放音視頻數(shù)據(jù)。數(shù)字移動電視的接收模塊采用泰合志恒公司生產(chǎn)的模塊。接收模塊的主要功能包含:電視芯片的初始化,設置頻點,掃描頻點;獲取頻道信息,設置頻道;接收及停止音視頻數(shù)據(jù);測試電視信號強度大小。播放顯示模塊以三星的ARM11處理器S3C6400為核心的嵌入式系統(tǒng)[7]。

        終端的軟件部分以Linux操作系統(tǒng)為平臺[8,9],而電視播放器軟件結合泰合志恒電視接收模塊的SDK,能夠?qū)崿F(xiàn)數(shù)字電視的控制和播放。

        2 數(shù)字電視系統(tǒng)軟件設計

        數(shù)字電視的系統(tǒng)結構由主界面、電視接收模塊SDK和音視頻播放模塊3部分組成,如圖2所示。

        3個模塊的主要功能如下:

        主界面:提供數(shù)字移動電視的用戶界面,與用戶交互,提供播放電視,選臺,設置音量,設置靜音等功能。

        電視接收模塊SDK:數(shù)字電視控制引擎,封裝SPI的驅(qū)動程序,向上提供接口,用來接收數(shù)字電視信號,提供音視頻數(shù)據(jù),控制信息等。

        音視頻播放模塊:用于播放音視頻數(shù)據(jù)。

        2.1 主界面

        主界面完成的具體工作包含:搜索可用的電視頻點;選擇收看的電視頻道;檢測當前的信號強度;讀取接收到的音視頻數(shù)據(jù);對接收到的音視頻數(shù)據(jù)進行解碼;播放解碼后的音視頻數(shù)據(jù);對當前播放的節(jié)目進行錄像;調(diào)節(jié)音量大?。混o音功能。

        主界面利用調(diào)用泰合電視接收模塊SDK,通過SPI驅(qū)動程序讀寫數(shù)據(jù),并將接收到的CMMB復用子幀解析成H.264格式的視頻數(shù)據(jù),AAC格式的音頻數(shù)據(jù)和其他數(shù)據(jù)。然后調(diào)用播放器模塊,將H.264格式的視頻數(shù)據(jù)和AAC格式的音頻數(shù)據(jù)解碼并播放。

        2.2 電視接收模塊SDK

        電視接收模塊SDK提供對CMMB電視信號的控制,包括:電視芯片的初始化,設置頻點,掃描頻點;得到頻道信息,設置頻道;接收及停止音視頻數(shù)據(jù);測試電視信號強度大小。

        該模塊主要由數(shù)據(jù)處理模塊及信號控制模塊2個子模塊組成。

        數(shù)據(jù)處理子模塊在打開引擎時,會生成一個線程,這個線程用來讀取CMMB信號,并進行分析、處理,其流程如圖3所示。

        這個子模塊是一個死循環(huán),在循環(huán)中,先通過一個標志進行判斷,如果需要處理數(shù)據(jù),首先讀取一幀數(shù)據(jù),如果沒有數(shù)據(jù),則阻塞在這兒。然后對這幀數(shù)據(jù)進行分析,分別放入音頻,視頻,其他數(shù)據(jù)的緩沖區(qū),最后,調(diào)用回調(diào)函數(shù)對各種數(shù)據(jù)進行處理,將音視頻數(shù)據(jù)發(fā)送給音視頻播放模塊來播放。

        另一個子模塊,信號控制模塊主要是提供控制接口讓上層調(diào)用,以完成對CMMB信號的處理。該子模塊主要包含以下功能接口函數(shù):引擎的初始化:創(chuàng)建讀數(shù)據(jù)線程,啟動初始化;引擎的打開:對電視芯片初始化;設置頻點:設置當前頻點;得到ESG信息:從信號中提取ESG信息并分析;關閉引擎:清除用到的資源,硬件重置位;得到頻道信息列表:發(fā)送請求,分析頻道信號;設置頻道:設置當前頻道;得到參數(shù):能得到信號強度,當前頻道等參數(shù)。

        2.3 音視頻播放模塊

        音視頻播放由3個線程來完成。這3個線程分別為視頻處理線程、音頻處理線程、數(shù)據(jù)接收線程。

        視頻處理線程:

        (1) 先判斷緩沖區(qū)隊列有沒有視頻數(shù)據(jù),如果沒有,休眠10 ms;

        (2) 有數(shù)據(jù)的話,因為視頻數(shù)據(jù)是根據(jù)時間戳順序作為隊列放在緩沖區(qū)的,取出第一幀,判斷是否已經(jīng)過時,如果是很老的數(shù)據(jù),已經(jīng)錯過了播放時間,則判斷幀類型,如果是關鍵幀,則解碼并顯示,否則,丟掉這一幀,然后轉(zhuǎn)到第(1)步;

        (3) 否則,判斷這一幀是否到了播放時間,如果是,則將這幀數(shù)據(jù)解碼并顯示,然后轉(zhuǎn)到第(1)步;

        (4) 如果沒有到播放時間,則休眠10 ms。然后轉(zhuǎn)到第(1)步。

        音頻處理線程:

        (1) 先判斷緩沖區(qū)隊列有沒有音頻數(shù)據(jù),如果沒有,休眠10 ms;

        (2) 有數(shù)據(jù)的話,因為音頻數(shù)據(jù)是根據(jù)時間戳順序作為隊列放在緩沖區(qū)的,取出第一幀,判斷是否已經(jīng)過時,如果是很老的數(shù)據(jù),已經(jīng)錯過了播放時間,則丟棄,然后轉(zhuǎn)到第(1)步;

        (3) 否則,判斷是否到了播放時間,如果是,則將這幀數(shù)據(jù)解碼并播放,然后轉(zhuǎn)到第(1)步;

        (4) 如果沒有到播放時間,則休眠10 ms。然后轉(zhuǎn)到第(1)步。

        數(shù)據(jù)接收線程:數(shù)據(jù)接收線程不屬于播放器模塊,它是電視接收模塊的一部分。

        (1) 如果有數(shù)據(jù)到來,判斷有沒有視頻數(shù)據(jù),如果有,將它們?nèi)坎迦氲揭曨l緩沖區(qū);

        (2) 判斷有沒有音頻數(shù)據(jù),如果有,將它們都插入到音頻緩沖區(qū);

        (3) 阻塞,等待數(shù)據(jù)到來;

        (4) 當有數(shù)據(jù)到來時,轉(zhuǎn)到第(1)步。

        音視播放器模塊共有4個子模塊:緩沖區(qū)管理、音視頻同步、音視頻解碼、視頻顯示。

        2.3.1 緩沖區(qū)管理

        一共設計2個隊列,音頻緩沖隊列,視頻緩沖隊列。每幀數(shù)據(jù)放入緩沖區(qū),成員分別為幀長,幀類型(視頻有,音頻無),時間戳,數(shù)據(jù)指針。幀長表示幀數(shù)據(jù)長度,幀類型里,1表示關鍵幀,0表示非關鍵幀,時間戳表示幀數(shù)據(jù)播放的時間,數(shù)據(jù)指針指向幀數(shù)據(jù)緩沖區(qū)。當有新的數(shù)據(jù)到來時,構造一個幀成員,填入各項參數(shù),然后根據(jù)時間戳,將他插入到緩沖隊列,播放時間近的放在前面。流程如下:

        (1) 首先構造一個幀緩沖成員;

        (2) 按照幀數(shù)據(jù)內(nèi)容填充幀緩沖;

        (3) 根據(jù)時間戳,按照近的在前面的原則,放入緩沖區(qū)隊列。

        2.3.2 音視頻同步

        音視頻數(shù)據(jù)始終與系統(tǒng)時間進行同步,起初初始化時,先在緩沖區(qū)存放1 s的數(shù)據(jù)。因為系統(tǒng)時間與發(fā)送的數(shù)據(jù)時間戳不一定相同,所以不用絕對時間,而是以緩沖區(qū)的第一幀時間戳為開始時間,后面的數(shù)據(jù)都以與這幀數(shù)據(jù)的時間差這個相對時間為準。

        視頻和系統(tǒng)時間同步的流程如下:

        (1) 判斷緩沖隊列是否為空,如果是空,休眠10 ms;

        (2) 如果非空,從緩沖隊列取出一幀,判斷這幀數(shù)據(jù)是否已經(jīng)過時,如果超過播放時間100 ms以上,則判斷幀類型,如果是非關鍵幀,丟掉這幀數(shù)據(jù),否則處理這幀數(shù)據(jù),然后跳到第(1)步;

        (3) 如果這幀數(shù)據(jù)剛剛超過播放時間并且超過時間不超過100 ms,則處理這幀數(shù)據(jù),然后跳到第(1)步。

        音頻和系統(tǒng)時間同步的處理流程如下:

        (1) 判斷音頻緩沖區(qū)是否為空,如果是空,休眠10 ms;

        (2) 如果非空,取出一幀數(shù)據(jù),判斷是否已經(jīng)超過播放時間100 ms,如果是,丟棄這幀數(shù)據(jù),跳到第(1)步;

        (3) 否則,處理這幀數(shù)據(jù),跳到第(1)步。

        2.3.3 音視頻解碼

        數(shù)字移動電視信號目前音頻采用的是AAC編碼[10],利用開源解碼庫libfaad2來解碼,libfaad2的使用流程如下:

        (1) 首先對解碼器進行配置,設置一些解碼參數(shù),例如采樣率,聲道數(shù)等;

        (2) 然后初始化解碼器;

        (3) 如果有需要解碼的音頻幀,依次調(diào)用NeAACDecDecode進行解碼;

        (4) 當音頻幀都解碼完畢,需要關閉解碼器。

        三星的S3C6400芯片提供了多種格式視頻的硬件編解碼器,簡稱為MFC(Multi-format Video Codec),支持的功能有:MPEG-4 Simple Profile 編解碼;H.264/AVC Baseline Profile 編解碼;H.263 P3 編解碼;VC-1(WMV9)Main Profile 編解碼;支持多任務,如同時完成1路編碼和3路解碼;支持多格式,如同時進行MPEG-4編碼和H.264解碼。理論上MFC性能可以達到全雙工的720*480 30幀/s(或720*576 25幀/s)的編解碼。

        MFC驅(qū)動負責直接控制MFC硬件完成實際的編解碼操作,提供類似字符設備的接口;MFC API封裝了底層驅(qū)動的控制接口,給上層提供函數(shù)調(diào)用的接口方式,解碼器調(diào)用流程如圖4所示。

        2.3.4 視頻顯示

        對于解碼后的數(shù)據(jù),首先要將YUV格式轉(zhuǎn)換為RGB格式,轉(zhuǎn)換可以使用硬件來進行。三星的S3C6400芯片提供的PostProcessor(以下簡稱Post或PP)支持的功能有:視頻/圖像的縮放;視頻格式轉(zhuǎn)換;顏色空間轉(zhuǎn)換(RGB<->YUV);視頻輸入支持420,422格式,輸出支持YCbCr420,YCbCr422格式;圖像格式支持16位RGB(565格式)、24位RGB;最大分辨率支持2 048×2 048;支持單幀模式(Per Frame Run Mode)和自動模式(Free Run Mode)。

        3 結 語

        本數(shù)字電視系統(tǒng)能夠?qū)崿F(xiàn)穩(wěn)定可靠的對CMMB信號的控制并具有完善的正常或異常退出機制。接收CMMB標準(H.264 320*240/AAC)的音視頻數(shù)據(jù)時,播放速率達到25幀/s。畫面流暢,停頓少,沒有明顯的馬賽克。界面友好,操作簡便,功能穩(wěn)定,同時具有

        較高的實時性。

        參考文獻

        [1]解偉.移動多媒體廣播(CMMB)技術與發(fā)展[J].電視技術,2008,32(4):4-7.

        [2]毛劍慧,黑勇,喬樹山,等.CMMB 系統(tǒng)接收機同步及信道估計設計[J].微電子學與計算機,2008,25(5):124-127.

        [3]Taura K,Tsujishita M,Takea M.A Digital Audio Broadcasting Receiver [J].IEEE Trans.on Consumer Electronics,1996,42(3):322- 327.

        [4]國家廣播電影電視總局.GY/T 220.1- 2006,移動多媒體廣播 第一部分:廣播信道幀結構、信道編碼和調(diào)制[S].2006.

        [5]國家廣播電影電視總局.GY/T 220.2- 2006,移動多媒體廣播 第二部分:復用[S].2006.

        [6]楊慶華.中國移動多媒體廣播標準體系介紹[J].現(xiàn)代電視技術,2008,20(2):14-18.

        [7]金敏,周翔,金梁.嵌入式系統(tǒng):組成、原理與設計編程[M].北京:人民郵電出版社,2006.

        [8][美]博韋,西斯特.深入理解Linux內(nèi)核[M].2版.陳莉君,馮銳,牛欣源,譯.北京:中國電力出版社,2004.

        [9]馬季蘭,彭新光.Linux操作系統(tǒng)[M].北京:電子工業(yè)出版社,2002.

        [10]Takagi K,Miyaji S,Sakazawa S.Conversion of MP3 to AAC in the Compressed Domain[J].IEEE Multimedia Signal Processing,2006,8(10):132-135.

        亚洲av无码国产精品麻豆天美 | 色综合久久精品中文字幕| 成熟丰满熟妇高潮xxxxx| 色窝窝无码一区二区三区2022| 日韩欧美国产丝袜视频| 国产成人自产拍免费视频| 久久狠狠爱亚洲综合影院| 日本a一区二区三区在线| 亚洲视频观看一区二区| 麻豆国产精品久久天堂 | 久久精品伊人久久精品| 中文字幕一区二区精品视频| 亚洲欧美色一区二区三区| 131美女爱做视频| 狠狠爱无码一区二区三区| 永久免费毛片在线播放| 成人自拍三级在线观看| 亚洲视频在线观看一区二区三区| 亚洲最好看的中文字幕| 久久久亚洲av成人网站| 欧美大成色www永久网站婷| 国产黄a三级三级三级av在线看 | 亚洲第一最快av网站| 日本精品人妻无码77777| 欧美1区二区三区公司| 国产午夜三级精品久久久| 曰日本一级二级三级人人| 男人扒开女人双腿猛进视频| 天堂8中文在线最新版在线| 天堂在线观看av一区二区三区| 亚洲国产一区二区三区在观看| 亚洲女同性恋第二区av| 亚洲图片自拍偷图区| 18禁黄网站禁片免费观看女女| 成年午夜无码av片在线观看| 无码AV大香线蕉伊人久久| 成人爽a毛片在线播放| 无码a级毛片免费视频内谢| 久久久久人妻一区精品色欧美| 久久无码高潮喷水| 国产成人AV乱码免费观看|