Summary

Gst-openmax is a GStreamer plug-in for OpenMAX IL API (http://cgit.freedesktop.org/gstreamer/gst-openmax/).

This spec intend to make gst-omx compatible with multi vendor OpenMax (OMX) implementations.

Rationale

OMX implementation are very segmented today and each vendor have it own version the gst-openmax to fit with. A unique version of gst-openmax will request less effort to maintain over gstreamer evolutions and avoid fragmentation.

Assumptions

All vendors use OMX bellagio core and have OMX audio/video decoder/encoder. gst-openmax version will be at least 0.10.1

Design

  • Define a list of gstreamer parser/demuxer/muxer to investiguate their interactions with OMX compoments
    • avidemux / avimux
    • flvdemux / flvmux
    • qtdemux /qtmux
    • asfdemux / asfmux
    • h264parse
    • webmmux
  • Import zero copy spec into gst-openmax
  • add unitary test suite in gst-openmax
  • Define which input parameters are needed by OMX for each format
    • h264
    • h263
    • mp3
    • aac

Implementation

Test/Demo Plan

add unitary test plan in gst-openmax

provide test files for each format (h264,h263,mpeg4 and mp3,aac)

Sequence Diagrams:

The following sequence diagrams propose a new implementation of gst-openmax to allow zero copy between OMX element:

sequence1.png

sequence3.png

sequence2.png

Bellagio OMX components conformance:

  • mp3 (libmad)
    • Compatible with mp3parse
  • mpeg4
    • Compatible with avidemux


WorkingGroups/Middleware/Multimedia/Specs/1105/ConsolidateGtsOmxMultivendor (last modified 2011-05-05 13:04:39)