rtp: add H.261 RTP payloader and depayloader
[platform/upstream/gst-plugins-good.git] / gst / rtp / gstrtp.c
1 /* GStreamer
2  * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Library General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Library General Public License for more details.
13  *
14  * You should have received a copy of the GNU Library General Public
15  * License along with this library; if not, write to the
16  * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
17  * Boston, MA 02110-1301, USA.
18  */
19
20 #ifdef HAVE_CONFIG_H
21 #include "config.h"
22 #endif
23
24 #include <gst/tag/tag.h>
25
26 #include "gstrtpac3depay.h"
27 #include "gstrtpac3pay.h"
28 #include "gstrtpbvdepay.h"
29 #include "gstrtpbvpay.h"
30 #include "gstrtpceltdepay.h"
31 #include "gstrtpceltpay.h"
32 #include "gstrtpdvdepay.h"
33 #include "gstrtpdvpay.h"
34 #include "gstrtpgstdepay.h"
35 #include "gstrtpgstpay.h"
36 #include "gstrtpilbcdepay.h"
37 #include "gstrtpilbcpay.h"
38 #include "gstrtppcmupay.h"
39 #include "gstrtppcmapay.h"
40 #include "gstrtppcmadepay.h"
41 #include "gstrtppcmudepay.h"
42 #include "gstrtpg722depay.h"
43 #include "gstrtpg722pay.h"
44 #include "gstrtpg723depay.h"
45 #include "gstrtpg723pay.h"
46 #include "gstrtpg726depay.h"
47 #include "gstrtpg726pay.h"
48 #include "gstrtpg729depay.h"
49 #include "gstrtpg729pay.h"
50 #include "gstrtpgsmpay.h"
51 #include "gstrtpgsmdepay.h"
52 #include "gstrtpamrpay.h"
53 #include "gstrtpamrdepay.h"
54 #include "gstrtpmpapay.h"
55 #include "gstrtpmpadepay.h"
56 #include "gstrtpmparobustdepay.h"
57 #include "gstrtpmpvdepay.h"
58 #include "gstrtpmpvpay.h"
59 #include "gstrtph261pay.h"
60 #include "gstrtph261depay.h"
61 #include "gstrtph263pdepay.h"
62 #include "gstrtph263ppay.h"
63 #include "gstrtph263depay.h"
64 #include "gstrtph263pay.h"
65 #include "gstrtph264depay.h"
66 #include "gstrtph264pay.h"
67 #include "gstrtpj2kdepay.h"
68 #include "gstrtpj2kpay.h"
69 #include "gstrtpjpegdepay.h"
70 #include "gstrtpjpegpay.h"
71 #include "gstrtpL16depay.h"
72 #include "gstrtpL16pay.h"
73 #include "gstrtpL24depay.h"
74 #include "gstrtpL24pay.h"
75 #include "gstasteriskh263.h"
76 #include "gstrtpmp1sdepay.h"
77 #include "gstrtpmp2tdepay.h"
78 #include "gstrtpmp2tpay.h"
79 #include "gstrtpmp4vdepay.h"
80 #include "gstrtpmp4vpay.h"
81 #include "gstrtpmp4adepay.h"
82 #include "gstrtpmp4apay.h"
83 #include "gstrtpmp4gdepay.h"
84 #include "gstrtpmp4gpay.h"
85 #include "gstrtpqcelpdepay.h"
86 #include "gstrtpqdmdepay.h"
87 #include "gstrtpsbcdepay.h"
88 #include "gstrtpsbcpay.h"
89 #include "gstrtpsirenpay.h"
90 #include "gstrtpsirendepay.h"
91 #include "gstrtpspeexpay.h"
92 #include "gstrtpspeexdepay.h"
93 #include "gstrtpsv3vdepay.h"
94 #include "gstrtptheoradepay.h"
95 #include "gstrtptheorapay.h"
96 #include "gstrtpvorbisdepay.h"
97 #include "gstrtpvorbispay.h"
98 #include "gstrtpvp8depay.h"
99 #include "gstrtpvp8pay.h"
100 #include "gstrtpvrawdepay.h"
101 #include "gstrtpvrawpay.h"
102 #include "gstrtpstreampay.h"
103 #include "gstrtpstreamdepay.h"
104
105 static gboolean
106 plugin_init (GstPlugin * plugin)
107 {
108   gst_tag_image_type_get_type ();
109
110   if (!gst_rtp_ac3_depay_plugin_init (plugin))
111     return FALSE;
112
113   if (!gst_rtp_ac3_pay_plugin_init (plugin))
114     return FALSE;
115
116   if (!gst_rtp_bv_depay_plugin_init (plugin))
117     return FALSE;
118
119   if (!gst_rtp_bv_pay_plugin_init (plugin))
120     return FALSE;
121
122   if (!gst_rtp_celt_depay_plugin_init (plugin))
123     return FALSE;
124
125   if (!gst_rtp_celt_pay_plugin_init (plugin))
126     return FALSE;
127
128   if (!gst_rtp_dv_depay_plugin_init (plugin))
129     return FALSE;
130
131   if (!gst_rtp_dv_pay_plugin_init (plugin))
132     return FALSE;
133
134   if (!gst_rtp_gst_depay_plugin_init (plugin))
135     return FALSE;
136
137   if (!gst_rtp_gst_pay_plugin_init (plugin))
138     return FALSE;
139
140   if (!gst_rtp_ilbc_pay_plugin_init (plugin))
141     return FALSE;
142
143   if (!gst_rtp_ilbc_depay_plugin_init (plugin))
144     return FALSE;
145
146   if (!gst_rtp_g722_depay_plugin_init (plugin))
147     return FALSE;
148
149   if (!gst_rtp_g722_pay_plugin_init (plugin))
150     return FALSE;
151
152   if (!gst_rtp_g723_depay_plugin_init (plugin))
153     return FALSE;
154
155   if (!gst_rtp_g723_pay_plugin_init (plugin))
156     return FALSE;
157
158   if (!gst_rtp_g726_depay_plugin_init (plugin))
159     return FALSE;
160
161   if (!gst_rtp_g726_pay_plugin_init (plugin))
162     return FALSE;
163
164   if (!gst_rtp_g729_depay_plugin_init (plugin))
165     return FALSE;
166
167   if (!gst_rtp_g729_pay_plugin_init (plugin))
168     return FALSE;
169
170   if (!gst_rtp_gsm_depay_plugin_init (plugin))
171     return FALSE;
172
173   if (!gst_rtp_gsm_pay_plugin_init (plugin))
174     return FALSE;
175
176   if (!gst_rtp_amr_depay_plugin_init (plugin))
177     return FALSE;
178
179   if (!gst_rtp_amr_pay_plugin_init (plugin))
180     return FALSE;
181
182   if (!gst_rtp_pcma_depay_plugin_init (plugin))
183     return FALSE;
184
185   if (!gst_rtp_pcmu_depay_plugin_init (plugin))
186     return FALSE;
187
188   if (!gst_rtp_pcmu_pay_plugin_init (plugin))
189     return FALSE;
190
191   if (!gst_rtp_pcma_pay_plugin_init (plugin))
192     return FALSE;
193
194   if (!gst_rtp_mpa_depay_plugin_init (plugin))
195     return FALSE;
196
197   if (!gst_rtp_mpa_pay_plugin_init (plugin))
198     return FALSE;
199
200   if (!gst_rtp_mpa_robust_depay_plugin_init (plugin))
201     return FALSE;
202
203   if (!gst_rtp_mpv_depay_plugin_init (plugin))
204     return FALSE;
205
206   if (!gst_rtp_mpv_pay_plugin_init (plugin))
207     return FALSE;
208
209   if (!gst_rtp_h261_pay_plugin_init (plugin))
210     return FALSE;
211
212   if (!gst_rtp_h261_depay_plugin_init (plugin))
213     return FALSE;
214
215   if (!gst_rtp_h263p_pay_plugin_init (plugin))
216     return FALSE;
217
218   if (!gst_rtp_h263p_depay_plugin_init (plugin))
219     return FALSE;
220
221   if (!gst_rtp_h263_depay_plugin_init (plugin))
222     return FALSE;
223
224   if (!gst_rtp_h263_pay_plugin_init (plugin))
225     return FALSE;
226
227   if (!gst_rtp_h264_depay_plugin_init (plugin))
228     return FALSE;
229
230   if (!gst_rtp_h264_pay_plugin_init (plugin))
231     return FALSE;
232
233   if (!gst_rtp_j2k_depay_plugin_init (plugin))
234     return FALSE;
235
236   if (!gst_rtp_j2k_pay_plugin_init (plugin))
237     return FALSE;
238
239   if (!gst_rtp_jpeg_depay_plugin_init (plugin))
240     return FALSE;
241
242   if (!gst_rtp_jpeg_pay_plugin_init (plugin))
243     return FALSE;
244
245   if (!gst_rtp_L16_pay_plugin_init (plugin))
246     return FALSE;
247
248   if (!gst_rtp_L16_depay_plugin_init (plugin))
249     return FALSE;
250
251   if (!gst_rtp_L24_pay_plugin_init (plugin))
252     return FALSE;
253
254   if (!gst_rtp_L24_depay_plugin_init (plugin))
255     return FALSE;
256
257   if (!gst_asteriskh263_plugin_init (plugin))
258     return FALSE;
259
260   if (!gst_rtp_mp1s_depay_plugin_init (plugin))
261     return FALSE;
262
263   if (!gst_rtp_mp2t_depay_plugin_init (plugin))
264     return FALSE;
265
266   if (!gst_rtp_mp2t_pay_plugin_init (plugin))
267     return FALSE;
268
269   if (!gst_rtp_mp4v_pay_plugin_init (plugin))
270     return FALSE;
271
272   if (!gst_rtp_mp4v_depay_plugin_init (plugin))
273     return FALSE;
274
275   if (!gst_rtp_mp4a_pay_plugin_init (plugin))
276     return FALSE;
277
278   if (!gst_rtp_mp4a_depay_plugin_init (plugin))
279     return FALSE;
280
281   if (!gst_rtp_mp4g_depay_plugin_init (plugin))
282     return FALSE;
283
284   if (!gst_rtp_mp4g_pay_plugin_init (plugin))
285     return FALSE;
286
287   if (!gst_rtp_qcelp_depay_plugin_init (plugin))
288     return FALSE;
289
290   if (!gst_rtp_qdm2_depay_plugin_init (plugin))
291     return FALSE;
292
293   if (!gst_rtp_sbc_depay_plugin_init (plugin))
294     return FALSE;
295
296   if (!gst_rtp_sbc_pay_plugin_init (plugin))
297     return FALSE;
298
299   if (!gst_rtp_siren_pay_plugin_init (plugin))
300     return FALSE;
301
302   if (!gst_rtp_siren_depay_plugin_init (plugin))
303     return FALSE;
304
305   if (!gst_rtp_speex_pay_plugin_init (plugin))
306     return FALSE;
307
308   if (!gst_rtp_speex_depay_plugin_init (plugin))
309     return FALSE;
310
311   if (!gst_rtp_sv3v_depay_plugin_init (plugin))
312     return FALSE;
313
314   if (!gst_rtp_theora_depay_plugin_init (plugin))
315     return FALSE;
316
317   if (!gst_rtp_theora_pay_plugin_init (plugin))
318     return FALSE;
319
320   if (!gst_rtp_vorbis_depay_plugin_init (plugin))
321     return FALSE;
322
323   if (!gst_rtp_vorbis_pay_plugin_init (plugin))
324     return FALSE;
325
326   if (!gst_rtp_vp8_depay_plugin_init (plugin))
327     return FALSE;
328
329   if (!gst_rtp_vp8_pay_plugin_init (plugin))
330     return FALSE;
331
332   if (!gst_rtp_vraw_depay_plugin_init (plugin))
333     return FALSE;
334
335   if (!gst_rtp_vraw_pay_plugin_init (plugin))
336     return FALSE;
337
338   if (!gst_rtp_stream_pay_plugin_init (plugin))
339     return FALSE;
340
341   if (!gst_rtp_stream_depay_plugin_init (plugin))
342     return FALSE;
343
344   return TRUE;
345 }
346
347 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
348     GST_VERSION_MINOR,
349     rtp,
350     "Real-time protocol plugins",
351     plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN);