在 V4L 中选择 yuy2 或 MJPEG

Choose yuy2 or MJPEG in V4L

我正在实施相机预览应用程序。我正在使用 V4L,直到现在我基本上都使用这段代码> https://linuxtv.org/downloads/v4l-dvb-apis/capture-example.html

在此示例或我发现的任何其他示例中,我找不到将帧格式更改为 MJPEG 以获得更高 fps 速率的可能性。有没有办法告诉 V4L 使用 MJPEG 而不是 YUY2?

找到了,其实很简单。只需将格式结构中的像素格式更改为 V4L2_PIX_FMT_MJPEG。 所以

format.fmt.pix.pixelformat = V4L2_PIX_FMT_YUYV;

变成

format.fmt.pix.pixelformat = V4L2_PIX_FMT_MJPEG;