Los dispositivos Android pueden funcionar en modo USB host o device. El host es el que controla la comunicación USB. Las PC generalmente operan en modo host. El dispositivo es el que está siendo alimentado y controlado por el host. La unidad flash es un ejemplo común de dispositivo USB. El kernel de Linux/Android admite el modo dispositivo a través de diferentes controladores de gadget. UMS, MTP, ADB son diferentes modos de gadget en dispositivos Android.
Audio a través de USB en Modo Dispositivo
En dispositivos Android, técnicamente es posible transmitir Audio sobre USB tanto en modo host como en modo dispositivo. Desde Android 4.1, este último modo es “proporcionado por Android Open Accessory (AOA) 2.0 y proporciona capacidades de audio limitadas”. Utiliza el Controlador de Gadget de Audio USB en el kernel (compilado con la opción CONFIG_USB_AUDIO
) y los accesorios que admiten el protocolo AOAv2 se construyen con el Kit de Desarrollo de Accesorios (ADK). La página de Accesorios Personalizados establece:
El protocolo AOA especifica cómo un accesorio puede establecer comunicación con un dispositivo Android a través de USB. Debido a la baja potencia de salida de los dispositivos Android, AOA requiere que el accesorio actúe como un host USB, lo que significa que el accesorio conectado debe alimentar el bus.
Pero según la documentación oficial:
El audio en modo de accesorio no ha sido ampliamente adoptado y actualmente no se recomienda para nuevos diseños.
Y la documentación del protocolo AOA advierte:
Precaución: El soporte de audio de AOAv2 se ha descontinuado en Android 8.0.
Esto significa que los dispositivos Android 9+ no podrán funcionar en modo dispositivo mientras transmiten audio sobre USB. Por lo tanto, la opción de configuración USB Audio Source ya no está disponible.
Audio a través de USB en Modo Host
Sin embargo, los dispositivos Android admiten periféricos de audio en modo host (el kernel debe estar compilado con CONFIG_SND_USB_AUDIO
). Dado que AOA es específico de Android, tales accesorios no son utilizables con otros hosts como las PC. Por lo tanto, hubo una demanda de fabricantes de periféricos de audio, OEMs de dispositivos y la comunidad de desarrolladores de ROM para admitir la capacidad estándar de salida de audio USB en modo host (por ejemplo, ver esto, esto y esto). Se agregó soporte para un subconjunto de características de la clase 1 de audio USB (UAC1) en Android 5.0.
Las clases de dispositivos USB especifican los protocolos estándar para las funciones periféricas USB para que el host pueda interoperar con ellos sin necesidad de ningún controlador específico de hardware (es decir, en modo sin controlador). El almacenamiento masivo USB (UMS) es un ejemplo común. Todas las unidades flash compatibles con la Clase de Almacenamiento Masivo (MSC) funcionan en todos los sistemas operativos, incluidos Linux, Android y Windows, sin importar el fabricante del dispositivo. De la misma manera, los periféricos de audio USB que son compatibles con la Clase de Audio USB 1 funcionan con dispositivos Android como en cualquier otro host USB, como las PC.
Por lo tanto, el audio USB en modo host cubre una amplia gama de periféricos basados en USB, incluidos los auriculares que siguen la especificación de auriculares USB.
Cuando un dispositivo periférico compatible con UAC1 (como un DAC) está conectado al puerto USB en un dispositivo Android, el audio digital se enruta automáticamente hacia ese periférico. Sin embargo, si una aplicación desea utilizar API de host USB avanzadas para interactuar con el periférico (y no simplemente el enrutamiento de audio), es posible Desactivar el enrutamiento de audio USB en las Opciones de Desarrollador.
1 votos
Te das cuenta de que el Samsung SM-A510F es del 2016 y tiene un conector para auriculares, por lo que es poco probable que tenga los controladores para audio USB. De lo contrario, deberías mostrar lo que ves en tu dispositivo.
3 votos
Basado en algunos informes, la opción de Audio Source fue eliminada desde Android 9 (ref: Foro XDA, Reddit)
0 votos
@AndrewT. > Gracias por los enlaces, así que supongo que no hay ninguna comunicación oficial al respecto.
0 votos
Una opción es MIDI. Pensando para mí mismo: "Bueno, ESO es audio...", lo intenté. ¡Mi USB DAC (reference-audio-analyzer.pro/es/…) ahora está funcionando de nuevo! :D ¡Bastante emocionado! Puede que la experiencia varíe, pero ¡vale la pena intentarlo! :)))