The v4l2 driver can silently change the pixel format in the

VIDIOC_S_FMT ioctl(). In this case, device_init() should fail so that
a different pixel format is tried.
Patch by Jens Rosenboom (jens DOT rosenboom AT eu DOT panasonic DOT com)

Originally committed as revision 15660 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Jens Rosenboom 16 years ago committed by Luca Abeni
parent 0223bd6f52
commit 3d0d9a5e3b
  1. 5
      libavdevice/v4l2.c

@ -193,6 +193,11 @@ static int device_init(AVFormatContext *ctx, int *width, int *height, int pix_fm
*height = fmt.fmt.pix.height;
}
if (pix_fmt != fmt.fmt.pix.pixelformat) {
av_log(ctx, AV_LOG_DEBUG, "The V4L2 driver changed the pixel format from 0x%08X to 0x%08X\n", pix_fmt, fmt.fmt.pix.pixelformat);
res = -1;
}
return res;
}

Loading…
Cancel
Save