OpenMAX (Open Media Acceleration), often shortened as "OMX", is a non-proprietary and royalty-free cross-platform set of C-language programming interfaces. It provides abstractions for routines that are especially useful for processing of audio, video, and still images. It is intended for low power and embedded system devices (including smartphones, game consoles, digital media players, and set-top boxes) that need to efficiently process large amounts of multimedia data in predictable ways, such as video codecs, graphics libraries, and other functions for video, image, audio, voice and speech. OpenMAX provides three layers of interfaces: application layer (AL), integration layer (IL) and development layer (DL). OpenMAX is managed by the non-profit technology consortium Khronos Group. History Initially announced in July 2004. The OpenMAX Working Group was initially founded by members ARM, Motorola, Samsung, STMicroelectronics, and Texas Instruments. Version 1.0 of the specification was published in December 2005. The last draft produced by the OpenMAX Working Group (1.2.0) dates from 2011 and no product has been declared as conformant since 2012. The OpenMAX specification were never updated to support recent codecs like HEVC or VP9, making Android the de facto source of updates to the OpenMAX IL standard. Layers OpenMAX AL is the interface between multimedia applications, such as a media player, and the platform media framework. It allows companies that develop applications to easily migrate their applications to different platforms (customers) that support the OpenMAX AL application programming interface (API). OpenMAX IL is the interface between media framework, (such as StageFright or MediaCodec API on Android, DirectShow on Windows, FFmpeg or GStreamer on Linux), and a set of multimedia components (such as an audio or video codecs). It allows companies that build platforms (e.g. allowing an implementation of an MP3 player) to easily change components like MP3 decoders and Equalizer effects and buy components for their platform from different vendors. OpenMAX DL is the interface between physical hardware, such as digital signal processor (DSP) chips, CPUs, GPUs, and software, like video codecs and 3D engines. It allows companies to easily integrate new hardware that supports OpenMAX DL without reoptimizing their low level software. Application layer OpenMAX AL accommodates common multimedia application use cases by standardizing a set of representative objects, as well as interfaces on those objects, to control and configure them. The OpenMAX AL API is divided into two profiles: Media Player and Media Player/Recorder. A platform can be compliant to one or