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 "gstrtputils.h"
27
28 #include "gstrtpac3depay.h"
29 #include "gstrtpac3pay.h"
30 #include "gstrtpbvdepay.h"
31 #include "gstrtpbvpay.h"
32 #include "gstrtpceltdepay.h"
33 #include "gstrtpceltpay.h"
34 #include "gstrtpdvdepay.h"
35 #include "gstrtpdvpay.h"
36 #include "gstrtpgstdepay.h"
37 #include "gstrtpgstpay.h"
38 #include "gstrtpilbcdepay.h"
39 #include "gstrtpilbcpay.h"
40 #include "gstrtppcmupay.h"
41 #include "gstrtppcmapay.h"
42 #include "gstrtppcmadepay.h"
43 #include "gstrtppcmudepay.h"
44 #include "gstrtpg722depay.h"
45 #include "gstrtpg722pay.h"
46 #include "gstrtpg723depay.h"
47 #include "gstrtpg723pay.h"
48 #include "gstrtpg726depay.h"
49 #include "gstrtpg726pay.h"
50 #include "gstrtpg729depay.h"
51 #include "gstrtpg729pay.h"
52 #include "gstrtpgsmpay.h"
53 #include "gstrtpgsmdepay.h"
54 #include "gstrtpamrpay.h"
55 #include "gstrtpamrdepay.h"
56 #include "gstrtpmpapay.h"
57 #include "gstrtpmpadepay.h"
58 #include "gstrtpmparobustdepay.h"
59 #include "gstrtpmpvdepay.h"
60 #include "gstrtpmpvpay.h"
61 #include "gstrtpopusdepay.h"
62 #include "gstrtpopuspay.h"
63 #include "gstrtph261pay.h"
64 #include "gstrtph261depay.h"
65 #include "gstrtph263pdepay.h"
66 #include "gstrtph263ppay.h"
67 #include "gstrtph263depay.h"
68 #include "gstrtph263pay.h"
69 #include "gstrtph264depay.h"
70 #include "gstrtph264pay.h"
71 #include "gstrtph265depay.h"
72 #include "gstrtph265pay.h"
73 #include "gstrtpj2kdepay.h"
74 #include "gstrtpj2kpay.h"
75 #include "gstrtpjpegdepay.h"
76 #include "gstrtpjpegpay.h"
77 #include "gstrtpklvdepay.h"
78 #include "gstrtpklvpay.h"
79 #include "gstrtpL8depay.h"
80 #include "gstrtpL8pay.h"
81 #include "gstrtpL16depay.h"
82 #include "gstrtpL16pay.h"
83 #include "gstrtpL24depay.h"
84 #include "gstrtpL24pay.h"
85 #include "gstasteriskh263.h"
86 #include "gstrtpmp1sdepay.h"
87 #include "gstrtpmp2tdepay.h"
88 #include "gstrtpmp2tpay.h"
89 #include "gstrtpmp4vdepay.h"
90 #include "gstrtpmp4vpay.h"
91 #include "gstrtpmp4adepay.h"
92 #include "gstrtpmp4apay.h"
93 #include "gstrtpmp4gdepay.h"
94 #include "gstrtpmp4gpay.h"
95 #include "gstrtpqcelpdepay.h"
96 #include "gstrtpqdmdepay.h"
97 #include "gstrtpsbcdepay.h"
98 #include "gstrtpsbcpay.h"
99 #include "gstrtpsirenpay.h"
100 #include "gstrtpsirendepay.h"
101 #include "gstrtpspeexpay.h"
102 #include "gstrtpspeexdepay.h"
103 #include "gstrtpsv3vdepay.h"
104 #include "gstrtptheoradepay.h"
105 #include "gstrtptheorapay.h"
106 #include "gstrtpvorbisdepay.h"
107 #include "gstrtpvorbispay.h"
108 #include "gstrtpvp8depay.h"
109 #include "gstrtpvp8pay.h"
110 #include "gstrtpvp9depay.h"
111 #include "gstrtpvp9pay.h"
112 #include "gstrtpvrawdepay.h"
113 #include "gstrtpvrawpay.h"
114 #include "gstrtpstreampay.h"
115 #include "gstrtpstreamdepay.h"
116 #include "gstrtpredenc.h"
117 #include "gstrtpreddec.h"
118 #include "gstrtpulpfecdec.h"
119 #include "gstrtpulpfecenc.h"
120 #include "gstrtpreddec.h"
121 #include "gstrtpredenc.h"
122 #include "gstrtpstorage.h"
123
124 static gboolean
plugin_init(GstPlugin * plugin)125 plugin_init (GstPlugin * plugin)
126 {
127 gst_tag_image_type_get_type ();
128
129 rtp_quark_meta_tag_video =
130 g_quark_from_static_string (GST_META_TAG_VIDEO_STR);
131 rtp_quark_meta_tag_audio =
132 g_quark_from_static_string (GST_META_TAG_AUDIO_STR);
133
134 if (!gst_rtp_ac3_depay_plugin_init (plugin))
135 return FALSE;
136
137 if (!gst_rtp_ac3_pay_plugin_init (plugin))
138 return FALSE;
139
140 if (!gst_rtp_bv_depay_plugin_init (plugin))
141 return FALSE;
142
143 if (!gst_rtp_bv_pay_plugin_init (plugin))
144 return FALSE;
145
146 if (!gst_rtp_celt_depay_plugin_init (plugin))
147 return FALSE;
148
149 if (!gst_rtp_celt_pay_plugin_init (plugin))
150 return FALSE;
151
152 if (!gst_rtp_dv_depay_plugin_init (plugin))
153 return FALSE;
154
155 if (!gst_rtp_dv_pay_plugin_init (plugin))
156 return FALSE;
157
158 if (!gst_rtp_gst_depay_plugin_init (plugin))
159 return FALSE;
160
161 if (!gst_rtp_gst_pay_plugin_init (plugin))
162 return FALSE;
163
164 if (!gst_rtp_ilbc_pay_plugin_init (plugin))
165 return FALSE;
166
167 if (!gst_rtp_ilbc_depay_plugin_init (plugin))
168 return FALSE;
169
170 if (!gst_rtp_g722_depay_plugin_init (plugin))
171 return FALSE;
172
173 if (!gst_rtp_g722_pay_plugin_init (plugin))
174 return FALSE;
175
176 if (!gst_rtp_g723_depay_plugin_init (plugin))
177 return FALSE;
178
179 if (!gst_rtp_g723_pay_plugin_init (plugin))
180 return FALSE;
181
182 if (!gst_rtp_g726_depay_plugin_init (plugin))
183 return FALSE;
184
185 if (!gst_rtp_g726_pay_plugin_init (plugin))
186 return FALSE;
187
188 if (!gst_rtp_g729_depay_plugin_init (plugin))
189 return FALSE;
190
191 if (!gst_rtp_g729_pay_plugin_init (plugin))
192 return FALSE;
193
194 if (!gst_rtp_gsm_depay_plugin_init (plugin))
195 return FALSE;
196
197 if (!gst_rtp_gsm_pay_plugin_init (plugin))
198 return FALSE;
199
200 if (!gst_rtp_amr_depay_plugin_init (plugin))
201 return FALSE;
202
203 if (!gst_rtp_amr_pay_plugin_init (plugin))
204 return FALSE;
205
206 if (!gst_rtp_pcma_depay_plugin_init (plugin))
207 return FALSE;
208
209 if (!gst_rtp_pcmu_depay_plugin_init (plugin))
210 return FALSE;
211
212 if (!gst_rtp_pcmu_pay_plugin_init (plugin))
213 return FALSE;
214
215 if (!gst_rtp_pcma_pay_plugin_init (plugin))
216 return FALSE;
217
218 if (!gst_rtp_mpa_depay_plugin_init (plugin))
219 return FALSE;
220
221 if (!gst_rtp_mpa_pay_plugin_init (plugin))
222 return FALSE;
223
224 if (!gst_rtp_mpa_robust_depay_plugin_init (plugin))
225 return FALSE;
226
227 if (!gst_rtp_mpv_depay_plugin_init (plugin))
228 return FALSE;
229
230 if (!gst_rtp_mpv_pay_plugin_init (plugin))
231 return FALSE;
232
233 if (!gst_rtp_opus_depay_plugin_init (plugin))
234 return FALSE;
235
236 if (!gst_rtp_opus_pay_plugin_init (plugin))
237 return FALSE;
238
239 if (!gst_rtp_h261_pay_plugin_init (plugin))
240 return FALSE;
241
242 if (!gst_rtp_h261_depay_plugin_init (plugin))
243 return FALSE;
244
245 if (!gst_rtp_h263p_pay_plugin_init (plugin))
246 return FALSE;
247
248 if (!gst_rtp_h263p_depay_plugin_init (plugin))
249 return FALSE;
250
251 if (!gst_rtp_h263_depay_plugin_init (plugin))
252 return FALSE;
253
254 if (!gst_rtp_h263_pay_plugin_init (plugin))
255 return FALSE;
256
257 if (!gst_rtp_h264_depay_plugin_init (plugin))
258 return FALSE;
259
260 if (!gst_rtp_h264_pay_plugin_init (plugin))
261 return FALSE;
262
263 if (!gst_rtp_h265_depay_plugin_init (plugin))
264 return FALSE;
265
266 if (!gst_rtp_h265_pay_plugin_init (plugin))
267 return FALSE;
268
269 if (!gst_rtp_j2k_depay_plugin_init (plugin))
270 return FALSE;
271
272 if (!gst_rtp_j2k_pay_plugin_init (plugin))
273 return FALSE;
274
275 if (!gst_rtp_jpeg_depay_plugin_init (plugin))
276 return FALSE;
277
278 if (!gst_rtp_jpeg_pay_plugin_init (plugin))
279 return FALSE;
280
281 if (!gst_rtp_klv_depay_plugin_init (plugin))
282 return FALSE;
283
284 if (!gst_rtp_klv_pay_plugin_init (plugin))
285 return FALSE;
286
287 if (!gst_rtp_L8_pay_plugin_init (plugin))
288 return FALSE;
289
290 if (!gst_rtp_L8_depay_plugin_init (plugin))
291 return FALSE;
292
293 if (!gst_rtp_L16_pay_plugin_init (plugin))
294 return FALSE;
295
296 if (!gst_rtp_L16_depay_plugin_init (plugin))
297 return FALSE;
298
299 if (!gst_rtp_L24_pay_plugin_init (plugin))
300 return FALSE;
301
302 if (!gst_rtp_L24_depay_plugin_init (plugin))
303 return FALSE;
304
305 if (!gst_asteriskh263_plugin_init (plugin))
306 return FALSE;
307
308 if (!gst_rtp_mp1s_depay_plugin_init (plugin))
309 return FALSE;
310
311 if (!gst_rtp_mp2t_depay_plugin_init (plugin))
312 return FALSE;
313
314 if (!gst_rtp_mp2t_pay_plugin_init (plugin))
315 return FALSE;
316
317 if (!gst_rtp_mp4v_pay_plugin_init (plugin))
318 return FALSE;
319
320 if (!gst_rtp_mp4v_depay_plugin_init (plugin))
321 return FALSE;
322
323 if (!gst_rtp_mp4a_pay_plugin_init (plugin))
324 return FALSE;
325
326 if (!gst_rtp_mp4a_depay_plugin_init (plugin))
327 return FALSE;
328
329 if (!gst_rtp_mp4g_depay_plugin_init (plugin))
330 return FALSE;
331
332 if (!gst_rtp_mp4g_pay_plugin_init (plugin))
333 return FALSE;
334
335 if (!gst_rtp_qcelp_depay_plugin_init (plugin))
336 return FALSE;
337
338 if (!gst_rtp_qdm2_depay_plugin_init (plugin))
339 return FALSE;
340
341 if (!gst_rtp_sbc_depay_plugin_init (plugin))
342 return FALSE;
343
344 if (!gst_rtp_sbc_pay_plugin_init (plugin))
345 return FALSE;
346
347 if (!gst_rtp_siren_pay_plugin_init (plugin))
348 return FALSE;
349
350 if (!gst_rtp_siren_depay_plugin_init (plugin))
351 return FALSE;
352
353 if (!gst_rtp_speex_pay_plugin_init (plugin))
354 return FALSE;
355
356 if (!gst_rtp_speex_depay_plugin_init (plugin))
357 return FALSE;
358
359 if (!gst_rtp_sv3v_depay_plugin_init (plugin))
360 return FALSE;
361
362 if (!gst_rtp_theora_depay_plugin_init (plugin))
363 return FALSE;
364
365 if (!gst_rtp_theora_pay_plugin_init (plugin))
366 return FALSE;
367
368 if (!gst_rtp_vorbis_depay_plugin_init (plugin))
369 return FALSE;
370
371 if (!gst_rtp_vorbis_pay_plugin_init (plugin))
372 return FALSE;
373
374 if (!gst_rtp_vp8_depay_plugin_init (plugin))
375 return FALSE;
376
377 if (!gst_rtp_vp8_pay_plugin_init (plugin))
378 return FALSE;
379
380 if (!gst_rtp_vp9_depay_plugin_init (plugin))
381 return FALSE;
382
383 if (!gst_rtp_vp9_pay_plugin_init (plugin))
384 return FALSE;
385
386 if (!gst_rtp_vraw_depay_plugin_init (plugin))
387 return FALSE;
388
389 if (!gst_rtp_vraw_pay_plugin_init (plugin))
390 return FALSE;
391
392 if (!gst_rtp_stream_pay_plugin_init (plugin))
393 return FALSE;
394
395 if (!gst_rtp_stream_depay_plugin_init (plugin))
396 return FALSE;
397
398 if (!gst_element_register (plugin, "rtpredenc", GST_RANK_NONE,
399 GST_TYPE_RTP_RED_ENC))
400 return FALSE;
401
402 if (!gst_element_register (plugin, "rtpreddec", GST_RANK_NONE,
403 GST_TYPE_RTP_RED_DEC))
404 return FALSE;
405
406 if (!gst_element_register (plugin, "rtpulpfecdec", GST_RANK_NONE,
407 GST_TYPE_RTP_ULPFEC_DEC))
408 return FALSE;
409
410 if (!gst_element_register (plugin, "rtpulpfecenc", GST_RANK_NONE,
411 GST_TYPE_RTP_ULPFEC_ENC))
412 return FALSE;
413
414 if (!gst_element_register (plugin, "rtpreddec", GST_RANK_NONE,
415 GST_TYPE_RTP_RED_DEC))
416 return FALSE;
417
418 if (!gst_element_register (plugin, "rtpredenc", GST_RANK_NONE,
419 GST_TYPE_RTP_RED_ENC))
420 return FALSE;
421
422 if (!gst_element_register (plugin, "rtpstorage", GST_RANK_NONE,
423 GST_TYPE_RTP_STORAGE))
424 return FALSE;
425
426 return TRUE;
427 }
428
429 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
430 GST_VERSION_MINOR,
431 rtp,
432 "Real-time protocol plugins",
433 plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN);
434