9feaa987c39a371446be14307ea1c5a9e4f20da4
[libav.git] / libavformat / allformats.c
1 /*
2 * Register all the formats and protocols
3 * Copyright (c) 2000, 2001, 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 */
19 #include "avformat.h"
20
21 /* If you do not call this function, then you can select exactly which
22 formats you want to support */
23
24 /**
25 * Initialize libavcodec and register all the codecs and formats.
26 */
27 void av_register_all(void)
28 {
29 avcodec_init();
30 avcodec_register_all();
31
32 mpegps_init();
33 mpegts_init();
34 #ifdef CONFIG_ENCODERS
35 crc_init();
36 img_init();
37 #endif //CONFIG_ENCODERS
38 raw_init();
39 mp3_init();
40 rm_init();
41 #ifdef CONFIG_RISKY
42 asf_init();
43 #endif
44 #ifdef CONFIG_ENCODERS
45 avienc_init();
46 #endif //CONFIG_ENCODERS
47 avidec_init();
48 wav_init();
49 swf_init();
50 au_init();
51 #ifdef CONFIG_ENCODERS
52 gif_init();
53 #endif //CONFIG_ENCODERS
54 mov_init();
55 #ifdef CONFIG_ENCODERS
56 movenc_init();
57 jpeg_init();
58 #endif //CONFIG_ENCODERS
59 dv_init();
60 fourxm_init();
61 #ifdef CONFIG_ENCODERS
62 flvenc_init();
63 #endif //CONFIG_ENCODERS
64 flvdec_init();
65 str_init();
66 roq_init();
67 ipmovie_init();
68 wc3_init();
69 westwood_init();
70 film_init();
71 idcin_init();
72 flic_init();
73 vmd_init();
74
75 #if defined(AMR_NB) || defined(AMR_NB_FIXED) || defined(AMR_WB)
76 amr_init();
77 #endif
78 yuv4mpeg_init();
79
80 #ifdef CONFIG_VORBIS
81 ogg_init();
82 #endif
83
84 #ifndef CONFIG_WIN32
85 ffm_init();
86 #endif
87 #ifdef CONFIG_VIDEO4LINUX
88 video_grab_init();
89 #endif
90 #if defined(CONFIG_AUDIO_OSS) || defined(CONFIG_AUDIO_BEOS)
91 audio_init();
92 #endif
93
94 #ifdef CONFIG_DV1394
95 dv1394_init();
96 #endif
97
98 nut_init();
99 matroska_init();
100
101 #ifdef CONFIG_ENCODERS
102 /* image formats */
103 av_register_image_format(&pnm_image_format);
104 av_register_image_format(&pbm_image_format);
105 av_register_image_format(&pgm_image_format);
106 av_register_image_format(&ppm_image_format);
107 av_register_image_format(&pam_image_format);
108 av_register_image_format(&pgmyuv_image_format);
109 av_register_image_format(&yuv_image_format);
110 #ifdef CONFIG_ZLIB
111 av_register_image_format(&png_image_format);
112 #endif
113 av_register_image_format(&jpeg_image_format);
114 av_register_image_format(&gif_image_format);
115 av_register_image_format(&sgi_image_format);
116 #endif //CONFIG_ENCODERS
117
118 /* file protocols */
119 register_protocol(&file_protocol);
120 register_protocol(&pipe_protocol);
121 #ifdef CONFIG_NETWORK
122 rtsp_init();
123 rtp_init();
124 register_protocol(&udp_protocol);
125 register_protocol(&rtp_protocol);
126 register_protocol(&tcp_protocol);
127 register_protocol(&http_protocol);
128 #endif
129 }