1
'gst-openmax' is a GStreamer plug-in that allows communication with OpenMAX IL
2
components.
3
4
OpenMAX IL is an industry standard that provides an abstraction layer for
5
computer graphics, video, and sound routines.
6
7
This project is a collaboration between Nokia, NXP, Collabora,
8
STMicroelectronics, Texas Instruments, and the open source community.
9
10
== What's the status? ==
11
12
Many component wrappers have been developed for different OpenMAX IL
13
implemenatations.
14
15
=== ti (OMAP-3430) ===
16
17
Hardware-accelerated through DSP.
18
19
 * H.264 video encoder/decoder
20
 * H.263 video encoder/decoder
21
 * MPEG4 video encoder/decoder
22
 * WMV video decoder
23
 * JPEG image encoder
24
25
=== Maemo ===
26
27
Uses bellagio.
28
29
 * MP3 audio decoder
30
 * AAC audio encoder/decoder
31
 * G.711 audio encoder/decoder
32
 * G.719 audio encoder/decoder
33
 * iLBC audio encoder/decoder
34
 * AMR-NB audio encoder/decoder
35
 * AMR-WB audio encoder/decoder
36
37
=== bellagio ===
38
39
 * MP3 audio decoder (libmad)
40
 * Vorbis audio decoder
41
 * MPEG4 video decoder (FFmpeg)
42
 * H.263 video decoder (FFmpeg)
43
 * Audio sink (ALSA... not maintained)
44
45
46
We are missing:
47
48
 * OpenMAX IL facilities (tunneling, clock)
49
50
== How to try it ==
51
52
It depends on your platform, but if want to try on x86 you can use Bellagio's
53
implementation:
54
55
=== omxil ===
56
57
So, first install Bellagio's omxil from http://omxil.sourceforge.net/, or
58
http://downloads.sourceforge.net/omxil/libomxil-bellagio-0.9.1.tar.gz. Version
59
0.9.1 is recommended.
60
61
Install as usual:
62
63
        ./configure --prefix="$HOME/omx"
64
        make
65
        make install
66
67
Register the components:
68
69
        $HOME/omx/bin/omxregister-bellagio -v
70
71
You'll get an output like this:
72
73
         Scanning directory /home/felipec/omx/lib/bellagio/
74
75
         Scanning openMAX libary /home/felipec/omx/lib/bellagio/libomxvorbis.so
76
        Component OMX.st.audio_decoder.ogg.single registered
77
          Specific role OMX.st.audio_decoder.ogg.single registered
78
79
         1 OpenMAX IL ST static components with 1 roles succesfully scanned
80
81
Make sure you have:
82
 * "OMX.st.audio_decoder.mp3.mad" for MP3 decoding
83
 * "OMX.st.audio_decoder.ogg.single" for Vorbis decoding
84
 * "OMX.st.video_decoder.mpeg4" for MPEG4 video decoding
85
86
=== omap ===
87
88
In order to use gst-openmax on Texas Instruments' OMAP platform you first need
89
to apply the patches in 'patches/omap'.
90
91
=== gst-openmax ===
92
93
        ./autogen.sh --noconfigure
94
        ./configure --prefix="$HOME/omx"
95
        make install
96
97
=== Running ===
98
99
To actually use the plug-in:
100
101
        export GST_PLUGIN_PATH=$HOME/omx/lib/gstreamer-0.10
102
        export LD_LIBRARY_PATH=$HOME/omx/lib
103
104
You'll be able to play audio and video with MP3, Vorbis, MPEG4, H.264, or H.263
105
content using Bellagio's components.
106
107
For MP3 you'll also need the mp3parse element, otherwise you'll get:
108
109
        GStreamer-CRITICAL **: gst_segment_clip: assertion `segment->format == format' failed
110
111
If you want to see what's happening:
112
113
        export GST_DEBUG=omx:4
114
115
== How to contribute ==
116
117
Suscribe to the mailing list, or send a direct e-mail to gstreamer-openmax@lists.sourceforge.net.
118
 * mailing list: https://lists.sourceforge.net/lists/listinfo/gstreamer-openmax
119
120
If you find any issues please fill a bug report:
121
 * http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer&component=gst-openmax
122
123
== Roadmap ==
124
125
 * Merge tunneling branch
126
 * Documentation
127
 * More unit tests
128
 * First real release
129
130
== External Links ==
131
132
 * OpenMAX's homepage: http://www.khronos.org/openmax/
133
 * Bellagio's homepage: http://omxil.sourceforge.net/