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

wm4 nfxjfg at googlemail.com
Sat Oct 25 11:02:33 CEST 2014


On Fri, 24 Oct 2014 19:50:25 +0400
Andrey Utkin <andrey.krieger.utkin at gmail.com> wrote:

> ---
>  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,

IMHO it should check whether it's really a video device.


More information about the ffmpeg-devel mailing list