Aller au contenu
TYPEDébloqué
ÉTAPEGain rapide
DIFFICULTÉSimple
MÉTIERPartager un flux
POURÉquipes de devs
POURPower users productivité
SERVICESPipe
POURQUOI HOODYHTTP-natif
TYPEDébloqué
ÉTAPEGain rapide
DIFFICULTÉSimple
MÉTIERPartager un flux
POURÉquipes de devs
POURPower users productivité
SERVICESPipe
POURQUOI HOODYHTTP-natif
TYPEDébloqué
ÉTAPEGain rapide
DIFFICULTÉSimple
MÉTIERPartager un flux
POURÉquipes de devs
POURPower users productivité
SERVICESPipe
POURQUOI HOODYHTTP-natif
TYPEDébloqué
ÉTAPEGain rapide
DIFFICULTÉSimple
MÉTIERPartager un flux
POURÉquipes de devs
POURPower users productivité
SERVICESPipe
POURQUOI HOODYHTTP-natif
PIPE · AUDIO · LIVE

Un micro sur HTTP, en deux terminaux

vous pair-debug à minuit et le hotspot de l'autre côté ne survivra pas à un Zoom. Vous avez tous les deux un shell. ffmpeg capture le micro, curl le PUT vers un path pipe, l'autre terminal fait curl et joue les octets. Pas de SDK, pas de signaling, pas de meeting.

Lire la doc pipe

pas de signaling, pas de SDK, pas de Zoom

Deux curls, un path pipe, zéro signaling

ffmpeg encode votre micro en opus et écrit sur stdout. curl PUT ce stdin vers /api/v1/pipe/voice. Quiconque GET le même path reçoit les octets à mesure que le sender les produit. Le pipe garde le receiver jusqu'à cinq minutes en attente du sender, transmet le Content-Type, et ne stocke rien.

Du micro aux haut-parleurs en quatre lignes4 ÉTAPES · ZÉRO SIGNALING
0101 · CAPTURE

Lire le micro

ffmpeg -f alsa -i default -c:a libopus -f ogg - lit votre micro, encode en opus, écrit sur stdout.

0202 · STREAM

Pipe vers curl

curl -T - PUT stdin vers /api/v1/pipe/voice. Le pipe attend jusqu'à cinq minutes un receiver sur le même path.

0303 · CONNECT

Le receiver GET le path

Son terminal lance curl https://.../api/v1/pipe/voice. Le pipe associe sender et receiver, et le stream démarre.

0404 · PLAY

Les octets sortent dans les enceintes

Son curl pipe vers aplay ou mpv. L'audio joue à mesure qu'il arrive, octet par octet. ctrl-C met fin à l'appel.

Le pipe transmet le Content-Type, supporte jusqu'à cinq minutes d'attente avant qu'un partenaire se connecte, et utilise HTTPS — rien de plus exotique que le protocole que votre shell parle déjà.

Lo-fi par choix

Pas d'annulation d'écho, pas de jitter buffer, pas de DSP fancy. C'est le genre de canal vocal qu'un SRE utilise pour pair-debug : épuré, faible overhead, fiable. Chaque couche qu'une plateforme de meeting ajoute est une couche que le tandem pipe n'a tout simplement pas.

COUCHES QUI N'EXISTENT PAS0 LIGNE DE CODE

Choses qui n'arrivent pas

  • Ouvrir un handshake STUN/TURN
  • Lancer un serveur de signaling pour échanger des SDP
  • Négocier un codec à travers la stack WebRTC
  • Accepter une boîte de dialogue de permission micro
  • Cliquer sur Rejoindre dans une appli desktop
  • Basculer en TURN quand le NAT punching échoue
  • Patienter dans une salle d'attente pour l'hôte
CE QUE VOUS FAITES RÉELLEMENTDEUX TERMINAUX

Choses qui arrivent vraiment

  • Taper ffmpeg | curl dans le shell sender
  • Taper curl | mpv dans le shell receiver
  • Parler pendant que les octets passent dans le pipe
  • ctrl-C quand c'est fini — le path retourne à rien

Trois lectures, un seul tandem de curls

La même mécanique micro-sur-HTTP se lit de trois manières selon qui est à l'autre bout du pipe.

POUR LE PAIR-DEBUGGER

La voix que l'SRE mérite

vous êtes trois commandes profond dans un incident prod. Lancer Zoom prendrait plus de temps que le fix. ffmpeg | curl chez vous, curl | mpv chez l'autre — vous parlez pendant que vous taillez les logs.

POUR LE DEV NOMADE

Survivre au hotspot

Un partage de connexion étouffe sur un appel vidéo. Un stream opus à 32 kbps sur HTTP, non. L'autre côté ouvre une URL et écoute — il n'a même pas besoin d'un micro pour participer.

POUR LE PRIVACY-FIRST

Pas d'enregistrement, pas d'appli, pas de compte

Rien n'est stocké sur un serveur. Pas d'appli tierce des deux côtés. Le pipe ne fait que streamer — les octets passent et disparaissent à l'instant où ctrl-C tombe.

L'audio, c'est juste des octets. Les octets, c'est juste un pipe.

le stream démarre quand vous tapez entréele stream s'arrête quand vous tapez ctrl-C
en directpipe.containers.hoody.com/api/v1/pipe/voicetant qu'un côté est up
ctrl-C
404pipe.containers.hoody.com/api/v1/pipe/voicepas d'enregistrement, pas de replay

Ce que ça remplace

L'arsenal d'outils vocaux que chaque tandem d'ingés accumule. Chacun suppose un meeting, un compte, ou un serveur de signaling maison. L'URL pipe ne suppose rien de tout ça.

  • Appel vocal ZoomPont planifié, install d'appli, permissions desktop
  • Partage d'écran Slack avec audioLes deux côtés sur le client desktop, Huddles uniquement
  • Canal vocal DiscordAdhésion serveur, compte, plafonds de bitrate
  • Voix Google MeetPlomberie calendrier pour 90 secondes de debug
  • WebRTC avec signaling maisonSTUN/TURN, échange SDP, un serveur à faire tourner
  • SaaS de chat vocalEncore un fournisseur, encore une licence par siège

La prochaine fois que quelqu'un dit « on fait un quick call ? », ouvrez un pipe à la place.

Lire l'API pipe

Lis les autres