
Sesenta contenedores en un servidor
Un servidor bare-metal ejecuta decenas a cientos de contenedores Hoody. KSM y dedup BTRFS hacen que el costo marginal sea casi cero.
Estás depurando en pareja a medianoche y el hotspot del otro lado no aguantará un Zoom. Ambos tenéis una shell. ffmpeg captura el micro, curl lo PUTea a una ruta de pipe, el otro terminal hace curl y reproduce los bytes. Sin SDK, sin signaling, sin reunión.
$ ffmpeg -f alsa -i default \
-c:a libopus -f ogg - \
| curl -T - https://pipe.containers.hoody.com/api/v1/pipe/voice$ curl https://pipe.containers.hoody.com/api/v1/pipe/voice
| mpv --no-video -sin signaling, sin SDK, sin Zoom
ffmpeg codifica tu micrófono a opus y lo escribe a stdout. curl hace PUT de ese stdin a /api/v1/pipe/voice. Quien haga GET a la misma ruta recibe los bytes a medida que el emisor los produce. El pipe mantiene al receptor hasta cinco minutos para que el emisor se conecte, reenvía Content-Type, y no almacena nada.
ffmpeg -f alsa -i default -c:a libopus -f ogg - lee tu micrófono, codifica a opus, escribe a stdout.
curl -T - hace PUT del stdin a /api/v1/pipe/voice. El pipe espera hasta cinco minutos a un receptor en la misma ruta.
Su terminal ejecuta curl https://.../api/v1/pipe/voice. El pipe empareja emisor con receptor y empieza a transmitir.
Su curl pipea a aplay o mpv. El audio se reproduce según llega, byte por byte. ctrl-C termina la llamada.
El pipe reenvía Content-Type, soporta hasta cinco minutos de hold-time antes de que se conecte un contraparte, y usa HTTPS — nada más exótico que el protocolo que tu shell ya habla.
No hay cancelación de eco, ni jitter buffer, ni DSP sofisticado. Es el tipo de canal de voz por el que un par de SREs depura: minimalista, baja sobrecarga, fiable. Cada capa que una plataforma de reuniones construye es una capa que la pareja de pipes simplemente no tiene.
El mismo mecanismo de mic-sobre-HTTP se lee de tres formas distintas según quién esté al otro lado del pipe.
Llevas tres comandos metido en un incidente de prod. Levantar Zoom tardaría más que el arreglo. ffmpeg | curl en tu lado, curl | mpv en el suyo — puedes hablar mientras tail-eas los logs.
Compartir conexión por móvil se ahoga en una videollamada. Un stream opus de 32 kbps sobre HTTP, no. El otro extremo abre una URL y escucha — ni siquiera necesita un micro para participar.
No se almacena nada en un servidor. No hay app de terceros en ninguna máquina. El pipe es puro streaming — los bytes pasan y desaparecen en el momento en que se pulsa ctrl-C.
El audio son solo bytes. Los bytes son solo un pipe.
El elenco de herramientas de voz que cada pareja de ingenieros acumula. Cada una asume una reunión, una cuenta, o un servidor de signaling personalizado. La URL del pipe no asume ninguno de esos.
La próxima vez que alguien diga 'podemos hacer una llamada rápida', abre un pipe.