MCP Audio Tweaker
Procesamiento y optimización de audio por lotes utilizando FFmpeg. Modifica la tasa de muestreo, el bitrate, el volumen, los canales y aplica efectos.
Documentación
MCP Audio Tweaker
Un servidor de Model Context Protocol (MCP) para procesamiento y optimización de audio por lotes usando FFmpeg. Este paquete proporciona modificaciones de audio basadas en parámetros, incluyendo conversión de frecuencia de muestreo, ajuste de bitrate, control de volumen, configuración de canales y efectos de audio.
Características
- 🎵 Procesamiento de audio integral: Conversión de frecuencia de muestreo, ajuste de bitrate, control de volumen, configuración de canales
- 🔧 Integración con FFmpeg: Aprovecha FFmpeg para un procesamiento de audio robusto y multiplataforma
- 📦 Procesamiento por lotes: Procesa múltiples archivos de audio simultáneamente con gestión de cola
- 🎯 Sistema de preajustes: Configuraciones predefinidas para casos de uso comunes (audio de juegos, procesamiento de voz, masterización de música)
- 🎮 Audio de juegos optimizado: Preajustes especiales para desarrollo de juegos móviles, de escritorio y de consola
- 🤖 Integración con ElevenLabs: Preajuste optimizado para la salida de voz IA de ElevenLabs
- 🔍 Compatible con MCP: Integración completa con Claude Desktop y otros clientes MCP
- ⚡ Procesamiento concurrente: Procesamiento eficiente basado en cola para operaciones de lotes grandes
- 📊 Informes detallados: Resultados de procesamiento completos y manejo de errores
Instalación
npm install -g mcp-audio-tweaker
Requisitos previos
- Node.js 18.0.0 o superior
- FFmpeg instalado y disponible en el PATH del sistema
Instalación de FFmpeg
Windows:
# Using Chocolatey
choco install ffmpeg
# Using winget
winget install FFmpeg
macOS:
# Using Homebrew
brew install ffmpeg
Linux:
# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg
# CentOS/RHEL
sudo yum install ffmpeg
Inicio rápido
Integración MCP con Claude Desktop
Añade a tu configuración de Claude Desktop:
{
"mcpServers": {
"audio-tweaker": {
"command": "npx",
"args": ["-y", "mcp-audio-tweaker"],
"env": {
"AUDIO_TWEAKER_LOG_LEVEL": "info"
}
}
}
}
Uso independiente
Verifica los requisitos del sistema:
mcp-audio-tweaker --standalone check
Procesa un solo archivo:
mcp-audio-tweaker --standalone process \
--input input.wav \
--output output.mp3 \
--volume -3 \
--sample-rate 44100 \
--bitrate 192 \
--normalize
Procesamiento por lotes con preajuste:
mcp-audio-tweaker --standalone batch \
--input-dir ./audio/raw \
--output-dir ./audio/processed \
--preset game-audio-mobile
Lista los preajustes disponibles:
mcp-audio-tweaker --standalone presets
Herramientas MCP
process_audio_file
Procesa un solo archivo de audio con operaciones personalizadas.
Parámetros:
inputFile(string): Ruta al archivo de audio de entradaoutputFile(string): Ruta para el archivo de salidaoperations(object): Operaciones de procesamiento de audiooverwrite(boolean): Si se deben sobrescribir archivos existentes
Ejemplo:
{
"inputFile": "/path/to/input.wav",
"outputFile": "/path/to/output.mp3",
"operations": {
"volume": {
"adjust": -3,
"normalize": true,
"targetLUFS": -20
},
"format": {
"sampleRate": 44100,
"bitrate": 192,
"channels": 2,
"codec": "mp3"
},
"effects": {
"fadeIn": 0.1,
"fadeOut": 0.2
}
}
}
batch_process_audio
Procesa múltiples archivos de audio en un directorio.
Parámetros:
inputDirectory(string): Directorio que contiene los archivos de entradaoutputDirectory(string): Directorio para los archivos procesadosfilePattern(string): Patrón glob para coincidencia de archivosoperations(object): Operaciones de procesamiento de audiooverwrite(boolean): Si se deben sobrescribir archivos existentes
apply_preset
Aplica un preajuste de procesamiento de audio predefinido.
Parámetros:
inputFile(string): Ruta al archivo de audio de entradaoutputFile(string): Ruta para el archivo de salidapreset(string): Nombre del preajuste a aplicaroverwrite(boolean): Si se deben sobrescribir archivos existentes
Preajustes disponibles:
game-audio-mobile: Optimizado para juegos móvilesgame-audio-desktop: Alta calidad para juegos de escritoriogame-audio-console: Calidad premium para consolaselevenLabs-optimize: Optimiza la salida de voz IA de ElevenLabsvoice-processing: Procesamiento general de voz y diálogosmusic-mastering: Masterización de música de alta calidadsfx-optimization: Efectos de sonido y audio ambiental
list_presets
Lista todos los preajustes disponibles con descripciones.
Parámetros:
category(string, opcional): Filtrar por categoría (game,voice,music,effects)
get_queue_status
Obtiene el estado actual de la cola de procesamiento de audio.
Operaciones de audio
Operaciones de volumen
{
"volume": {
"adjust": -3, // Volume adjustment in dB (-60 to +20)
"normalize": true, // Apply loudness normalization
"targetLUFS": -23 // Target LUFS for normalization
}
}
Operaciones de formato
{
"format": {
"sampleRate": 44100, // Sample rate (8000, 16000, 22050, 44100, 48000, 96000, 192000)
"bitrate": 192, // Bitrate in kbps (64-320)
"channels": 2, // Channel count (1, 2, 6, 8)
"codec": "mp3" // Codec (pcm, mp3, aac, vorbis, flac)
}
}
Operaciones de efectos
{
"effects": {
"fadeIn": 0.1, // Fade in duration in seconds
"fadeOut": 0.2, // Fade out duration in seconds
"trim": { // Trim audio
"start": 1.0, // Start time in seconds
"end": 30.0 // End time in seconds
},
"loop": { // Loop audio
"enabled": true,
"count": 3 // Number of loops
}
}
}
Ejemplos de uso con Claude Desktop
Optimizar salida de voz de ElevenLabs
@audio-tweaker Apply the elevenLabs-optimize preset to the file /audio/voice-output.wav and save it as /audio/optimized-voice.mp3
Procesamiento por lotes de audio de juegos
@audio-tweaker Process all WAV files in /game-assets/audio/raw/ using the game-audio-mobile preset and save them to /game-assets/audio/mobile/
Procesamiento de voz personalizado
@audio-tweaker Process /recordings/dialogue.wav with the following operations: normalize audio to -20 LUFS, convert to 22kHz mono MP3 at 128kbps, add 0.05s fade in and 0.1s fade out, and save as /processed/dialogue.mp3
Verificar estado del procesamiento de audio
@audio-tweaker What's the current status of the audio processing queue?
Integración de flujo de trabajo
Flujo de trabajo de desarrollo de juegos
- Generar voz IA con ElevenLabs
- Optimizar con MCP Audio Tweaker: Aplicar el preajuste
elevenLabs-optimize - Procesamiento específico de plataforma: Usar los preajustes
game-audio-mobile,game-audio-desktopogame-audio-console - Integración: Importar el audio optimizado al motor del juego
Flujo de trabajo de producción musical
- Grabar/Importar audio
- Masterizar con Audio Tweaker: Aplicar el preajuste
music-mastering - Optimización de plataforma: Crear versiones específicas para cada plataforma
- Distribución: Exportar en los formatos requeridos
Configuración
Variables de entorno
AUDIO_TWEAKER_LOG_LEVEL: Establecer nivel de registro (debug,info,warn,error)FFMPEG_PATH: Ruta personalizada del binario de FFmpeg (opcional)
Configuración avanzada
El paquete admite configuraciones avanzadas de FFmpeg mediante el paso directo de parámetros. Consulta la documentación de FFmpeg para opciones adicionales.
Manejo de errores
El paquete proporciona un manejo de errores completo con códigos de error específicos:
FILE_NOT_FOUND: El archivo de entrada no existeFFMPEG_NOT_FOUND: FFmpeg no está instalado o no está en el PATHINVALID_PARAMETERS: Falló la validación de los parámetros de procesamientoOUTPUT_WRITE_FAILED: No se puede escribir en la ubicación de salidaPROCESSING_FAILED: Falló el procesamiento de FFmpegPRESET_NOT_FOUND: El preajuste solicitado no existe
Rendimiento
- Procesamiento concurrente: 2 operaciones concurrentes por defecto (configurable)
- Gestión de cola: Cola de procesamiento eficiente con capacidades de pausa/reanudación
- Eficiente en memoria: Transmite datos de audio sin cargar archivos completos en memoria
- Multiplataforma: Optimizado para Windows, macOS y Linux
Formatos compatibles
Formatos de entrada: MP3, WAV, OGG, FLAC, M4A, AAC Formatos de salida: MP3, WAV, OGG, FLAC, M4A, AAC
Desarrollo
Compilación desde el código fuente
git clone https://github.com/your-org/mcp-audio-tweaker.git
cd mcp-audio-tweaker
npm install
npm run build
Ejecución de pruebas
npm test
npm run test:coverage
npm run test:ffmpeg
Contribuciones
- Haz un fork del repositorio
- Crea una rama de características
- Realiza tus cambios
- Añade pruebas para la nueva funcionalidad
- Envía un pull request
Documentación completa
Este README proporciona una visión general rápida. Para documentación completa:
🚀 Primeros pasos
- Guía de instalación: Instrucciones completas de configuración
- Tutorial de inicio rápido: Ponte en marcha en 15 minutos
- Referencia de API: Documentación completa de la API
🔧 Soporte y solución de problemas
- Guía de solución de problemas: Problemas comunes y soluciones
- Guía de contribución: Cómo contribuir al proyecto
Licencia
Licencia MIT - consulta el archivo LICENSE para más detalles.
Soporte
- Problemas: GitHub Issues
- Documentación: README
- Comunidad: Discussions
Agradecimientos
- Construido con FFmpeg para procesamiento de audio
- Utiliza Model Context Protocol para la integración con Claude Desktop
- Diseñado para el flujo de trabajo de audio de juegos de Infinity Cube