目錄
- 參考
- 背景
- 簡介
1. 參考
2. 背景
隨著消費者對音視頻萝究、語音和3D等應用需求的增長,多媒體硬件平臺的開發(fā)步伐正在加快绕娘,通常這類產(chǎn)品需要高性能處理和高數(shù)據(jù)吞吐量能力栽连。因此出現(xiàn)了各種各樣的解決方案,都旨在加速多媒體應用程序秒紧。包括:
- 具有特定多媒體擴展的通用處理器
- 底層的硬件加速器
- 包括DSPs在內(nèi)的多處理器體系結構
- 專用硬件視頻解碼器
所有這些體系結構變體的關鍵挑戰(zhàn)之一是開發(fā)有效的代碼噩茄。盡管通常都提供編譯器复颈,但是很少能夠從高級編程語言中充分利用整個體系結構的潛力沥割。其結果是凿菩,應用程序的大部分通常是用匯編語言編寫的,以專門針對硬件平臺椒拗。不同的多媒體硬件解決方案的大量涌現(xiàn)意味著軟件必須為移植到的每個新平臺重新編寫和優(yōu)化获黔。
這種執(zhí)行效率低下的結果是推遲新產(chǎn)品的引進,增加開發(fā)成本堵未,降低產(chǎn)品質(zhì)量盏触,最終在市場需求不斷增長的時候減緩了多媒體領域的創(chuàng)新。
3. 簡介
OpenMax(Open Media Acceleration)雌芽,也被稱為OMX辨嗽,是無授權費的、C語言編寫的多媒體API標準召庞,API提供了音頻、視頻忘古、靜態(tài)圖片的一些常用處理操作的接口诅诱。目標是降低將多媒體軟件移植到新的處理器和體系結構的成本和復雜性。
- 2004.07干旁,OpenMAX最初宣布炮沐,工作組最初由ARM、摩托羅拉换薄、三星等公司的成員組成。
- 2005.12轻要,1.0版本發(fā)布。
- 由非盈利技術聯(lián)盟Khronos Group管理驹碍。
- 自2012年以來沒有任何產(chǎn)品被宣布為符合標準凡恍。OpenMAX規(guī)范從來沒有更新過以支持最近的編解碼器,比如HEVC或VP9洽损,這使得Android實際上成為OpenMAX IL標準的更新源革半。
image.png
OpenMAX分為3層:
- OpenMAX AL(Application Layer又官,應用層),提供應用程序(如媒體播放器)和多媒體框架(如Android上的StageFright或MediaCodec API六敬、Windows上的DirectShow、FFmpeg或Libav普泡、GStreamer)之間的標準化接口审编。
- OpenMAX IL(Integration Layer,集成層)砰嘁,提供多媒體框架和多媒體組件(如硬件或軟件的音/視頻編解碼器)之間的標準化接口勘究。
- OpenMAX DL(Development Layer,開發(fā)層)缅阳,提供軟件(如視頻編解碼器和3D引擎)和物理硬件(如DSP景描、CPUs孤里、GPUs)之間的標準化接口橘洞,它包括音頻或視頻處理功能如fft说搅、過濾器、顏色空間轉(zhuǎn)換适肠、視頻處理等候引,用于加速編解碼等處理。