据我所知,设备驱动程序是SW的一部分,能够与连接到计算机的特定类型的设备进行通信 .

对于USB网络摄像头,负责的驱动程序是UVC,支持任何符合UVC标准的设备 . 这意味着使OS或其他计算机程序能够访问硬件功能,而无需了解所使用硬件的精确细节 .

出于这个原因,我通过运行安装了UVC Linux设备驱动程序:

opkg install kernel-module-uvcvideo

Webcam已被Linux内核认可: dev/video0 . 但是,我仍然无法使用FFmpeg执行视频流,因为我缺少V4L2 API . 我通过配置内核安装了V4L2 .

My queries are:

  • UVC驱动程序和V4L2如何链接在一起?

  • V4L2 API的用途是什么?

  • 如果我没有先安装UVC,它将与V4L2一起安装?

LinuxTV指的是:uvcvideo驱动程序实现仅适用于V4L2 API . 这意味着UVC是V4L2 API的一部分?