基于DirectFB的嵌入式播放器設計
摘要:隨著(zhù)嵌入式設備應用越來(lái)越普及,其對圖形處理功能提出了更高的要求。因此輕量、高效的基于Framebuffer的DirectFB庫的實(shí)現方案受到越來(lái)越多的嵌入式工程師的青睞。本文首先對DirectFB進(jìn)行了介紹,接著(zhù)提出了一種新的基于DirectFB的嵌入式播放器設計方案。該方案相比于其他嵌入式GUI開(kāi)發(fā)的播放器能夠有效地降低資源的消耗,適用于各種中低端的場(chǎng)合,同時(shí)具備良好的可移植性。
關(guān)鍵詞:DirectFB圖形庫;幀緩存;Lite界面開(kāi)發(fā);FFmpeg多媒體庫;Linux操作系統;嵌入式播放器
1 概述
隨著(zhù)嵌入式的普及和發(fā)展,嵌入式設備的功能越來(lái)越強大,用戶(hù)對嵌入式設備的要求也越來(lái)越高。各種多媒體應用程序被移植到了嵌入式系統中,是否能夠播放音視頻是人們衡量和購買(mǎi)嵌入式設備的基本要求之一。本文提出了一種基于DirectFB嵌入式播放器解決方案,有效地降低嵌入式系統的資源消耗,適用于CPU頻率小于400MHz的中低端嵌入式系統。DirectFB是一個(gè)輕量級的GUI開(kāi)發(fā)庫,它通過(guò)Framebuffer以及回調函數,實(shí)現了對硬件設備的完全抽象,加速和簡(jiǎn)化了圖形操作。
本文首先對DirectFB進(jìn)行了詳細的介紹,接著(zhù)提出了一種寬松的、可分解的嵌入式播放器設計方案。該方案資源消耗少、可移植性強、系統各個(gè)模塊間依賴(lài)度小,使得用戶(hù)能夠根據自己的系統需求快速設計滿(mǎn)足自己要求的播放器。
2 DirectFB簡(jiǎn)介
2.1 DirectFB的整體框架
DirectFB必須通過(guò)Linux下Framebuffer驅動(dòng)來(lái)訪(fǎng)問(wèn)硬件設備,它在Framebuffer的基礎上提供了圖形設備的加速、輸入設備處理提取、透明窗口和多重顯示層的功能。另外DirectFB設計之初就充分考慮了嵌入式系統的固有特性,體積小巧,資源消耗低。作為嵌入式系統中強大的圖形處理庫,DirectFB成為L(cháng)inux下一代處理的一個(gè)新標準(CELF AVG1.0標準)。圖1是DirectFB的整體框架。
2.2 DirectFB接口描述
DirectFB提供了一套C接口來(lái)方便用戶(hù)進(jìn)行界面開(kāi)發(fā),例如IDirectFBSurface接口提供了對于文本、BILT、畫(huà)線(xiàn)以及畫(huà)矩形的操作。IDir ectFBFont接口提供了對字體的操作,而IDirectFBVideo接口提供了對多媒體進(jìn)行播放控制的操作。表1對DirectFB接口進(jìn)行了詳細的描述。
評論