Sur ma carte RasPi, Debian Linux, le microphone USB est parfois bloqué de telle sorte que rien ne peut l'utiliser. Le microphone a une LED qui clignote généralement, lorsqu'il est verrouillé, il s'éteint.
L'utilitaire le arecord
décrit comme suit:
card 1: Device [DYNEX USB MIC Device], device 0:USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
Lorsque le microphone cesse de fonctionner, arecord
donne des diagnostics comme celui-ci:
> arecord -D plughw:1,0 > recording.wav
Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Mono
arecord: set_params:1145: Unable to install hw_params:
ACCESS: RW_INTERLEAVED
FORMAT: U8
etc...
Débrancher et brancher le microphone le corrige, uniquement parce que le creux actuel oblige le RasPi à redémarrer! Pas une situation idéale.
Existe-t-il un moyen de résoudre ce problème à partir de la ligne de commande ou d'un exécutable C?
J'ai également essayé d'utiliser ioctl(fd, USBDEVFS_RESET, 0)
la sortie de lsusb
pour fournir le numéro de bus et de périphérique. Cela rallume la LED, mais c'est exagéré. L'appareil doit être reconfiguré en utilisant alsamixer.