Basado en lo que otros han dicho en los comentarios y algunas investigaciones que he hecho, aquí están mis sugerencias.
HARK-KINCET debería hacer el trabajo, aunque requiere instalación. Existe la posibilidad de que pueda agrupar la instalación en su juego, aunque probablemente requerirá permiso de los desarrolladores. [Basado en la respuesta de Theraot ]
La otra opción presentada aquí es usar las bibliotecas aquí y codificar un programa que se conecta a esas bibliotecas. [Basado en la respuesta de McLovin ]
Una solución que solo funcionará para usted sería usar el código publicado aquí y luego configurarlo en su núcleo. Es posible que desee verificar lo que dice el sitio sobre algunos micrófonos que tienen un error que impide la configuración completa; Si es así, use este comando de configuración:
sudo kinect_upload_fw /lib/firmware/kinect/UACFirmware.C9C6E852_35A3_41DC_A57D_BDDEB43DFD04
Si tiene este error, obtendrá este error:
libusbx: error [op_set_configuration] failed, error -1 errno 110
About to send: 09 20 02 06 01 00 00 00 60 00 00 00 00 00 00 00 15 00 00 00 00 00 00 00
libusbx: error [submit_bulk_transfer] submiturb failed error -1 errno=2
Error: res: -1 transferred: 0 (expected 24)
Por lo que he leído, este es probablemente el problema que tienes. Puede solucionarlo descargando la fuente y editándola, luego recuperando el firmware.
cd ~/Downloads
wget https://launchpad.net/ubuntu/+archive/primary/+files/kinect-audio-
setup_0.3.orig.tar.gz
Desde aquí, debe seguir los pasos presentados en el enlace , ya que mis explicaciones pueden ser un poco confusas. Si desea continuar con mi explicación, edite el archivo llamado "kinect_upload_fw.c" para que se lea como:
index b2188d6..e3b72db 100644 (file)
b/kinect_upload_fw/kinect_upload_fw.c
@@ -155,9 +155,19 @@ int main(int argc, char** argv) {
goto fail_libusb_open;
}
int current_configuration = 0;
libusb_get_configuration(dev, ¤t_configuration);
if (current_configuration != 1)
libusb_set_configuration(dev, 1);
libusb_claim_interface(dev, 0);
libusb_get_configuration(dev, ¤t_configuration);
if (current_configuration != 1) {
res = -ENODEV;
goto cleanup;
}
seq = 1;
bootloader_command cmd;
Guarde los cambios y luego compílelo e instálelo. Esto debería solucionar el problema.