在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于S3C6400的移動多媒體廣播終端設(shè)計

            基于S3C6400的移動多媒體廣播終端設(shè)計

            作者: 時間:2009-05-07 來源:網(wǎng)絡(luò) 收藏

            (2)判斷有沒有音頻數(shù)據(jù),如果有,將它們都插入到音頻緩沖區(qū);
            (3)阻塞,等待數(shù)據(jù)到來;
            (4)當(dāng)有數(shù)據(jù)到來時,轉(zhuǎn)到第(1)步。
            音視播放器模塊共有4個子模塊:緩沖區(qū)管理、音視頻同步、音視頻解碼、視頻顯示。
            2.3.1 緩沖區(qū)管理
            一共2個隊(duì)列,音頻緩沖隊(duì)列,視頻緩沖隊(duì)列。每幀數(shù)據(jù)放入緩沖區(qū),成員分別為幀長,幀類型(視頻有,音頻無),時間戳,數(shù)據(jù)指針。幀長表示幀數(shù)據(jù)長度,幀類型里,1表示關(guān)鍵幀,0表示非關(guān)鍵幀,時間戳表示幀數(shù)據(jù)播放的時間,數(shù)據(jù)指針指向幀數(shù)據(jù)緩沖區(qū)。當(dāng)有新的數(shù)據(jù)到來時,構(gòu)造一個幀成員,填入各項(xiàng)參數(shù),然后根據(jù)時間戳,將他插入到緩沖隊(duì)列,播放時間近的放在前面。流程如下:
            (1)首先構(gòu)造一個幀緩沖成員;
            (2)按照幀數(shù)據(jù)內(nèi)容填充幀緩沖;
            (3)根據(jù)時間戳,按照近的在前面的原則,放入緩沖區(qū)隊(duì)列。
            2.3.2 音視頻同步
            音視頻數(shù)據(jù)始終與系統(tǒng)時間進(jìn)行同步,起初初始化時,先在緩沖區(qū)存放1 s的數(shù)據(jù)。因?yàn)橄到y(tǒng)時間與發(fā)送的數(shù)據(jù)時間戳不一定相同,所以不用絕對時間,而是以緩沖區(qū)的第一幀時間戳為開始時間,后面的數(shù)據(jù)都以與這幀數(shù)據(jù)的時間差這個相對時間為準(zhǔn)。
            視頻和系統(tǒng)時間同步的流程如下:
            (1)判斷緩沖隊(duì)列是否為空,如果是空,休眠10 ms;
            (2)如果非空,從緩沖隊(duì)列取出一幀,判斷這幀數(shù)據(jù)是否已經(jīng)過時,如果超過播放時間100 ms以上,則判斷幀類型,如果是非關(guān)鍵幀,丟掉這幀數(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編碼,利用開源解碼庫libfaad2來解碼,libfaad2的使用流程如下:
            (1)首先對進(jìn)行配置,設(shè)置一些解碼參數(shù),例如采樣率,聲道數(shù)等;
            (2)然后初始化;
            (3)如果有需要解碼的音頻幀,依次調(diào)用NeAAC―DecDecode進(jìn)行解碼;
            (4)當(dāng)音頻幀都解碼完畢,需要關(guān)閉
            三星的芯片提供了多種格式視頻的硬件編解碼器,簡稱為MFC(Multi―format Video Codec),支持的功能有:MPEG一4 Simple Profile編解碼;H.264/AVC Baseline Profile編解碼;H.263 P3編解碼;VC一1(WMV9)Main Profile編解碼;支持多任務(wù),如同時完成1路編碼和3路解碼;支持多格式,如同時進(jìn)行MPEG一4編碼和H.264解碼。理論上MFC性能可以達(dá)到全雙工的720*480 30幀/s(或720*576 25幀/s)的編解碼。
            MFC驅(qū)動負(fù)責(zé)直接控制MFC硬件完成實(shí)際的編解碼操作,提供類似字符設(shè)備的接口;MFC API封裝了底層驅(qū)動的控制接口,給上層提供函數(shù)調(diào)用的接口方式,解碼器調(diào)用流程如圖4所示。

            本文引用地址:http://www.biyoush.com/article/152507.htm

            2.3.4 視頻顯示

            linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉