Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Linux UVC驱动程序中启用UVC_怪癖_修复_带宽怪癖?_Linux_V4l2_Uvc - Fatal编程技术网

如何在Linux UVC驱动程序中启用UVC_怪癖_修复_带宽怪癖?

如何在Linux UVC驱动程序中启用UVC_怪癖_修复_带宽怪癖?,linux,v4l2,uvc,Linux,V4l2,Uvc,我目前正在尝试在Wandboard板上运行2,它必须共享一个USB集线器。问题是,当前的驱动程序实现(仅限YUV)使USB集线器饱和,最终我只能连接一个摄像头 然而,UVC驱动程序实现对于这种情况和其他情况有一个怪癖 问题是,我并没有找到任何关于如何加载这些怪癖的文档。 你能帮我一下吗?你可以通过传递一些参数来改变许多内核模块的行为 您可以使用modinfo命令获取所有可用模块参数的列表: # modinfo uvcvideo 显示有一个“怪癖”参数,可以使用。 查看您发布的日志,似乎怪癖实际

我目前正在尝试在Wandboard板上运行2,它必须共享一个USB集线器。问题是,当前的驱动程序实现(仅限YUV)使USB集线器饱和,最终我只能连接一个摄像头

然而,UVC驱动程序实现对于这种情况和其他情况有一个怪癖

问题是,我并没有找到任何关于如何加载这些怪癖的文档。
你能帮我一下吗?

你可以通过传递一些参数来改变许多内核模块的行为

您可以使用
modinfo
命令获取所有可用模块参数的列表:

# modinfo uvcvideo
显示有一个“怪癖”参数,可以使用。 查看您发布的日志,似乎
怪癖实际上是一个位字段,因此如果您想启用多个怪癖,您必须添加数字

首先卸载驱动程序(显然,这样做时不能使用它):

然后使用
quirks
参数重新加载它。 假设您想同时启用
UVC\u QUIRK\u FIX\u带宽
(十六进制值
0x80
,十进制值
128
)和
UVC\u QUIRK\u RESTRICT\u FRAME\u RATE
(即
0x200
,因此
512
),您将使用
640
(分别为
128+512
0x200 | 0x80
):


为了使umläute的答案在重新启动后仍然有效,我创建了包含内容的文件
/etc/modprobe.d/uvcvideo.conf

options uvcvideo quirks=0x80
要使模块重新加载
uvcvideo.conf
,请卸载并加载模块:

rmmod uvcvideo
modprobe uvcvideo
有趣的是,即使使用
echo
修改
uvcvideo
trace
参数,使用
echo
设置
怪癖(即加载
uvcvideo
时)也不起作用


注意:UVC_QUIRK_FIX_带宽为机器视觉应用程序的每个USB主机控制器(在Ubuntu 14.04上)启用了许多Microsoft LifeCam Cinema网络摄像头。LifeCam Cinema保留了大约48%的USB 2.0带宽(根据Windows上的设备管理器),因此没有QUIRK,每个主机控制器最多可以操作两个LifeCam。(对于一些主机控制器芯片,我甚至被限制为一个没有这种怪癖的LifeCam。)

PS:这种怪癖对于压缩格式不起作用(但LifeCam,例如,仍然保留48%的USB 2.0带宽);这有一个UVC驱动程序漏洞,使得这种怪癖也适用于压缩格式。没有尝试过这种漏洞,但代码看起来是正确的。:)要获取当前值:
cat/sys/module/uvcvideo/parameters/quirks
options uvcvideo quirks=0x80
rmmod uvcvideo
modprobe uvcvideo