新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Intel Sitsang平臺的便攜式多媒體中心

        基于Intel Sitsang平臺的便攜式多媒體中心

        作者: 時間:2012-07-25 來源:網絡 收藏

        概述

        本文引用地址:http://www.104case.com/article/148725.htm

        開發專為嵌入式處理器PXA255設計的一個綜合開發。PXA255 是推出的取代StrongARMSA1110 的新一代嵌入式應用處理器,它擁有Thumb 壓縮指令、64位長乘法指令、擴展型DSP 指令等先進特性,并集成了多通信信道、LCD控制器、增強型存儲控制器、PCMCIA/CF 控制器以及通用I/O 口。 開發以PXA255為核心,配備了存儲器、液晶顯示屏、網卡、聲卡、USB控制器等設備,提供了豐富的外圍數據接口,包括IrDA、UART、USB擴展槽等外部數據接口。

        本設計以開發板作為嵌入式開發平臺,將“隨身看”、影音錄制、視頻輸出、海量存儲、視頻點播、網絡下載等多種功能融為一體,實現一個兼顧家庭娛樂和戶外便攜的

        ; 系統總體方案

        根據Sitsang開發平臺的資源情況以及設計的目標要求,本設計在原有的Sitsang開發平臺上擴展了一塊視頻擴展板,視頻擴展板的主要功能是視頻信號的輸出和錄制。系統總體結構如圖1所示。

        系統框圖

        圖1 系統框圖

        系統實現

        媒體播放器

        功能是本系統的重點,所以媒體播放器在本系統中具有舉足輕重的地位。為了能夠流暢播放多種格式的視頻文件,本系統在Sitsang開發板上移植、修改并優化了Linux媒體播放器MPlayer。

        MPlayer是Linux 上最優秀的播放器。它能使用眾多的編解碼器,支持廣泛的輸出設備。

        MPlayer在Sitsang板上播放時,顏色會出現偏差;正常模式不能在FrameBuffer的中間顯示;帶-fs的全屏參數播放后,只是將播放位置移到中間,并不放大,而且該模式不支持在播放時通過鍵盤事件觸發。如果要放大屏幕,需要加-vf scale=:參數,但會導致播放極不流暢。因此對MPlayer的優化主要集中在以下四個方面:一、校正MPlayer的色彩;二、修改播放顯示位置,使之符合MPlayer圖形界面的調用;三、提高MPlayer放大時的速度,定義全屏時放大倍數為1.5倍,優化放大部分的運算;四、在播放時通過鍵盤事件觸發全屏模式。

        MPlayer自帶的mp3lib浮點音頻解碼庫在Sitsang開發板上的解碼效率很低,因此使用定點運算的libmad音頻解碼庫替代原有的mp3lib庫進行音頻解碼。

        MPlayer圖形界面在Qtopia視窗環境下無法運行。為了方便用戶使用,本系統提供了MPlayer在Qtopia下的用戶圖形界面。為了能將圖形界面的控制命令及時傳遞給MPlayer,使用MPlayer的-input選項,通過一個FIFO從GUI向后端程序傳遞控制信息。

        通過上述優化、修改后的MPlayer,能夠滿足系統方案中提出的流暢播放各種格式音、視頻文件的要求。

        視頻輸出

        本系統的視頻輸出電路(圖2)采用將Sitsang開發板上的LCD輸出直接映射到電視機上的方式。這樣做的好處是:兩個輸出完全同步,媒體播放器可以不必理會輸出對象的改變。 具體的實現是通過硬件完成的。LCD控制器輸出的視頻信號(RGB數字信號)通過Philips公司的視頻編碼芯片SAA7102轉換成模擬復合視頻信號(CVBS)和分量視頻信號(Y/C),然后傳輸給電視機。因為LCD輸出的時鐘頻率和SAA7102工作的時鐘頻率不同步,數據寬度也不相同,所以在系統中加了一片FIFO(74V3690),起數據緩存、時鐘轉換及數據寬度轉換的作用。在每幀信號開始的時候,由VSYNC信號實現三者同步。由于LCD輸出的數據寬度是SAA7102輸入數據的兩倍,所以用了一個倍頻電路將SAA7102的時鐘信號加倍,以滿足數據傳輸的速率要求。

        視頻輸出電路框圖

        圖2 視頻輸出電路框圖


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 牙克石市| 遂川县| 晋城| 和林格尔县| 荔浦县| 西平县| 乳源| 武宁县| 工布江达县| 泗水县| 卓尼县| 清水河县| 堆龙德庆县| 都安| 元江| 宕昌县| 来安县| 临海市| 宁波市| 汪清县| 永安市| 铁岭县| 阿克苏市| 前郭尔| 合山市| 秭归县| 晋城| 剑河县| 蒙城县| 洛浦县| 加查县| 东宁县| 中江县| 固安县| 昆明市| 涞源县| 镇赉县| 溧阳市| 新安县| 扶绥县| 开阳县|