[FFmpeg-cvslog] lavdevice: mark v4l for removal on next major bump.

Anton Khirnov git at videolan.org
Fri May 27 02:53:56 CEST 2011


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Thu May 26 17:48:52 2011 +0200| [aaea1490351bfd1e8f21cb4b7e4c25d82d090e94] | committer: Anton Khirnov

lavdevice: mark v4l for removal on next major bump.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=aaea1490351bfd1e8f21cb4b7e4c25d82d090e94
---

 libavdevice/alldevices.c |    2 ++
 libavdevice/avdevice.h   |    4 ++++
 libavdevice/v4l.c        |    5 +++++
 3 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/libavdevice/alldevices.c b/libavdevice/alldevices.c
index 0e2cf6d..e7bfb02 100644
--- a/libavdevice/alldevices.c
+++ b/libavdevice/alldevices.c
@@ -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);
 
diff --git a/libavdevice/avdevice.h b/libavdevice/avdevice.h
index d1e321b..d82b26f 100644
--- a/libavdevice/avdevice.h
+++ b/libavdevice/avdevice.h
@@ -33,6 +33,10 @@
                                            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.
  */
diff --git a/libavdevice/v4l.c b/libavdevice/v4l.c
index 54d0394..6742667 100644
--- a/libavdevice/v4l.c
+++ b/libavdevice/v4l.c
@@ -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 */



More information about the ffmpeg-cvslog mailing list