]> git.sesse.net Git - ffmpeg/blobdiff - libavdevice/alldevices.c
v4l2: add a pixel_format private option.
[ffmpeg] / libavdevice / alldevices.c
index f97dc73d916c8152b51f0891a3646f9ab41fe952..e7bfb027cd58df6d124383d43090fb855200ed0a 100644 (file)
@@ -1,50 +1,58 @@
 /*
  * Register all the grabbing devices.
  *
- * This file is part of FFmpeg.
+ * This file is part of Libav.
  *
- * FFmpeg is free software; you can redistribute it and/or
+ * Libav 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.1 of the License, or (at your option) any later version.
  *
- * FFmpeg is distributed in the hope that it will be useful,
+ * Libav 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 FFmpeg; if not, write to the Free Software
+ * License along with Libav; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "avformat.h"
+
+#include "config.h"
+#include "libavformat/avformat.h"
 #include "avdevice.h"
 
-#define REGISTER_MUXER(X,x) { \
-          extern AVOutputFormat x##_muxer; \
-          if(ENABLE_##X##_MUXER)   av_register_output_format(&x##_muxer); }
-#define REGISTER_DEMUXER(X,x) { \
-          extern AVInputFormat x##_demuxer; \
-          if(ENABLE_##X##_DEMUXER) av_register_input_format(&x##_demuxer); }
-#define REGISTER_MUXDEMUX(X,x)  REGISTER_MUXER(X,x); REGISTER_DEMUXER(X,x)
+#define REGISTER_OUTDEV(X,x) { \
+          extern AVOutputFormat ff_##x##_muxer; \
+          if(CONFIG_##X##_OUTDEV)  av_register_output_format(&ff_##x##_muxer); }
+#define REGISTER_INDEV(X,x) { \
+          extern AVInputFormat ff_##x##_demuxer; \
+          if(CONFIG_##X##_INDEV)   av_register_input_format(&ff_##x##_demuxer); }
+#define REGISTER_INOUTDEV(X,x)  REGISTER_OUTDEV(X,x); REGISTER_INDEV(X,x)
 
 void avdevice_register_all(void)
 {
-    static int inited;
+    static int initialized;
 
-    if (inited)
+    if (initialized)
         return;
-    inited = 1;
+    initialized = 1;
 
     /* devices */
-    REGISTER_MUXDEMUX (AUDIO_BEOS, audio_beos);
-    REGISTER_DEMUXER  (BKTR, bktr);
-    REGISTER_DEMUXER  (DV1394, dv1394);
-    REGISTER_MUXDEMUX (OSS, oss);
-    REGISTER_DEMUXER  (V4L2, v4l2);
-    REGISTER_DEMUXER  (V4L, v4l);
-    REGISTER_DEMUXER  (X11_GRAB_DEVICE, x11_grab_device);
+    REGISTER_INOUTDEV (ALSA, alsa);
+    REGISTER_INDEV    (BKTR, bktr);
+    REGISTER_INDEV    (DV1394, dv1394);
+    REGISTER_INDEV    (FBDEV, fbdev);
+    REGISTER_INDEV    (JACK, jack);
+    REGISTER_INOUTDEV (OSS, oss);
+    REGISTER_INOUTDEV (SNDIO, sndio);
+    REGISTER_INDEV    (V4L2, v4l2);
+#if FF_API_V4L
+    REGISTER_INDEV    (V4L, v4l);
+#endif
+    REGISTER_INDEV    (VFWCAP, vfwcap);
+    REGISTER_INDEV    (X11_GRAB_DEVICE, x11_grab_device);
 
     /* external libraries */
-    REGISTER_DEMUXER  (LIBDC1394, libdc1394);
+    REGISTER_INDEV    (LIBDC1394, libdc1394);
 }