Doc improvement for -target patch by (Michel Bardiaux <mbardiaux at peaktime dot...
[libav.git] / libavformat / allformats.c
CommitLineData
4624540b
FB
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 */
27void av_register_all(void)
28{
29 avcodec_init();
30 avcodec_register_all();
31
32 mpegps_init();
33 mpegts_init();
764ef400 34#ifdef CONFIG_ENCODERS
4624540b
FB
35 crc_init();
36 img_init();
03cfe134 37 img2_init();
764ef400 38#endif //CONFIG_ENCODERS
4624540b 39 raw_init();
6a58e151 40 mp3_init();
4624540b 41 rm_init();
1d0d55da 42#ifdef CONFIG_RISKY
4624540b 43 asf_init();
1d0d55da 44#endif
764ef400 45#ifdef CONFIG_ENCODERS
4624540b 46 avienc_init();
764ef400 47#endif //CONFIG_ENCODERS
4624540b 48 avidec_init();
c3775e54 49 ff_wav_init();
4624540b
FB
50 swf_init();
51 au_init();
764ef400 52#ifdef CONFIG_ENCODERS
4624540b 53 gif_init();
764ef400 54#endif //CONFIG_ENCODERS
4624540b 55 mov_init();
764ef400 56#ifdef CONFIG_ENCODERS
1cb5f7fd 57 movenc_init();
4624540b 58 jpeg_init();
764ef400 59#endif //CONFIG_ENCODERS
c3775e54 60 ff_dv_init();
3c96b4ef 61 fourxm_init();
764ef400 62#ifdef CONFIG_ENCODERS
d4f5d74a 63 flvenc_init();
764ef400 64#endif //CONFIG_ENCODERS
d4f5d74a 65 flvdec_init();
3f16d933 66 str_init();
3ef8be2b
MM
67 roq_init();
68 ipmovie_init();
493645eb 69 wc3_init();
2fdf638b
MM
70 westwood_init();
71 film_init();
4120a53a 72 idcin_init();
42cad81a 73 flic_init();
a7eb3c8d 74 vmd_init();
87a0a681 75
d663a1fd 76#if defined(AMR_NB) || defined(AMR_NB_FIXED) || defined(AMR_WB)
bc634f6f
ZK
77 amr_init();
78#endif
2864dfd5 79 yuv4mpeg_init();
f20dca40 80
81e0d0b4
MH
81#ifdef CONFIG_VORBIS
82 ogg_init();
83#endif
84
4624540b
FB
85#ifndef CONFIG_WIN32
86 ffm_init();
87#endif
88#ifdef CONFIG_VIDEO4LINUX
89 video_grab_init();
90#endif
dfdfa47c 91#if defined(CONFIG_AUDIO_OSS) || defined(CONFIG_AUDIO_BEOS)
4624540b
FB
92 audio_init();
93#endif
94
8aa3ee32
MK
95#ifdef CONFIG_DV1394
96 dv1394_init();
97#endif
98
3aa180b8 99 nut_init();
08abe0fd 100 matroska_init();
d08d7142 101 sol_init();
3aa180b8 102
764ef400 103#ifdef CONFIG_ENCODERS
87a0a681
FB
104 /* image formats */
105 av_register_image_format(&pnm_image_format);
106 av_register_image_format(&pbm_image_format);
107 av_register_image_format(&pgm_image_format);
108 av_register_image_format(&ppm_image_format);
8975ba81 109 av_register_image_format(&pam_image_format);
87a0a681
FB
110 av_register_image_format(&pgmyuv_image_format);
111 av_register_image_format(&yuv_image_format);
3a13f6bd 112#ifdef CONFIG_ZLIB
0e04e4e9 113 av_register_image_format(&png_image_format);
3a13f6bd 114#endif
0250738f 115 av_register_image_format(&jpeg_image_format);
cdc90af0 116 av_register_image_format(&gif_image_format);
6a91ec51 117 av_register_image_format(&sgi_image_format);
764ef400 118#endif //CONFIG_ENCODERS
87a0a681 119
4624540b
FB
120 /* file protocols */
121 register_protocol(&file_protocol);
122 register_protocol(&pipe_protocol);
123#ifdef CONFIG_NETWORK
124 rtsp_init();
125 rtp_init();
126 register_protocol(&udp_protocol);
127 register_protocol(&rtp_protocol);
128 register_protocol(&tcp_protocol);
129 register_protocol(&http_protocol);
130#endif
131}