CuerpoSonoro — Body becomes sound

CuerpoSonoro

Software que transforma el movimiento del cuerpo humano en sonido. Cuerpo humano y tecnología transformados en arte, unidos en un solo proyecto.

Creative Coding Arte + Tecnología Python JavaScript Sonido Interacción corporal

La pregunta

¿Y si tu cuerpo fuera un instrumento musical? No una metáfora, no una danza, un instrumento real donde cada gesto produce un sonido único, donde tu postura da forma al paisaje sonoro a tu alrededor.

CuerpoSonoro nació de esa pregunta. Es un proyecto de software que explora la conexión entre el movimiento corporal y la generación de sonido en tiempo real, convirtiendo el cuerpo humano en una interfaz musical expresiva.

Cómo funciona

El software captura el movimiento corporal a través de una cámara y lo traduce en parámetros musicales. Cada gesto, cada postura genera una respuesta sonora diferente. No hay partituras ni secuencias pregrabadas: tú creas el sonido con tu propio cuerpo en tiempo real.

El principio artístico clave: el cuerpo no "toca notas" — el cuerpo da forma al sonido. No es un instrumento que dispara eventos discretos, sino una interfaz que moldea continuamente un paisaje sonoro vivo. Cualquier posición del cuerpo produce un estado sonoro interesante; no hay "notas falsas". Es como meter las manos en arcilla: siempre hay una forma, solo cambia cuál.

Bajo el capó

CuerpoSonoro ejecuta un pipeline en tiempo real que va desde la captura de cámara hasta la salida de audio en menos de 80 milisegundos. Así fluyen los datos por el sistema:

1
Captura
Cámara a 640×480
2
Pose
33 puntos corporales detectados por frame
3
Features
17 descriptores de movimiento extraídos
4
Mapeo
Features mapeadas a parámetros de sonido
5
Sonido
Síntesis de audio en tiempo real

Prueba la demo web

La cámara no graba nada. Solo se procesan arrays de coordenadas — nada se sube a ningún servidor.

Qué mide el sistema

El módulo vision_processor extrae decenas de descriptores en cada fotograma. Cada uno captura una dimensión diferente del movimiento y se mapea a un parámetro musical concreto. Aquí están los principales.

Energía
Volumen y resonancia del filtro
Intensidad global del movimiento: velocidad de las articulaciones clave (muñecas, tobillos, nariz) entre fotogramas. Alta energía significa que el cuerpo se mueve rápido y con amplitud.
Simetría
Paneo estéreo
Equilibrio izquierda–derecha del cuerpo. Se calcula a partir de la desviación horizontal de ambas muñecas respecto al centro del fotograma.
Fluidez
Frecuencia de corte del filtro
Fluidez frente a brusquedad del movimiento. Mide cómo cambia abruptamente la aceleración (jerk). Los gestos lentos y sostenidos puntúan alto; los repentinos, bajo.
Posición de los pies
Selección de acorde (I, IV, V, VI)
Centro horizontal de ambos tobillos en el espacio de captura. Divide la zona en cuatro regiones armónicas.
Ángulo de rodillas
Velocidad del acorde (intensidad)
Ángulo medio de flexión de rodillas. Piernas rectas = máximo. Rodillas flexionadas = valor bajo. Permite crescendos y decrescendos naturales con el cuerpo.
Altura de las manos
Selección de nota melódica
Posición vertical de cada mano relativa a la altura del cuerpo. La mano derecha controla la octava grave, la izquierda la octava aguda.
Jerk de manos
Disparo de nota
Detecta movimientos bruscos de muñeca. Un jerk alto en un único fotograma es la condición de disparo: activa un evento note on.
Ángulo codo–cadera
Pitch bend / vibrato
Ángulo entre el brazo y el torso para cada lado. Brazo junto al cuerpo = tono estable. Brazo extendido = glissando. Movimiento oscilante = vibrato.
Inclinación de cabeza
Filtro tonal global (CC74)
Inclinación lateral de la cabeza, medida por la diferencia de altura entre ambas orejas. Controla un filtro global que afecta a todo el sonido.

Demo web vs. instalación

Demo web
Instalación — el sistema real
MediaPipe corriendo directamente en el navegador (JS)
MediaPipe en Python — CPU, Metal o TensorRT (GPU Jetson)
Síntesis de audio vía Web Audio API
Síntesis en SuperCollider o MIDI/MPE a sintetizador externo
5 descriptores de movimiento principales
Decenas de descriptores de movimiento, 12 features MPE
Accesible desde cualquier dispositivo con cámara
Diseñado para actuación en vivo e instalación física

Por qué este proyecto es importante para mí

Este proyecto surge de la necesidad de volver a ser. De recoger los pedazos y aprender a habitar un cuerpo que durante mucho tiempo existió solo como coraza, como lugar de dolor y de delito, como algo erróneo que debía cambiar a cualquier precio.

CuerpoSonoro es mi manera de volver a él. De escucharlo. De hacer que su movimiento (imperfecto, real, mío) sea el origen de algo bello, y no la consecuencia de las violencias que lo atraviesan.

Stack tecnológico

Visión por computador

MediaPipe Pose
Detección de pose corporal con 33 puntos. Funciona en CPU, Metal (Apple Silicon) o GPU (Jetson).
OpenCV
Captura de cámara y procesado de fotogramas. Buffer de baja latencia, 30 FPS.

Síntesis de audio

SuperCollider
Síntesis sonora algorítmica vía OSC. SynthDefs en tiempo real controlados por los descriptores de movimiento.
MIDI/MPE
Salida MIDI Polyphonic Expression para sintetizadores externos (Surge XT). Dos modos: clásico y musical.

Núcleo

Python
Lógica central de la aplicación. Extracción de features, comunicación OSC/MIDI, orquestación del pipeline.

Infraestructura

Docker + Hetzner VPS
Despliegue portable y reproducible. Arquitectura de dos servicios para minimizar latencia entre procesos.
Testing
pytest — 129 tests automatizados
Código fuente
Open Source (MIT)

Explora el código

CuerpoSonoro es open source. Explora el código, ejecútalo en local o construye sobre él.

¿Un proyecto parecido en mente?

Escríbeme

hello@maramotto.com