Jona Joachim wrote: > Hi, > I have a Logitech C200 webcam which includes a uvideo and a uaudio > device for voice recording. > > The video part works correctly and is usable, however uaudio is not so > happy, it complains in dmesg and no audio(4) device is attached: > uaudio0: audio descriptors make no sense, error=4 >
> > Does anybody know what may be wrong here? > A USB device has descriptions of its capabilities stored in descriptor subsets. What may be wrong is that one of the descriptor subsets has its size specified off by one (e.g., the size is one byte too small). In such case this specific descriptor subset will not parse. I've got a Logitech C500 that seems to have this problem. (also for one of the audio descriptor subsets) Ignoring the sizes of the descriptor subsets will make the descriptors parse properly. The only size check will be a boundary check based on the full descriptor set. (I haven't managed to implement this in the driver though and I'm not sure this is a good idea anyway because it removes a sanity check) I found this out by fooling around with parsing descriptors from user space. (after disabling uaudio and having the device attach as ugen) So likely you've got a device that doesn't adhere to the USB audio specifications.