v4l2: use device node capabilities rather than whole device's
"capabilities" counter-intuitively specifies the overall capabilities of all device nodes provided by the given instance of the device driver. "device_caps" specifies the capabilities of the opened device node, if the V4L2_CAP_DEVICE_CAPS bit is set in "capabilities" (phew!). Those two sets of capabilities are different if the hardware has multiple functions, e.g. both video and VBI capture. VLC cares about the fact that the specific device node supports video capture or not, so lets use "device_caps" when available. Unfortatunely, this requires kernel version 3.4. In practice, this would only cause an actual failure if V4L2_CAP_STREAMING is set even though the current node does not support streaming I/O, I think.
Showing
Please register or sign in to comment