Raspberry Pi detail system libraries and codecs support


Since we first talked about the Raspberry Pi there have been lots of questions about what software and libraries are will run on it, especially if your considering using it for media playback. In a post on the Raspberry Pi blog they explain what libraries are going to be available on it at launch and most important for us what codecs will be provided (MPEG4 and h.264) . If your a Linux developer or hacker you will probably know what they are talking about!

Read their post for more information, anybody thinking of trying to build a system with one of the boards?

Firstly, libraries. Any distribution will need to supply a set of closed source libraries that give access to the GPU acceleration features. The libraries that will be available are :

  • OpenGL ES 2.0
    OpenGL is a 3D library, very commonly used on desktops and embedded systems. It is defined by the Khronos Group.
  • OpenVG
    OpenVG is a 2D vector drawing library, also commonly used on desktops and embedded systems. Again, defined by the Khronos Group.
  • EGL
    EGL is an interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system.
  • OpenMAX IL
    OpenMAX supplies a set of API’s that provides abstractions for routines used during audio, video, and still images processing. OpenMAX defines three layers, this is the IL layer, which provides an interface between media framework such as Gstreamer and a set of multimedia components (such as codecs).


Two licensed codecs will be provided at launch, MPEG4 and h.264.  Codec licences have quite an impact of the cost of the device which is why there are only two at this stage. There are non-licensed Codecs such at MPEG2, VC1 etc, but for the moment they will not be accelerated by the GPU.

Dom adds: As an aside, the GPU can hardware decode H264, MPEG1/2/4, VC1, AVS, MJPG at 1080p30. It can software (but still vector accelerated) decode VP6, VP7, VP8, RV, Theora, WMV9 at DVD resolutions. We are restricted due to licensing what we can support. We should be able to support VP8, MJPG and Theora, as I believe they are license free.

Leave a Reply