[FFmpeg-devel] [PATCH] Use v4l2 input format automatically if filename starts with "/dev/video"

Andrey Utkin andrey.krieger.utkin at gmail.com
Fri Oct 24 17:50:25 CEST 2014


---
 libavdevice/v4l2.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavdevice/v4l2.c b/libavdevice/v4l2.c
index cf7a92c..ebc50bb 100644
--- a/libavdevice/v4l2.c
+++ b/libavdevice/v4l2.c
@@ -806,6 +806,13 @@ static int device_try_init(AVFormatContext *ctx,
     return ret;
 }
 
+static int v4l2_read_probe(AVProbeData *p)
+{
+    if (av_strstart(p->filename, "/dev/video", NULL))
+        return AVPROBE_SCORE_MAX;
+    return 0;
+}
+
 static int v4l2_read_header(AVFormatContext *ctx)
 {
     struct video_data *s = ctx->priv_data;
@@ -1033,6 +1040,7 @@ AVInputFormat ff_v4l2_demuxer = {
     .name           = "video4linux2,v4l2",
     .long_name      = NULL_IF_CONFIG_SMALL("Video4Linux2 device grab"),
     .priv_data_size = sizeof(struct video_data),
+    .read_probe     = v4l2_read_probe,
     .read_header    = v4l2_read_header,
     .read_packet    = v4l2_read_packet,
     .read_close     = v4l2_read_close,
-- 
1.8.5.5



More information about the ffmpeg-devel mailing list