uvcc
uvcc copied to clipboard
Potential product (marketing) name versus product id differences
The uvcc
compatibility list and examples have so far been based on the product name, but looking at various reports it seems the product id may vary within the advertised name. While I'm personally only working on the layers built on top of USB, finding differences is both enlightening and confusing.
Instead of per-name sub-directories, the ./examples/
may need to have per-id sub-directories (or sub-sub-directories?) with the output files, for comparison.
Examples:
HD Pro Webcam C920
as 1133:2093
captured by @joelpurra in https://github.com/joelpurra/uvcc/blob/v5.0.1/examples/logitech-c920/devices.json#L1-L8
HD Pro Webcam C920
as 1133:2194
captured by @galak in #20:
[
{
"name": "HD Pro Webcam C920",
"vendor": 1133,
"product": 2194,
"address": 5
}
]
Are there other recorded examples of differences?
While it might only mean that the product has been assembled at a different factory, some products may very well be (wildly) different (on a technical level) within their product name "group". Therefore, it might be time to treat the name as more of a marketing label, than a source of truth for product capabilities.
- Does this mean that there are actual product differences:
- In hardware?
- In firmware?
- In product-specific software?
- In UVC compatibility?
- Does it make a difference in
uvcc
usage? - Would
lsusb --verbose
help spotting any differences? - Are these variations all original products, or third-party knock-offs?
- Can other version indicators be (reliably) used, such as the device descriptor
bcdDevice
field?The
bcdDevice
has the same format than thebcdUSB
and is used to provide a device version number. This value is assigned by the developer.
Further investigation is required, but it'd be even better to find the results of previous efforts.
Added more examples, including output from two "different" Microsoft LifeCam Studio (model number 1425) hardware revisions. Apart from the USB product id, the two cameras do not seem to differ -- at least when simply comparing ranges/default values/etcetera from @holbrookdev's output and mine. So that's a good indicator, at least for the one example available so far.