native ac3 parser
[ffmpeg.git] / libavcodec / allcodecs.c
1 /*
2  * Utils for libavcodec
3  * Copyright (c) 2002 Fabrice Bellard.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19
20 /**
21  * @file allcodecs.c
22  * Utils for libavcodec.
23  */
24
25 #include "avcodec.h"
26
27 /* If you do not call this function, then you can select exactly which
28    formats you want to support */
29
30 /**
31  * simple call to register all the codecs.
32  */
33 void avcodec_register_all(void)
34 {
35     static int inited = 0;
36
37     if (inited != 0)
38         return;
39     inited = 1;
40
41     /* encoders */
42 #ifdef CONFIG_ENCODERS
43 #ifdef CONFIG_AC3_ENCODER
44     register_avcodec(&ac3_encoder);
45 #endif //CONFIG_AC3_ENCODER
46 #ifdef CONFIG_MP2_ENCODER
47     register_avcodec(&mp2_encoder);
48 #endif //CONFIG_MP2_ENCODER
49 #ifdef CONFIG_MP3LAME
50 #ifdef CONFIG_MP3LAME_ENCODER
51     register_avcodec(&mp3lame_encoder);
52 #endif //CONFIG_MP3LAME_ENCODER
53 #endif
54 #ifdef CONFIG_LIBVORBIS
55 #ifdef CONFIG_OGGVORBIS_ENCODER
56     register_avcodec(&oggvorbis_encoder);
57 #endif //CONFIG_OGGVORBIS_ENCODER
58 #if (defined CONFIG_OGGVORBIS_DECODER && !defined CONFIG_VORBIS_DECODER)
59     register_avcodec(&oggvorbis_decoder);
60 #endif //CONFIG_OGGVORBIS_DECODER
61 #endif
62 #ifdef CONFIG_LIBTHEORA
63 #ifdef CONFIG_OGGTHEORA_ENCODER
64 //    register_avcodec(&oggtheora_encoder);
65 #endif //CONFIG_OGGTHEORA_ENCODER
66 #ifdef CONFIG_OGGTHEORA_DECODER
67     register_avcodec(&oggtheora_decoder);
68 #endif //CONFIG_OGGTHEORA_DECODER
69 #endif
70 #ifdef CONFIG_FAAC
71 #ifdef CONFIG_FAAC_ENCODER
72     register_avcodec(&faac_encoder);
73 #endif //CONFIG_FAAC_ENCODER
74 #endif
75 #ifdef CONFIG_XVID
76 #ifdef CONFIG_XVID_ENCODER
77     register_avcodec(&xvid_encoder);
78 #endif //CONFIG_XVID_ENCODER
79 #endif
80 #ifdef CONFIG_MPEG1VIDEO_ENCODER
81     register_avcodec(&mpeg1video_encoder);
82 #endif //CONFIG_MPEG1VIDEO_ENCODER
83 #ifdef CONFIG_H264_ENCODER
84 //    register_avcodec(&h264_encoder);
85 #endif //CONFIG_H264_ENCODER
86 #ifdef CONFIG_MPEG2VIDEO_ENCODER
87     register_avcodec(&mpeg2video_encoder);
88 #endif //CONFIG_MPEG2VIDEO_ENCODER
89 #ifdef CONFIG_H261_ENCODER
90     register_avcodec(&h261_encoder);
91 #endif //CONFIG_H261_ENCODER
92 #ifdef CONFIG_H263_ENCODER
93     register_avcodec(&h263_encoder);
94 #endif //CONFIG_H263_ENCODER
95 #ifdef CONFIG_H263P_ENCODER
96     register_avcodec(&h263p_encoder);
97 #endif //CONFIG_H263P_ENCODER
98 #ifdef CONFIG_FLV_ENCODER
99     register_avcodec(&flv_encoder);
100 #endif //CONFIG_FLV_ENCODER
101 #ifdef CONFIG_RV10_ENCODER
102     register_avcodec(&rv10_encoder);
103 #endif //CONFIG_RV10_ENCODER
104 #ifdef CONFIG_RV20_ENCODER
105     register_avcodec(&rv20_encoder);
106 #endif //CONFIG_RV20_ENCODER
107 #ifdef CONFIG_MPEG4_ENCODER
108     register_avcodec(&mpeg4_encoder);
109 #endif //CONFIG_MPEG4_ENCODER
110 #ifdef CONFIG_MSMPEG4V1_ENCODER
111     register_avcodec(&msmpeg4v1_encoder);
112 #endif //CONFIG_MSMPEG4V1_ENCODER
113 #ifdef CONFIG_MSMPEG4V2_ENCODER
114     register_avcodec(&msmpeg4v2_encoder);
115 #endif //CONFIG_MSMPEG4V2_ENCODER
116 #ifdef CONFIG_MSMPEG4V3_ENCODER
117     register_avcodec(&msmpeg4v3_encoder);
118 #endif //CONFIG_MSMPEG4V3_ENCODER
119 #ifdef CONFIG_WMV1_ENCODER
120     register_avcodec(&wmv1_encoder);
121 #endif //CONFIG_WMV1_ENCODER
122 #ifdef CONFIG_WMV2_ENCODER
123     register_avcodec(&wmv2_encoder);
124 #endif //CONFIG_WMV2_ENCODER
125 #ifdef CONFIG_SVQ1_ENCODER
126     register_avcodec(&svq1_encoder);
127 #endif //CONFIG_SVQ1_ENCODER
128 #ifdef CONFIG_MJPEG_ENCODER
129     register_avcodec(&mjpeg_encoder);
130 #endif //CONFIG_MJPEG_ENCODER
131 #ifdef CONFIG_LJPEG_ENCODER
132     register_avcodec(&ljpeg_encoder);
133 #endif //CONFIG_LJPEG_ENCODER
134 #ifdef CONFIG_JPEGLS_ENCODER
135     register_avcodec(&jpegls_encoder);
136 #endif //CONFIG_JPEGLS_ENCODER
137 #ifdef CONFIG_ZLIB
138 #ifdef CONFIG_PNG_ENCODER
139     register_avcodec(&png_encoder);
140 #endif //CONFIG_PNG_ENCODER
141 #endif
142 #ifdef CONFIG_PPM_ENCODER
143     register_avcodec(&ppm_encoder);
144 #endif //CONFIG_PPM_ENCODER
145 #ifdef CONFIG_PGM_ENCODER
146     register_avcodec(&pgm_encoder);
147 #endif //CONFIG_PGM_ENCODER
148 #ifdef CONFIG_PGMYUV_ENCODER
149     register_avcodec(&pgmyuv_encoder);
150 #endif //CONFIG_PGMYUV_ENCODER
151 #ifdef CONFIG_PBM_ENCODER
152     register_avcodec(&pbm_encoder);
153 #endif //CONFIG_PBM_ENCODER
154 #ifdef CONFIG_PAM_ENCODER
155     register_avcodec(&pam_encoder);
156 #endif //CONFIG_PAM_ENCODER
157 #ifdef CONFIG_HUFFYUV_ENCODER
158     register_avcodec(&huffyuv_encoder);
159 #endif //CONFIG_HUFFYUV_ENCODER
160 #ifdef CONFIG_FFVHUFF_ENCODER
161     register_avcodec(&ffvhuff_encoder);
162 #endif //CONFIG_FFVHUFF_ENCODER
163 #ifdef CONFIG_ASV1_ENCODER
164     register_avcodec(&asv1_encoder);
165 #endif //CONFIG_ASV1_ENCODER
166 #ifdef CONFIG_ASV2_ENCODER
167     register_avcodec(&asv2_encoder);
168 #endif //CONFIG_ASV2_ENCODER
169 #ifdef CONFIG_FFV1_ENCODER
170     register_avcodec(&ffv1_encoder);
171 #endif //CONFIG_FFV1_ENCODER
172 #ifdef CONFIG_SNOW_ENCODER
173     register_avcodec(&snow_encoder);
174 #endif //CONFIG_SNOW_ENCODER
175 #ifdef CONFIG_ZLIB_ENCODER
176     register_avcodec(&zlib_encoder);
177 #endif //CONFIG_ZLIB_ENCODER
178 #ifdef CONFIG_DVVIDEO_ENCODER
179     register_avcodec(&dvvideo_encoder);
180 #endif //CONFIG_DVVIDEO_ENCODER
181 #ifdef CONFIG_SONIC_ENCODER
182     register_avcodec(&sonic_encoder);
183 #endif //CONFIG_SONIC_ENCODER
184 #ifdef CONFIG_SONIC_LS_ENCODER
185     register_avcodec(&sonic_ls_encoder);
186 #endif //CONFIG_SONIC_LS_ENCODER
187 #ifdef CONFIG_X264
188 #ifdef CONFIG_X264_ENCODER
189     register_avcodec(&x264_encoder);
190 #endif //CONFIG_X264_ENCODER
191 #endif
192 #ifdef CONFIG_LIBGSM
193     register_avcodec(&libgsm_encoder);
194 #endif //CONFIG_LIBGSM
195 #ifdef CONFIG_RAWVIDEO_ENCODER
196     register_avcodec(&rawvideo_encoder);
197 #endif //CONFIG_RAWVIDEO_ENCODER
198 #endif /* CONFIG_ENCODERS */
199
200     /* decoders */
201 #ifdef CONFIG_DECODERS
202 #ifdef CONFIG_H263_DECODER
203     register_avcodec(&h263_decoder);
204 #endif //CONFIG_H263_DECODER
205 #ifdef CONFIG_H261_DECODER
206     register_avcodec(&h261_decoder);
207 #endif //CONFIG_H261_DECODER
208 #ifdef CONFIG_MPEG4_DECODER
209     register_avcodec(&mpeg4_decoder);
210 #endif //CONFIG_MPEG4_DECODER
211 #ifdef CONFIG_MSMPEG4V1_DECODER
212     register_avcodec(&msmpeg4v1_decoder);
213 #endif //CONFIG_MSMPEG4V1_DECODER
214 #ifdef CONFIG_MSMPEG4V2_DECODER
215     register_avcodec(&msmpeg4v2_decoder);
216 #endif //CONFIG_MSMPEG4V2_DECODER
217 #ifdef CONFIG_MSMPEG4V3_DECODER
218     register_avcodec(&msmpeg4v3_decoder);
219 #endif //CONFIG_MSMPEG4V3_DECODER
220 #ifdef CONFIG_WMV1_DECODER
221     register_avcodec(&wmv1_decoder);
222 #endif //CONFIG_WMV1_DECODER
223 #ifdef CONFIG_WMV2_DECODER
224     register_avcodec(&wmv2_decoder);
225 #endif //CONFIG_WMV2_DECODER
226 #ifdef CONFIG_VC9_DECODER
227     register_avcodec(&vc9_decoder);
228 #endif //CONFIG_VC9_DECODER
229 /* Reenable when it stops crashing on every file, causing bug report spam.
230 #ifdef CONFIG_WMV3_DECODER
231     register_avcodec(&wmv3_decoder);
232 #endif //CONFIG_WMV3_DECODER
233 */
234 #ifdef CONFIG_H263I_DECODER
235     register_avcodec(&h263i_decoder);
236 #endif //CONFIG_H263I_DECODER
237 #ifdef CONFIG_FLV_DECODER
238     register_avcodec(&flv_decoder);
239 #endif //CONFIG_FLV_DECODER
240 #ifdef CONFIG_RV10_DECODER
241     register_avcodec(&rv10_decoder);
242 #endif //CONFIG_RV10_DECODER
243 #ifdef CONFIG_RV20_DECODER
244     register_avcodec(&rv20_decoder);
245 #endif //CONFIG_RV20_DECODER
246 #ifdef CONFIG_SVQ1_DECODER
247     register_avcodec(&svq1_decoder);
248 #endif //CONFIG_SVQ1_DECODER
249 #ifdef CONFIG_SVQ3_DECODER
250     register_avcodec(&svq3_decoder);
251 #endif //CONFIG_SVQ3_DECODER
252 #ifdef CONFIG_WMAV1_DECODER
253     register_avcodec(&wmav1_decoder);
254 #endif //CONFIG_WMAV1_DECODER
255 #ifdef CONFIG_WMAV2_DECODER
256     register_avcodec(&wmav2_decoder);
257 #endif //CONFIG_WMAV2_DECODER
258 #ifdef CONFIG_INDEO2_DECODER
259     register_avcodec(&indeo2_decoder);
260 #endif //CONFIG_INDEO2_DECODER
261 #ifdef CONFIG_INDEO3_DECODER
262     register_avcodec(&indeo3_decoder);
263 #endif //CONFIG_INDEO3_DECODER
264 #ifdef CONFIG_TSCC_DECODER
265     register_avcodec(&tscc_decoder);
266 #endif //CONFIG_TSCC_DECODER
267 #ifdef CONFIG_CSCD_DECODER
268     register_avcodec(&cscd_decoder);
269 #endif //CONFIG_CSCD_DECODER
270 #ifdef CONFIG_ULTI_DECODER
271     register_avcodec(&ulti_decoder);
272 #endif //CONFIG_ULTI_DECODER
273 #ifdef CONFIG_QDRAW_DECODER
274     register_avcodec(&qdraw_decoder);
275 #endif //CONFIG_QDRAW_DECODER
276 #ifdef CONFIG_XL_DECODER
277     register_avcodec(&xl_decoder);
278 #endif //CONFIG_XL_DECODER
279 #ifdef CONFIG_QPEG_DECODER
280     register_avcodec(&qpeg_decoder);
281 #endif //CONFIG_QPEG_DECODER
282 #ifdef CONFIG_LOCO_DECODER
283     register_avcodec(&loco_decoder);
284 #endif //CONFIG_LOCO_DECODER
285 #ifdef CONFIG_WNV1_DECODER
286     register_avcodec(&wnv1_decoder);
287 #endif //CONFIG_WNV1_DECODER
288 #ifdef CONFIG_AASC_DECODER
289     register_avcodec(&aasc_decoder);
290 #endif //CONFIG_AASC_DECODER
291 #ifdef CONFIG_FRAPS_DECODER
292     register_avcodec(&fraps_decoder);
293 #endif //CONFIG_FRAPS_DECODER
294 #ifdef CONFIG_FAAD
295 #ifdef CONFIG_AAC_DECODER
296     register_avcodec(&aac_decoder);
297 #endif //CONFIG_AAC_DECODER
298 #ifdef CONFIG_MPEG4AAC_DECODER
299     register_avcodec(&mpeg4aac_decoder);
300 #endif //CONFIG_MPEG4AAC_DECODER
301 #endif
302 #ifdef CONFIG_MPEG1VIDEO_DECODER
303     register_avcodec(&mpeg1video_decoder);
304 #endif //CONFIG_MPEG1VIDEO_DECODER
305 #ifdef CONFIG_MPEG2VIDEO_DECODER
306     register_avcodec(&mpeg2video_decoder);
307 #endif //CONFIG_MPEG2VIDEO_DECODER
308 #ifdef CONFIG_MPEGVIDEO_DECODER
309     register_avcodec(&mpegvideo_decoder);
310 #endif //CONFIG_MPEGVIDEO_DECODER
311 #ifdef HAVE_XVMC
312 #ifdef CONFIG_MPEG_XVMC_DECODER
313     register_avcodec(&mpeg_xvmc_decoder);
314 #endif //CONFIG_MPEG_XVMC_DECODER
315 #endif
316 #ifdef CONFIG_DVVIDEO_DECODER
317     register_avcodec(&dvvideo_decoder);
318 #endif //CONFIG_DVVIDEO_DECODER
319 #ifdef CONFIG_MJPEG_DECODER
320     register_avcodec(&mjpeg_decoder);
321 #endif //CONFIG_MJPEG_DECODER
322 #ifdef CONFIG_MJPEGB_DECODER
323     register_avcodec(&mjpegb_decoder);
324 #endif //CONFIG_MJPEGB_DECODER
325 #ifdef CONFIG_SP5X_DECODER
326     register_avcodec(&sp5x_decoder);
327 #endif //CONFIG_SP5X_DECODER
328 #ifdef CONFIG_ZLIB
329 #ifdef CONFIG_PNG_DECODER
330     register_avcodec(&png_decoder);
331 #endif //CONFIG_PNG_DECODER
332 #endif
333 #ifdef CONFIG_MP2_DECODER
334     register_avcodec(&mp2_decoder);
335 #endif //CONFIG_MP2_DECODER
336 #ifdef CONFIG_MP3_DECODER
337     register_avcodec(&mp3_decoder);
338 #endif //CONFIG_MP3_DECODER
339 #ifdef CONFIG_MP3ADU_DECODER
340     register_avcodec(&mp3adu_decoder);
341 #endif //CONFIG_MP3ADU_DECODER
342 #ifdef CONFIG_MP3ON4_DECODER
343     register_avcodec(&mp3on4_decoder);
344 #endif //CONFIG_MP3ON4_DECODER
345 #ifdef CONFIG_MACE3_DECODER
346     register_avcodec(&mace3_decoder);
347 #endif //CONFIG_MACE3_DECODER
348 #ifdef CONFIG_MACE6_DECODER
349     register_avcodec(&mace6_decoder);
350 #endif //CONFIG_MACE6_DECODER
351 #ifdef CONFIG_HUFFYUV_DECODER
352     register_avcodec(&huffyuv_decoder);
353 #endif //CONFIG_HUFFYUV_DECODER
354 #ifdef CONFIG_FFVHUFF_DECODER
355     register_avcodec(&ffvhuff_decoder);
356 #endif //CONFIG_FFVHUFF_DECODER
357 #ifdef CONFIG_FFV1_DECODER
358     register_avcodec(&ffv1_decoder);
359 #endif //CONFIG_FFV1_DECODER
360 #ifdef CONFIG_SNOW_DECODER
361     register_avcodec(&snow_decoder);
362 #endif //CONFIG_SNOW_DECODER
363 #ifdef CONFIG_CYUV_DECODER
364     register_avcodec(&cyuv_decoder);
365 #endif //CONFIG_CYUV_DECODER
366 #ifdef CONFIG_H264_DECODER
367     register_avcodec(&h264_decoder);
368 #endif //CONFIG_H264_DECODER
369 #ifdef CONFIG_VP3_DECODER
370     register_avcodec(&vp3_decoder);
371 #endif //CONFIG_VP3_DECODER
372 #if (defined CONFIG_THEORA_DECODER && !defined CONFIG_LIBTHEORA)
373     register_avcodec(&theora_decoder);
374 #endif //CONFIG_THEORA_DECODER
375 #ifdef CONFIG_ASV1_DECODER
376     register_avcodec(&asv1_decoder);
377 #endif //CONFIG_ASV1_DECODER
378 #ifdef CONFIG_ASV2_DECODER
379     register_avcodec(&asv2_decoder);
380 #endif //CONFIG_ASV2_DECODER
381 #ifdef CONFIG_VCR1_DECODER
382     register_avcodec(&vcr1_decoder);
383 #endif //CONFIG_VCR1_DECODER
384 #ifdef CONFIG_CLJR_DECODER
385     register_avcodec(&cljr_decoder);
386 #endif //CONFIG_CLJR_DECODER
387 #ifdef CONFIG_FOURXM_DECODER
388     register_avcodec(&fourxm_decoder);
389 #endif //CONFIG_FOURXM_DECODER
390 #ifdef CONFIG_MDEC_DECODER
391     register_avcodec(&mdec_decoder);
392 #endif //CONFIG_MDEC_DECODER
393 #ifdef CONFIG_ROQ_DECODER
394     register_avcodec(&roq_decoder);
395 #endif //CONFIG_ROQ_DECODER
396 #ifdef CONFIG_INTERPLAY_VIDEO_DECODER
397     register_avcodec(&interplay_video_decoder);
398 #endif //CONFIG_INTERPLAY_VIDEO_DECODER
399 #ifdef CONFIG_XAN_WC3_DECODER
400     register_avcodec(&xan_wc3_decoder);
401 #endif //CONFIG_XAN_WC3_DECODER
402 #ifdef CONFIG_RPZA_DECODER
403     register_avcodec(&rpza_decoder);
404 #endif //CONFIG_RPZA_DECODER
405 #ifdef CONFIG_CINEPAK_DECODER
406     register_avcodec(&cinepak_decoder);
407 #endif //CONFIG_CINEPAK_DECODER
408 #ifdef CONFIG_MSRLE_DECODER
409     register_avcodec(&msrle_decoder);
410 #endif //CONFIG_MSRLE_DECODER
411 #ifdef CONFIG_MSVIDEO1_DECODER
412     register_avcodec(&msvideo1_decoder);
413 #endif //CONFIG_MSVIDEO1_DECODER
414 #ifdef CONFIG_VQA_DECODER
415     register_avcodec(&vqa_decoder);
416 #endif //CONFIG_VQA_DECODER
417 #ifdef CONFIG_IDCIN_DECODER
418     register_avcodec(&idcin_decoder);
419 #endif //CONFIG_IDCIN_DECODER
420 #ifdef CONFIG_EIGHTBPS_DECODER
421     register_avcodec(&eightbps_decoder);
422 #endif //CONFIG_EIGHTBPS_DECODER
423 #ifdef CONFIG_SMC_DECODER
424     register_avcodec(&smc_decoder);
425 #endif //CONFIG_SMC_DECODER
426 #ifdef CONFIG_FLIC_DECODER
427     register_avcodec(&flic_decoder);
428 #endif //CONFIG_FLIC_DECODER
429 #ifdef CONFIG_TRUEMOTION1_DECODER
430     register_avcodec(&truemotion1_decoder);
431 #endif //CONFIG_TRUEMOTION1_DECODER
432 #ifdef CONFIG_TRUEMOTION2_DECODER
433     register_avcodec(&truemotion2_decoder);
434 #endif //CONFIG_TRUEMOTION2_DECODER
435 #ifdef CONFIG_VMDVIDEO_DECODER
436     register_avcodec(&vmdvideo_decoder);
437 #endif //CONFIG_VMDVIDEO_DECODER
438 #ifdef CONFIG_VMDAUDIO_DECODER
439     register_avcodec(&vmdaudio_decoder);
440 #endif //CONFIG_VMDAUDIO_DECODER
441 #ifdef CONFIG_MSZH_DECODER
442     register_avcodec(&mszh_decoder);
443 #endif //CONFIG_MSZH_DECODER
444 #ifdef CONFIG_ZLIB_DECODER
445     register_avcodec(&zlib_decoder);
446 #endif //CONFIG_ZLIB_DECODER
447 #ifdef CONFIG_SONIC_DECODER
448     register_avcodec(&sonic_decoder);
449 #endif //CONFIG_SONIC_DECODER
450 #ifdef CONFIG_AC3
451 #ifdef CONFIG_AC3_DECODER
452     register_avcodec(&ac3_decoder);
453 #endif //CONFIG_AC3_DECODER
454 #endif
455 #ifdef CONFIG_DTS
456 #ifdef CONFIG_DTS_DECODER
457     register_avcodec(&dts_decoder);
458 #endif //CONFIG_DTS_DECODER
459 #endif
460 #ifdef CONFIG_RA_144_DECODER
461     register_avcodec(&ra_144_decoder);
462 #endif //CONFIG_RA_144_DECODER
463 #ifdef CONFIG_RA_288_DECODER
464     register_avcodec(&ra_288_decoder);
465 #endif //CONFIG_RA_288_DECODER
466 #ifdef CONFIG_ROQ_DPCM_DECODER
467     register_avcodec(&roq_dpcm_decoder);
468 #endif //CONFIG_ROQ_DPCM_DECODER
469 #ifdef CONFIG_INTERPLAY_DPCM_DECODER
470     register_avcodec(&interplay_dpcm_decoder);
471 #endif //CONFIG_INTERPLAY_DPCM_DECODER
472 #ifdef CONFIG_XAN_DPCM_DECODER
473     register_avcodec(&xan_dpcm_decoder);
474 #endif //CONFIG_XAN_DPCM_DECODER
475 #ifdef CONFIG_SOL_DPCM_DECODER
476     register_avcodec(&sol_dpcm_decoder);
477 #endif //CONFIG_SOL_DPCM_DECODER
478 #ifdef CONFIG_QTRLE_DECODER
479     register_avcodec(&qtrle_decoder);
480 #endif //CONFIG_QTRLE_DECODER
481 #ifdef CONFIG_FLAC_DECODER
482     register_avcodec(&flac_decoder);
483 #endif //CONFIG_FLAC_DECODER
484 #ifdef CONFIG_SHORTEN_DECODER
485     register_avcodec(&shorten_decoder);
486 #endif //CONFIG_SHORTEN_DECODER
487 #ifdef CONFIG_ALAC_DECODER
488     register_avcodec(&alac_decoder);
489 #endif //CONFIG_ALAC_DECODER
490 #ifdef CONFIG_WS_SND1_DECODER
491     register_avcodec(&ws_snd1_decoder);
492 #endif //CONFIG_WS_SND1_DECODER
493 #ifdef CONFIG_VORBIS_DECODER
494     register_avcodec(&vorbis_decoder);
495 #endif
496 #ifdef CONFIG_LIBGSM
497     register_avcodec(&libgsm_decoder);
498 #endif //CONFIG_LIBGSM
499 #ifdef CONFIG_QDM2_DECODER
500     register_avcodec(&qdm2_decoder);
501 #endif //CONFIG_QDM2_DECODER
502 #ifdef CONFIG_COOK_DECODER
503     register_avcodec(&cook_decoder);
504 #endif //CONFIG_COOK_DECODER
505 #ifdef CONFIG_TRUESPEECH_DECODER
506     register_avcodec(&truespeech_decoder);
507 #endif //CONFIG_TRUESPEECH_DECODER
508 #ifdef CONFIG_RAWVIDEO_DECODER
509     register_avcodec(&rawvideo_decoder);
510 #endif //CONFIG_RAWVIDEO_DECODER
511 #endif /* CONFIG_DECODERS */
512
513 #ifdef AMR_NB
514 #ifdef CONFIG_AMR_NB_DECODER
515     register_avcodec(&amr_nb_decoder);
516 #endif //CONFIG_AMR_NB_DECODER
517 #ifdef CONFIG_ENCODERS
518 #ifdef CONFIG_AMR_NB_ENCODER
519     register_avcodec(&amr_nb_encoder);
520 #endif //CONFIG_AMR_NB_ENCODER
521 #endif //CONFIG_ENCODERS
522 #endif /* AMR_NB */
523
524 #ifdef AMR_WB
525 #ifdef CONFIG_AMR_WB_DECODER
526     register_avcodec(&amr_wb_decoder);
527 #endif //CONFIG_AMR_WB_DECODER
528 #ifdef CONFIG_ENCODERS
529 #ifdef CONFIG_AMR_WB_ENCODER
530     register_avcodec(&amr_wb_encoder);
531 #endif //CONFIG_AMR_WB_ENCODER
532 #endif //CONFIG_ENCODERS
533 #endif /* AMR_WB */
534
535 #ifdef CONFIG_BMP_DECODER
536     register_avcodec(&bmp_decoder);
537 #endif
538
539     /* pcm codecs */
540 #if defined (CONFIG_ENCODERS) && defined (CONFIG_DECODERS)
541     #define PCM_CODEC(id, name) \
542         register_avcodec(& name ## _encoder); \
543         register_avcodec(& name ## _decoder);
544 #elif defined (CONFIG_ENCODERS)
545     #define PCM_CODEC(id, name) \
546         register_avcodec(& name ## _encoder);
547 #elif defined (CONFIG_DECODERS)
548     #define PCM_CODEC(id, name) \
549         register_avcodec(& name ## _decoder);
550 #endif
551
552 PCM_CODEC(CODEC_ID_PCM_S32LE, pcm_s32le);
553 PCM_CODEC(CODEC_ID_PCM_S32BE, pcm_s32be);
554 PCM_CODEC(CODEC_ID_PCM_U32LE, pcm_u32le);
555 PCM_CODEC(CODEC_ID_PCM_U32BE, pcm_u32be);
556 PCM_CODEC(CODEC_ID_PCM_S24LE, pcm_s24le);
557 PCM_CODEC(CODEC_ID_PCM_S24BE, pcm_s24be);
558 PCM_CODEC(CODEC_ID_PCM_U24LE, pcm_u24le);
559 PCM_CODEC(CODEC_ID_PCM_U24BE, pcm_u24be);
560 PCM_CODEC(CODEC_ID_PCM_S24DAUD, pcm_s24daud);
561 PCM_CODEC(CODEC_ID_PCM_S16LE, pcm_s16le);
562 PCM_CODEC(CODEC_ID_PCM_S16BE, pcm_s16be);
563 PCM_CODEC(CODEC_ID_PCM_U16LE, pcm_u16le);
564 PCM_CODEC(CODEC_ID_PCM_U16BE, pcm_u16be);
565 PCM_CODEC(CODEC_ID_PCM_S8, pcm_s8);
566 PCM_CODEC(CODEC_ID_PCM_U8, pcm_u8);
567 PCM_CODEC(CODEC_ID_PCM_ALAW, pcm_alaw);
568 PCM_CODEC(CODEC_ID_PCM_MULAW, pcm_mulaw);
569
570     /* adpcm codecs */
571 PCM_CODEC(CODEC_ID_ADPCM_IMA_QT, adpcm_ima_qt);
572 PCM_CODEC(CODEC_ID_ADPCM_IMA_WAV, adpcm_ima_wav);
573 PCM_CODEC(CODEC_ID_ADPCM_IMA_DK3, adpcm_ima_dk3);
574 PCM_CODEC(CODEC_ID_ADPCM_IMA_DK4, adpcm_ima_dk4);
575 PCM_CODEC(CODEC_ID_ADPCM_IMA_WS, adpcm_ima_ws);
576 PCM_CODEC(CODEC_ID_ADPCM_IMA_SMJPEG, adpcm_ima_smjpeg);
577 PCM_CODEC(CODEC_ID_ADPCM_MS, adpcm_ms);
578 PCM_CODEC(CODEC_ID_ADPCM_4XM, adpcm_4xm);
579 PCM_CODEC(CODEC_ID_ADPCM_XA, adpcm_xa);
580 PCM_CODEC(CODEC_ID_ADPCM_ADX, adpcm_adx);
581 PCM_CODEC(CODEC_ID_ADPCM_EA, adpcm_ea);
582 PCM_CODEC(CODEC_ID_ADPCM_G726, adpcm_g726);
583 PCM_CODEC(CODEC_ID_ADPCM_CT, adpcm_ct);
584 PCM_CODEC(CODEC_ID_ADPCM_SWF, adpcm_swf);
585 PCM_CODEC(CODEC_ID_ADPCM_YAMAHA, adpcm_yamaha);
586 #undef PCM_CODEC
587
588     /* subtitles */
589 #ifdef CONFIG_DVDSUB_DECODER
590     register_avcodec(&dvdsub_decoder);
591 #endif
592 #ifdef CONFIG_DVDSUB_ENCODER
593     register_avcodec(&dvdsub_encoder);
594 #endif
595
596 #ifdef CONFIG_DVBSUB_DECODER
597     register_avcodec(&dvbsub_decoder);
598 #endif
599 #ifdef CONFIG_DVBSUB_ENCODER
600     register_avcodec(&dvbsub_encoder);
601 #endif
602
603     /* parsers */
604     av_register_codec_parser(&mpegvideo_parser);
605     av_register_codec_parser(&mpeg4video_parser);
606 #if defined(CONFIG_H261_DECODER) || defined(CONFIG_H261_ENCODER)
607     av_register_codec_parser(&h261_parser);
608 #endif
609     av_register_codec_parser(&h263_parser);
610 #ifdef CONFIG_H264_DECODER
611     av_register_codec_parser(&h264_parser);
612 #endif
613     av_register_codec_parser(&mjpeg_parser);
614     av_register_codec_parser(&pnm_parser);
615
616     av_register_codec_parser(&mpegaudio_parser);
617     av_register_codec_parser(&ac3_parser);
618
619 #ifdef CONFIG_DVDSUB_DECODER
620     av_register_codec_parser(&dvdsub_parser);
621 #endif
622 #ifdef CONFIG_DVBSUB_DECODER
623     av_register_codec_parser(&dvbsub_parser);
624 #endif
625 }
626