lavdevice: mark v4l for removal on next major bump.
authorAnton Khirnov <anton@khirnov.net>
Thu, 26 May 2011 15:48:52 +0000 (17:48 +0200)
committerAnton Khirnov <anton@khirnov.net>
Thu, 26 May 2011 17:04:02 +0000 (19:04 +0200)
libavdevice/alldevices.c
libavdevice/avdevice.h
libavdevice/v4l.c

index 0e2cf6d..e7bfb02 100644 (file)
@@ -47,7 +47,9 @@ void avdevice_register_all(void)
     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);
 
index d1e321b..d82b26f 100644 (file)
                                            LIBAVDEVICE_VERSION_MICRO)
 #define LIBAVDEVICE_BUILD       LIBAVDEVICE_VERSION_INT
 
+#ifndef FF_API_V4L
+#define FF_API_V4L              (LIBAVDEVICE_VERSION_MAJOR < 54)
+#endif
+
 /**
  * Return the LIBAVDEVICE_VERSION_INT constant.
  */
index 54d0394..6742667 100644 (file)
@@ -19,6 +19,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#if FF_API_V4L
+
 #undef __STRICT_ANSI__ //workaround due to broken kernel headers
 #include "config.h"
 #include "libavutil/rational.h"
@@ -83,6 +85,8 @@ static int grab_read_header(AVFormatContext *s1, AVFormatParameters *ap)
     int j;
     int vformat_num = FF_ARRAY_ELEMS(video_formats);
 
+    av_log(s1, AV_LOG_WARNING, "V4L input device is deprecated and will be removed in the next release.");
+
     if (ap->time_base.den <= 0) {
         av_log(s1, AV_LOG_ERROR, "Wrong time base (%d)\n", ap->time_base.den);
         return -1;
@@ -368,3 +372,4 @@ AVInputFormat ff_v4l_demuxer = {
     .flags = AVFMT_NOFILE,
     .priv_class = &v4l_class,
 };
+#endif  /* FF_API_V4L */