00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "avformat.h"
00021 #include "avdevice.h"
00022
00023 #define REGISTER_MUXER(X,x) { \
00024 extern AVOutputFormat x##_muxer; \
00025 if(ENABLE_##X##_MUXER) av_register_output_format(&x##_muxer); }
00026 #define REGISTER_DEMUXER(X,x) { \
00027 extern AVInputFormat x##_demuxer; \
00028 if(ENABLE_##X##_DEMUXER) av_register_input_format(&x##_demuxer); }
00029 #define REGISTER_MUXDEMUX(X,x) REGISTER_MUXER(X,x); REGISTER_DEMUXER(X,x)
00030
00031 void avdevice_register_all(void)
00032 {
00033 static int inited;
00034
00035 if (inited)
00036 return;
00037 inited = 1;
00038
00039
00040 REGISTER_MUXDEMUX (AUDIO_BEOS, audio_beos);
00041 REGISTER_DEMUXER (BKTR, bktr);
00042 REGISTER_DEMUXER (DV1394, dv1394);
00043 REGISTER_MUXDEMUX (OSS, oss);
00044 REGISTER_DEMUXER (V4L2, v4l2);
00045 REGISTER_DEMUXER (V4L, v4l);
00046 REGISTER_DEMUXER (X11_GRAB_DEVICE, x11_grab_device);
00047
00048
00049 REGISTER_DEMUXER (LIBDC1394, libdc1394);
00050 }