aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabrice Bellard <fabrice@bellard.org>2002-07-25 16:03:55 +0000
committerFabrice Bellard <fabrice@bellard.org>2002-07-25 16:03:55 +0000
commit4624540b71337b5cc01f7e65392b451fd439bed2 (patch)
treece584149d7898324431fb66b59bf5fe5705ccbe9
parent949885313226f01ae7ba9a69eff5c45b47b78d57 (diff)
downloadffmpeg-4624540b71337b5cc01f7e65392b451fd439bed2.tar.gz
separated init code from utils to reduce static library size
Originally committed as revision 803 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libav/allformats.c69
1 files changed, 69 insertions, 0 deletions
diff --git a/libav/allformats.c b/libav/allformats.c
new file mode 100644
index 0000000000..ff40001bd9
--- /dev/null
+++ b/libav/allformats.c
@@ -0,0 +1,69 @@
+/*
+ * Register all the formats and protocols
+ * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include "avformat.h"
+
+/* If you do not call this function, then you can select exactly which
+ formats you want to support */
+
+/**
+ * Initialize libavcodec and register all the codecs and formats.
+ */
+void av_register_all(void)
+{
+ avcodec_init();
+ avcodec_register_all();
+
+ mpegps_init();
+ mpegts_init();
+ crc_init();
+ img_init();
+ raw_init();
+ rm_init();
+ asf_init();
+ avienc_init();
+ avidec_init();
+ wav_init();
+ swf_init();
+ au_init();
+ gif_init();
+ mov_init();
+ jpeg_init();
+
+#ifndef CONFIG_WIN32
+ ffm_init();
+#endif
+#ifdef CONFIG_VIDEO4LINUX
+ video_grab_init();
+#endif
+#ifdef CONFIG_AUDIO_OSS
+ audio_init();
+#endif
+
+ /* file protocols */
+ register_protocol(&file_protocol);
+ register_protocol(&pipe_protocol);
+#ifdef CONFIG_NETWORK
+ rtsp_init();
+ rtp_init();
+ register_protocol(&udp_protocol);
+ register_protocol(&rtp_protocol);
+ register_protocol(&tcp_protocol);
+ register_protocol(&http_protocol);
+#endif
+}