annotate allformats.c @ 533:59da52e5f5a5 libavformat

support for Sierra Online audio files and Apple QuickDraw codec, courtesy of Konstantin Shishkov
author melanson
date Tue, 28 Sep 2004 03:09:49 +0000
parents d95e74ef39e0
children 9e80f7595694
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
1 /*
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
2 * Register all the formats and protocols
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
3 * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
4 *
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
5 * This library is free software; you can redistribute it and/or
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
6 * modify it under the terms of the GNU Lesser General Public
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
7 * License as published by the Free Software Foundation; either
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
8 * version 2 of the License, or (at your option) any later version.
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
9 *
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
10 * This library is distributed in the hope that it will be useful,
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
13 * Lesser General Public License for more details.
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
14 *
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
15 * You should have received a copy of the GNU Lesser General Public
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
16 * License along with this library; if not, write to the Free Software
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
18 */
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
19 #include "avformat.h"
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
20
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
21 /* If you do not call this function, then you can select exactly which
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
22 formats you want to support */
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
23
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
24 /**
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
25 * Initialize libavcodec and register all the codecs and formats.
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
26 */
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
27 void av_register_all(void)
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
28 {
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
29 avcodec_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
30 avcodec_register_all();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
31
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
32 mpegps_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
33 mpegts_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
34 #ifdef CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
35 crc_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
36 img_init();
497
d95e74ef39e0 image2 / image API cleanup phase-1
michael
parents: 384
diff changeset
37 img2_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
38 #endif //CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
39 raw_init();
234
b99548e3ab84 ID3 parsing and generation in MP3 format
bellard
parents: 225
diff changeset
40 mp3_init();
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
41 rm_init();
40
721705c1f995 --disable-risky support
michaelni
parents: 29
diff changeset
42 #ifdef CONFIG_RISKY
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
43 asf_init();
40
721705c1f995 --disable-risky support
michaelni
parents: 29
diff changeset
44 #endif
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
45 #ifdef CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
46 avienc_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
47 #endif //CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
48 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
49 ff_wav_init();
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
50 swf_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
51 au_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
52 #ifdef CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
53 gif_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
54 #endif //CONFIG_ENCODERS
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
55 mov_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
56 #ifdef CONFIG_ENCODERS
201
85def00971c3 mov, 3gp, mp4 muxer by (Thomas Raivio <tjraivio at cc dot hut dot fi>)
michaelni
parents: 184
diff changeset
57 movenc_init();
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
58 jpeg_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
59 #endif //CONFIG_ENCODERS
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
60 ff_dv_init();
138
7373bd0a8438 add 4xm to the family
tmmm
parents: 109
diff changeset
61 fourxm_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
62 #ifdef CONFIG_ENCODERS
164
99fbacf0f764 flash video (flv) support patch by (Garrick Meeker <gmeeker at theoryllc dot com>)
michaelni
parents: 146
diff changeset
63 flvenc_init();
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
64 #endif //CONFIG_ENCODERS
164
99fbacf0f764 flash video (flv) support patch by (Garrick Meeker <gmeeker at theoryllc dot com>)
michaelni
parents: 146
diff changeset
65 flvdec_init();
209
7414bbf64011 first pass at PSX STR demuxer; does not yet interact correctly with MDEC
tmmm
parents: 201
diff changeset
66 str_init();
211
349d63d52e7e initial commit for Id RoQ and Interplay MVE multimedia subsystems
tmmm
parents: 209
diff changeset
67 roq_init();
349d63d52e7e initial commit for Id RoQ and Interplay MVE multimedia subsystems
tmmm
parents: 209
diff changeset
68 ipmovie_init();
225
d0332f4362b6 demuxer for custom Wing Commander III movie (.mve) files
tmmm
parents: 219
diff changeset
69 wc3_init();
266
8bb470d85249 New demuxers: Sega FILM/CPK, Westwood VQA & AUD; new decoders: MS RLE &
tmmm
parents: 258
diff changeset
70 westwood_init();
8bb470d85249 New demuxers: Sega FILM/CPK, Westwood VQA & AUD; new decoders: MS RLE &
tmmm
parents: 258
diff changeset
71 film_init();
274
9fa2ec3b9982 implemented Id Quake II CIN support
tmmm
parents: 266
diff changeset
72 idcin_init();
315
ff595fc022ff yep, FLI support
melanson
parents: 279
diff changeset
73 flic_init();
338
6f50cb0ead51 initial commit for Sierra VMD file demuxer
melanson
parents: 315
diff changeset
74 vmd_init();
20
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
75
258
59c2e84817a1 AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 234
diff changeset
76 #if defined(AMR_NB) || defined(AMR_NB_FIXED) || defined(AMR_WB)
146
b9703b3c10b6 * 3gp patch by Joca
kabi
parents: 138
diff changeset
77 amr_init();
b9703b3c10b6 * 3gp patch by Joca
kabi
parents: 138
diff changeset
78 #endif
184
2438e76dde67 yuv4mpeg pipe reader for libavformat patch by (D Richard Felker III <dalias at aerifal dot cx>)
michaelni
parents: 164
diff changeset
79 yuv4mpeg_init();
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
80
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
81 #ifdef CONFIG_VORBIS
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
82 ogg_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
83 #endif
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
84
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
85 #ifndef CONFIG_WIN32
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
86 ffm_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
87 #endif
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
88 #ifdef CONFIG_VIDEO4LINUX
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
89 video_grab_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
90 #endif
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
91 #if defined(CONFIG_AUDIO_OSS) || defined(CONFIG_AUDIO_BEOS)
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
92 audio_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
93 #endif
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
94
27
fcdea3df94fe dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents: 20
diff changeset
95 #ifdef CONFIG_DV1394
fcdea3df94fe dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents: 20
diff changeset
96 dv1394_init();
fcdea3df94fe dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents: 20
diff changeset
97 #endif
fcdea3df94fe dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents: 20
diff changeset
98
219
2f16e3066399 initial nut muxer and demuxer (demuxer is not fail safe)
al3x
parents: 211
diff changeset
99 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
100 matroska_init();
533
59da52e5f5a5 support for Sierra Online audio files and Apple QuickDraw codec,
melanson
parents: 497
diff changeset
101 sol_init();
219
2f16e3066399 initial nut muxer and demuxer (demuxer is not fail safe)
al3x
parents: 211
diff changeset
102
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
103 #ifdef CONFIG_ENCODERS
20
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
104 /* image formats */
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
105 av_register_image_format(&pnm_image_format);
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
106 av_register_image_format(&pbm_image_format);
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
107 av_register_image_format(&pgm_image_format);
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
108 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
109 av_register_image_format(&pam_image_format);
20
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
110 av_register_image_format(&pgmyuv_image_format);
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
111 av_register_image_format(&yuv_image_format);
71
a803af1b10be * compile PNG only when ZLIB is available
kabi
parents: 52
diff changeset
112 #ifdef CONFIG_ZLIB
44
7c5da7e7239a added basic png handling
bellard
parents: 40
diff changeset
113 av_register_image_format(&png_image_format);
71
a803af1b10be * compile PNG only when ZLIB is available
kabi
parents: 52
diff changeset
114 #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
115 av_register_image_format(&jpeg_image_format);
52
2a60f406fccc added GIF image format (both read and write)
bellard
parents: 47
diff changeset
116 av_register_image_format(&gif_image_format);
382
37a29b5200d8 added SGI image format, encoding and decoding, courtesy of Todd Kirby
melanson
parents: 380
diff changeset
117 av_register_image_format(&sgi_image_format);
277
a313e1080322 disable encoders where appropriate (patch courtesy of BERO
melanson
parents: 274
diff changeset
118 #endif //CONFIG_ENCODERS
20
3d52de18ecc3 added still image support
bellard
parents: 0
diff changeset
119
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
120 /* file protocols */
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
121 register_protocol(&file_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
122 register_protocol(&pipe_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
123 #ifdef CONFIG_NETWORK
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
124 rtsp_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
125 rtp_init();
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
126 register_protocol(&udp_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
127 register_protocol(&rtp_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
128 register_protocol(&tcp_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
129 register_protocol(&http_protocol);
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
130 #endif
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
131 }