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

但是,UVC驱动程序实现对此情况和其他情况有一个怪癖。

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

最佳答案

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

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

# modinfo uvcvideo

显示有一个“怪癖”参数,可以使用。
查看您发布的faq,看来quirks确实是一个位域,因此,如果要启用多个怪癖,则必须添加数字。

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

然后使用quirks参数重新加载它。
假设您想同时启用UVC_QUIRK_FIX_BANDWIDTH(具有十六进制值0x80,十进制为128)和UVC_QUIRK_RESTRICT_FRAME_RATE(即0x200,即512),则可以使用640的怪癖值(即128+5120x200|0x80):
 # modprobe uvcvideo quirks=640

关于linux - 如何在Linux UVC驱动程序中启用UVC_QUIRK_FIX_BANDWIDTH怪癖?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25619309/

10-11 04:15