Cómo Extraer Cualquier Sonido de una Pista Usando Texto Plano

Si alguna vez has necesitado eliminar ladridos de perros de un podcast o extraer las voces de una pista antigua, probablemente has tratado con divisores estándar. Por lo general, solo pueden dividir una pista en exactamente cuatro stems: voces, bajo, batería y todo lo demás. Un paso a la izquierda o derecha de eso—como aislar aplausos específicos o el tintineo de vasos—y las redes neuronales clásicas se quedan cortas.
最近,Meta发布了SAM-Audio模型,可以根据文本描述分割音轨。问题是原始仓库需要大量VRAM,并非所有机器都能运行。audioghost-ai项目正是为了解决这个问题:作者删除了架构中不必要的部分,将VRAM需求减少近一半,并将其打包成一个即用的Web应用程序。
Qué Puede Hacer el Proyecto
La idea central detrás de AudioGhost es darle comandos al modelo en lenguaje humano cotidiano. Subes un archivo de audio o video, escribes una descripción en el campo de entrada drums, crowd noise o a dog barking, y eliges una acción: extraer ese sonido o, por el contrario, eliminarlo de la pista.
La interfaz proporciona inmediatamente un mezclador de pistas integrado. Puedes escuchar el original, el sonido aislado y la pista residual directamente en el navegador, comparando resultados sobre la marcha. El flujo de video aún no se analiza visualmente—el servicio solo extrae la pista de audio del video—pero el autor planea integrar SAM 2 para hacer clic en objetos del fotograma.
Cómo Lograron Reducir el Modelo a 4 GB de VRAM
El SAM-Audio original fue diseñado como un caballo de batalla multimodal universal. Por esta razón, los codificadores de video y los clasificadores de texto permanecían constantemente en memoria, incluso si el usuario solo quería limpiar un archivo MP3.
AudioGhost utiliza el modo Lite propuesto en una de las discusiones del repositorio original de Meta. Así es como ahorraron recursos:
- Eliminaron el Codificador de Visión y el Clasificador Visual, ahorrando aproximadamente 4 GB de VRAM
- Desactivaron el Clasificador de Texto y los predictores de spans, ganando otros 3–4 GB
- Cambiaron los cálculos a precisión
bfloat16de forma predeterminada - Dividieron las pistas largas en fragmentos de 25 segundos
Como resultado, el modelo base puede ejecutarse en GPUs de consumo como la RTX 3070 o RTX 4060 con 8 GB de memoria. Si habilitas el modo de alta calidad en float32, los requisitos suben a 13 GB, pero para la mayoría de las tareas cotidianas, el modo base es suficiente. En términos de velocidad, la inferencia en una RTX 4090 de prueba logra una aceleración diez veces mayor respecto al audio en tiempo real.
Arquitectura y Pila Tecnológica
El desarrollador no complicó el proyecto con herramientas exóticas. La arquitectura es directa:
┌─────────────────────────────────────────────────┐
│ Frontend │
│ (Next.js + Tailwind v4) │
└──────────────────────┬──────────────────────────┘
│
┌──────────────────────▼──────────────────────────┐
│ Backend API │
│ (FastAPI + Python) │
└──────────────────────┬──────────────────────────┘
│
▼
┌─────────────────────────────────────────────────┐
│ Task Queue │
│ (Celery + Redis) │
└──────────────────────┬──────────────────────────┘
│
▼
┌─────────────────────────────────────────────────┐
│ SAM Audio Lite │
│ (Memory-optimized Meta SAM-Audio) │
└─────────────────────────────────────────────────┘
El frontend está construido con Next.js y Tailwind v4. El backend funciona con FastAPI, y las tareas pesadas de separación de audio se descargan a una cola a través de Celery y Redis. Esto mantiene la interfaz receptiva durante operaciones de procesamiento de archivos prolongadas.
Inicio Rápido
Para Windows, el repositorio contiene scripts bat listos para usar que configuran automáticamente el entorno de Conda, descargan Redis e instalan las dependencias.
Si estás compilando manualmente en Linux o a través de la terminal:
# Создаем окружение
conda create -n audioghost python=3.11 -y
conda activate audioghost
# Ставим PyTorch с поддержкой CUDA 12.6 и FFmpeg
pip install torch==2.9.0+cu126 torchvision==0.24.0+cu126 torchaudio==2.9.0+cu126 --index-url https://download.pytorch.org/whl/cu126
conda install -c conda-forge ffmpeg -y
# Ставим SAM Audio и зависимости бэкенда
pip install git+https://github.com/facebookresearch/sam-audio.git
cd backend && pip install -r requirements.txt
# Ставим фронтенд
cd ../frontend && npm install
Antes de iniciar, necesitarás una cuenta de HuggingFace. El modelo sam-audio-large está protegido por el acuerdo base, así que necesitas solicitar acceso en la página del modelo y generar un token, que luego se ingresa a través de la interfaz web del servicio.
Impresiones y Para Quién Es
El proyecto tiene alrededor de 470 estrellas en GitHub y estado MVP v1.0, así que puedes encontrar esquinas ásperas. Por ejemplo, los problemas binarios de FFmpeg a veces aparecen al compilar TorchCodec en Windows, y el modelo puede tener dificultades con descripciones de texto demasiado abstractas.
Sin embargo, es una de las pocas implementaciones de código abierto que convierte el modelo de investigación pesado de Meta en un servicio local funcional. Si editas videos, limpias pistas de audio o experimentas con diseño de sonido en una GPU local, este proyecto definitivamente merece un clon a tu carpeta local.
Proyectos relacionados