Mercurial > libavformat.hg
annotate allformats.c @ 905:dbc0145bbf11 libavformat
Add --disable-protocols option to configure to disable I/O protocol from
libavformat. Also fix build with --disable-muxers and --disable-ffserver.
patch by Gildas Bazin < gbazin **@** altern **.** org >
author | diego |
---|---|
date | Sat, 21 Jan 2006 18:36:32 +0000 |
parents | edbe5c3717f9 |
children | 547675092e98 |
rev | line source |
---|---|
0 | 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 | |
896
edbe5c3717f9
Update licensing information: The FSF changed postal address.
diego
parents:
885
diff
changeset
|
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
0 | 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 { | |
553 | 29 static int inited = 0; |
885 | 30 |
553 | 31 if (inited != 0) |
32 return; | |
33 inited = 1; | |
34 | |
0 | 35 avcodec_init(); |
36 avcodec_register_all(); | |
37 | |
38 mpegps_init(); | |
39 mpegts_init(); | |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
40 #ifdef CONFIG_MUXERS |
0 | 41 crc_init(); |
42 img_init(); | |
497 | 43 img2_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
44 #endif //CONFIG_MUXERS |
0 | 45 raw_init(); |
234 | 46 mp3_init(); |
0 | 47 rm_init(); |
48 asf_init(); | |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
49 #ifdef CONFIG_MUXERS |
0 | 50 avienc_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
51 #endif //CONFIG_MUXERS |
0 | 52 avidec_init(); |
384
9479dac25620
fix global name conflicts patch by ("Ronald S. Bultje" <R dot S dot Bultje at students dot uu dot nl>)
michael
parents:
382
diff
changeset
|
53 ff_wav_init(); |
818
b1d7ee1c792d
Yamaha SMAF file format support patch by (Vidar Madsen: vidarino, gmail com)
michael
parents:
795
diff
changeset
|
54 ff_mmf_init(); |
0 | 55 swf_init(); |
56 au_init(); | |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
57 #ifdef CONFIG_MUXERS |
0 | 58 gif_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
59 #endif //CONFIG_MUXERS |
0 | 60 mov_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
61 #ifdef CONFIG_MUXERS |
201
85def00971c3
mov, 3gp, mp4 muxer by (Thomas Raivio <tjraivio at cc dot hut dot fi>)
michaelni
parents:
184
diff
changeset
|
62 movenc_init(); |
0 | 63 jpeg_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
64 #endif //CONFIG_MUXERS |
384
9479dac25620
fix global name conflicts patch by ("Ronald S. Bultje" <R dot S dot Bultje at students dot uu dot nl>)
michael
parents:
382
diff
changeset
|
65 ff_dv_init(); |
138 | 66 fourxm_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
67 #ifdef CONFIG_MUXERS |
164
99fbacf0f764
flash video (flv) support patch by (Garrick Meeker <gmeeker at theoryllc dot com>)
michaelni
parents:
146
diff
changeset
|
68 flvenc_init(); |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
69 #endif //CONFIG_MUXERS |
164
99fbacf0f764
flash video (flv) support patch by (Garrick Meeker <gmeeker at theoryllc dot com>)
michaelni
parents:
146
diff
changeset
|
70 flvdec_init(); |
209
7414bbf64011
first pass at PSX STR demuxer; does not yet interact correctly with MDEC
tmmm
parents:
201
diff
changeset
|
71 str_init(); |
211
349d63d52e7e
initial commit for Id RoQ and Interplay MVE multimedia subsystems
tmmm
parents:
209
diff
changeset
|
72 roq_init(); |
349d63d52e7e
initial commit for Id RoQ and Interplay MVE multimedia subsystems
tmmm
parents:
209
diff
changeset
|
73 ipmovie_init(); |
225
d0332f4362b6
demuxer for custom Wing Commander III movie (.mve) files
tmmm
parents:
219
diff
changeset
|
74 wc3_init(); |
266
8bb470d85249
New demuxers: Sega FILM/CPK, Westwood VQA & AUD; new decoders: MS RLE &
tmmm
parents:
258
diff
changeset
|
75 westwood_init(); |
8bb470d85249
New demuxers: Sega FILM/CPK, Westwood VQA & AUD; new decoders: MS RLE &
tmmm
parents:
258
diff
changeset
|
76 film_init(); |
274 | 77 idcin_init(); |
315 | 78 flic_init(); |
338 | 79 vmd_init(); |
20 | 80 |
258
59c2e84817a1
AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents:
234
diff
changeset
|
81 #if defined(AMR_NB) || defined(AMR_NB_FIXED) || defined(AMR_WB) |
146 | 82 amr_init(); |
83 #endif | |
184
2438e76dde67
yuv4mpeg pipe reader for libavformat patch by (D Richard Felker III <dalias at aerifal dot cx>)
michaelni
parents:
164
diff
changeset
|
84 yuv4mpeg_init(); |
726
17178af951b4
Ogg demuxer ported from tcvp by Luca Barbato <lu_zero at gentoo dot org>,
mru
parents:
682
diff
changeset
|
85 |
17178af951b4
Ogg demuxer ported from tcvp by Luca Barbato <lu_zero at gentoo dot org>,
mru
parents:
682
diff
changeset
|
86 ogg_init(); |
682 | 87 #ifdef CONFIG_LIBOGG |
726
17178af951b4
Ogg demuxer ported from tcvp by Luca Barbato <lu_zero at gentoo dot org>,
mru
parents:
682
diff
changeset
|
88 libogg_init(); |
0 | 89 #endif |
90 | |
91 ffm_init(); | |
795
391669d461d4
*BSD bktr grab support by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
726
diff
changeset
|
92 #if defined(CONFIG_VIDEO4LINUX) || defined(CONFIG_BKTR) |
0 | 93 video_grab_init(); |
94 #endif | |
95 #if defined(CONFIG_AUDIO_OSS) || defined(CONFIG_AUDIO_BEOS) | |
96 audio_init(); | |
97 #endif | |
98 | |
27
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
20
diff
changeset
|
99 #ifdef CONFIG_DV1394 |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
20
diff
changeset
|
100 dv1394_init(); |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
20
diff
changeset
|
101 #endif |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
20
diff
changeset
|
102 |
571 | 103 #ifdef CONFIG_DC1394 |
104 dc1394_init(); | |
105 #endif | |
106 | |
219
2f16e3066399
initial nut muxer and demuxer (demuxer is not fail safe)
al3x
parents:
211
diff
changeset
|
107 nut_init(); |
380
9416dc106e06
matroska demuxer by ("Ronald S. Bultje" <R dot S dot Bultje at students dot uu dot nl>)
michael
parents:
338
diff
changeset
|
108 matroska_init(); |
533
59da52e5f5a5
support for Sierra Online audio files and Apple QuickDraw codec,
melanson
parents:
497
diff
changeset
|
109 sol_init(); |
565
485a529adaee
Electronic Arts Game Multimedia format demuxer (WVE/UV2/etc.)
melanson
parents:
553
diff
changeset
|
110 ea_init(); |
594 | 111 nsvdec_init(); |
847 | 112 daud_init(); |
219
2f16e3066399
initial nut muxer and demuxer (demuxer is not fail safe)
al3x
parents:
211
diff
changeset
|
113 |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
114 #ifdef CONFIG_MUXERS |
20 | 115 /* image formats */ |
589
f847832552e5
disable redundant image formats, otherwise we wont get any bugreports about -f image2
michael
parents:
571
diff
changeset
|
116 #if 0 |
20 | 117 av_register_image_format(&pnm_image_format); |
118 av_register_image_format(&pbm_image_format); | |
119 av_register_image_format(&pgm_image_format); | |
120 av_register_image_format(&ppm_image_format); | |
109
c82a6062485e
added new netpbm pam format support (needed for alpha plane support)
bellard
parents:
71
diff
changeset
|
121 av_register_image_format(&pam_image_format); |
20 | 122 av_register_image_format(&pgmyuv_image_format); |
123 av_register_image_format(&yuv_image_format); | |
71 | 124 #ifdef CONFIG_ZLIB |
44 | 125 av_register_image_format(&png_image_format); |
71 | 126 #endif |
47
45308962220f
added jpeg image encoder and decoder (new YUV handling routines and mjpeg codec fixes are necessary to go further)
bellard
parents:
44
diff
changeset
|
127 av_register_image_format(&jpeg_image_format); |
589
f847832552e5
disable redundant image formats, otherwise we wont get any bugreports about -f image2
michael
parents:
571
diff
changeset
|
128 #endif |
885 | 129 av_register_image_format(&gif_image_format); |
639 | 130 // av_register_image_format(&sgi_image_format); heap corruption, dont enable |
858
66cc656ea404
Replace CONFIG_ENCODERS/CONFIG_DECODERS with CONFIG_MUXERS/CONFIG_DEMUXERS
diego
parents:
847
diff
changeset
|
131 #endif //CONFIG_MUXERS |
20 | 132 |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
896
diff
changeset
|
133 #ifdef CONFIG_PROTOCOLS |
0 | 134 /* file protocols */ |
135 register_protocol(&file_protocol); | |
136 register_protocol(&pipe_protocol); | |
137 #ifdef CONFIG_NETWORK | |
138 rtsp_init(); | |
139 rtp_init(); | |
140 register_protocol(&udp_protocol); | |
141 register_protocol(&rtp_protocol); | |
142 register_protocol(&tcp_protocol); | |
143 register_protocol(&http_protocol); | |
144 #endif | |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
896
diff
changeset
|
145 #endif |
0 | 146 } |