Stem Splitter + Remix Inteligente
Una aplicación web donde el usuario sube cualquier canción y la IA la separa en 4 stems (voces, batería, bajo, melodía) en segundos. Desde esa misma pantalla puede hacer remix en tiempo real: ajustar BPM, transponer la tonalidad, silenciar o potenciar cada stem y exportar el resultado.
Por qué HTDemucs v4
HTDemucs v4 (MIT license) es el modelo de separación de fuentes de Meta AI con mejor SDR en benchmarks 2024. Supera a Spleeter (2019, TensorFlow 1.x) en 3-5 dB SDR en todas las pistas. El modelo htdemucs_ft (fine-tuned) ofrece la mejor calidad para voces complejas sin artefactos.
Arquitectura
- Backend: FastAPI + Uvicorn con procesamiento asíncrono. El usuario sube el audio, recibe un job_id y hace polling hasta que los stems están listos.
- Motor IA: HTDemucs v4 (htdemucs_ft) — 4 stems: vocals, drums, bass, other
- Frontend: WaveSurfer.js 7 para visualización de formas de onda. Web Audio API para playback y mezcla en tiempo real.
Stack técnico
- HTDemucs v4 (MIT): mejor modelo open-source de separación de fuentes de Meta AI
- FastAPI + Uvicorn: API asíncrona con procesamiento en background tasks
- WaveSurfer.js 7: visualización declarativa de formas de onda por stem
- Web Audio API nativa: mezcla en tiempo real con GainNodes independientes por stem
Integración, datos y licencia
- Integración: API REST propia (FastAPI) con 4 endpoints documentados en el repositorio; se puede consumir desde cualquier lenguaje o plataforma, con especificación OpenAPI autogenerada.
- Tratamiento de datos: el procesamiento se realiza íntegramente en el servidor del proyecto, sin enviar datos a servicios de IA de terceros. No se almacenan las consultas de la demo.
- Nota: El procesamiento de audio (Demucs) se ejecuta en el propio servidor; los archivos subidos se eliminan tras completar el trabajo.
- Licencia: MIT — uso libre, incluido comercial, manteniendo el aviso de copyright. El repositorio contiene la aplicación completa y puede desplegarse en infraestructura propia. El código es gratuito; los costes de motor de IA, infraestructura, implantación y mantenimiento corren por cuenta de quien lo despliega (no se ofrece soporte ni consultoría).
¿Cómo lo integro?
Disponible ahora: Trabajo asíncrono: se sube el audio, se consulta el estado por job_id y se descargan las pistas separadas — el patrón correcto para procesos largos, sin bloquear al cliente.
Integraciones habituales en este sector (valoradas como vía recomendada; salvo que se indique lo contrario, no vienen implementadas — el código está preparado para añadirlas):
- Webhook al completar — YA IMPLEMENTADO: se pasa
callback_url en la subida y el servicio hace POST al terminar, con firma HMAC-SHA256 en X-StemSplitter-Signature (el esquema de GitHub o Stripe) para que el receptor verifique el origen. El destino se valida contra SSRF: se rechazan IPs privadas, loopback y link-local.
- DAWs (Ableton, Logic, Reaper): las pistas salen en WAV estándar, listas para arrastrar a la sesión; no hace falta plugin.
- Almacenamiento S3 / MinIO: en volumen alto conviene que el resultado se escriba en el bucket del cliente en vez de servirse por HTTP.