[PROYECTO] He portado Mixxx a Android: Stems con IA y controladoras USB

Javi Labarum
por hace 3 horas
¡Buenas a todos los hispasónicos!

Quería compartir por aquí un proyecto personal en el que llevo trabajando mucho tiempo y que creo que a muchos DJs y aficionados a la informática musical os va a llamar la atención.

Siempre he echado en falta que en Android no existiera una alternativa DJ profesional de verdad como sí las hay en iPad o en escritorio. Casi todo lo que hay en la Play Store son apps recortadas, de juguete o con suscripciones.

Por eso decidí portar Mixxx DJ a Android de forma nativa (en C++ con Qt 6.8 y ARM64), manteniendo el motor de audio real de Mixxx 2.7 a 32-bit floating point y muy baja latencia.

El proyecto es 100% libre, open source y gratuito, y ya está en una fase muy madura (versión actual v1.6.1).

¿Qué tiene de especial?

• Separación de STEMS por IA en el propio dispositivo (Offline):
Permite separar voces, batería, bajo y otros instrumentos directamente en el móvil o tablet (usando modelos como Spleeter o HTDemucs) en segundo plano, sin conexión a internet y conservando beatgrid, cues y BPM.

• Driver USB Audio propio (el gran dolor de cabeza en Android resuelto):
Android suele dar problemas para rutear 4 canales de audio a la vez. He implementado un driver de audio USB propio para tarjetas class-compliant: conecta una Pioneer DDJ-400, DDJ-FLX4, etc., y tienes salida Master (canales 1-2) y preescucha por auriculares (canales 3-4) funcionando a la primera.

• Soporte MIDI nativo y mappings:
Detección directa de controladoras USB y Bluetooth MIDI por el sistema de Android, con mapeos oficiales automáticos.

• Lee directamente pendrives de Rekordbox y Engine DJ:
Mixxx Android incluye su propio lector de almacenamiento USB (incluso lee sticks FAT32 sin tabla de particiones que Android normalmente no monta). Puedes pinchar el pendrive que usas en los CDJs/XDJs de cabina y carga las pistas, listas, hot cues, memory cues y beatgrids tal cual.

• Waveforms a 60, 90 y 120 Hz renderizados por GPU:
Rendimiento visual ultra fluido en pantallas modernas de alta tasa de refresco (probado a 120 fps estables).

• Múltiples interfaces según el uso:
- Booth: pensada como la pantalla de un reproductor tipo CDJ/XDJ con controles táctiles para pinchar cómodamente sin controladora.
- Classic: la interfaz tradicional de Mixxx adaptada a pantallas táctiles.
- Lite: modo ultraligero que apenas consume un 5% de CPU, ideal para dispositivos modestos o sesiones largas cuidando la batería.

¿Dónde probarlo o descargarlo?

Podéis descargar directamente el APK precompilado desde el repositorio de GitHub:
GitHub del proyecto / Descargas: https://github.com/JaviLabarumDJ/mixxx-android
Mi web: JaviLabarumDJ

(Requiere Android 10 o superior en arquitectura ARM64). Además, la propia app incluye un actualizador automático que os avisa cuando hay una nueva versión disponible.

Avances del día a día y vídeos en Instagram

Como voy haciendo pruebas continuamente con diferentes cacharros, controladoras y optimizaciones, en Instagram es donde voy subiendo las cosas antes: vídeos reales en cabina/mesa, stories con tests de rendimiento y versiones de prueba previas a las releases gordas.

Podéis ver un resumen de las últimas actualizaciones funcionando en este Reel:
👉 Ver Reel con las últimas novedades en Instagram

Y si queréis seguir el desarrollo al día y futuros avances:
Instagram: @javilabarumdj

Me encantaría saber qué os parece y si tenéis alguna tablet o móvil Android por casa para probarla con vuestras controladoras. Si alguien lo prueba, ¡agradezco un montón cualquier feedback, reporte de fallo o sugerencia de mapeo!

¡Un saludo a toda la comunidad!
Nuevo post

Regístrate o para poder postear en este hilo

Música
Temas