L'interface web de MediaMTX.
Regardez les flux en direct, parcourez les enregistrements, modifiez n'importe quelle clé de configuration — depuis votre navigateur.
🌍 Lire en 30 langues
🇺🇸 English • 🇪🇸 Español • 🇨🇳 中文 • 🇮🇹 Italiano • 🇩🇪 Deutsch • 🇷🇺 Русский • 🇫🇷 Français • 🇵🇹 Português • 🇯🇵 日本語 • 🇵🇱 Polski • 🇰🇷 한국어 • 🇹🇷 Türkçe • 🇳🇱 Nederlands • 🇨🇿 Čeština • 🇹🇼 繁體中文 • 🇧🇷 Português (BR) • 🇮🇩 Bahasa Indonesia • 🇷🇴 Română • 🇸🇪 Svenska • 🇩🇰 Dansk • 🇳🇴 Norsk • 🇫🇮 Suomi • 🇬🇷 Ελληνικά • 🇭🇺 Magyar • 🇺🇦 Українська • 🇻🇳 Tiếng Việt • 🇵🇭 Tagalog • 🇹🇭 ไทย • 🇮🇳 हिन्दी • 🇧🇩 বাংলা
MediaMTX est un excellent serveur de streaming sans interface. Connect est le front-end qui lui manque : un conteneur qui dialogue avec l'API de MediaMTX et la transforme en mur de caméras, en archive d'enregistrements et en éditeur de configuration.
C'est un compagnon, pas un remplaçant. Chaque écran s'appuie sur ce que MediaMTX expose déjà : un path, un endpoint, un hook runOn*, un protocole qu'il sert nativement. Aucune vidéo stockée, aucun média relayé, aucune base de données.
Images multi-arch (linux/amd64, linux/arm64) — Docker télécharge la bonne.
MediaMTX tourne déjà ? Ajoutez Connect à côté :
docker run -d \
-p 3000:3000 \
-e BACKEND_SERVER_MEDIAMTX_URL=http://<your-mediamtx-host> \
-v /path/to/recordings:/recordings \
-v mediamtx-connect-data:/data \
bcanfield/mediamtx-connect:latestVous partez de rien ? Le compose fourni démarre les deux :
git clone https://github.com/bcanfield/mediamtx-connect.git
cd mediamtx-connect
docker compose up -dOuvrez ensuite http://localhost:3000.
Important
Connect a besoin de api: yes dans votre mediamtx.yml. La configuration fournie fonctionne telle quelle.
Tous les path connus de MediaMTX, en grille de 2 à 4 colonnes.
- WebRTC ou HLS, carte par carte.
AUTObascule sur HLS sans bruit,LOW-LATexige WebRTC,COMPATimpose HLS — et chaque carte annonce le transport réellement obtenu. - Des captures même à l'arrêt. Une tâche de fond garde une image récente sur chaque carte, avec son âge sur la pastille.
- Télémétrie en direct. Codecs, spectateurs et durée en ligne, issus de la liste des path.
- Un état d'enregistrement honnête. Les cartes indiquent si un flux enregistre effectivement ; un état que Connect n'a pas pu lire s'affiche comme inconnu, jamais comme désactivé.
- URL de publication dans le presse-papiers. RTSP, RTMP et SRT, construites à partir des adresses d'écoute du serveur lui-même.
- Les MP4 de chaque flux, groupés par jour, avec vignettes automatiques.
- Un lecteur qui se déplie sur place, navigable via des requêtes HTTP Range.
- Des téléchargements en flux, avec progression en direct et annulation.
- Appuyez sur
/pour filtrer.
- Toute la configuration du serveur — 65 contrôles typés et validés répartis entre Logging, API, Hooks, RTSP, RTMP, HLS, WebRTC et SRT.
- Path defaults et overrides par path, sur les portées d'où MediaMTX les sert. Enregistrer un flux couvert par un joker écrit une entrée creuse : les clés non touchées continuent d'hériter.
- Les 15 hooks
runOn*, avec un avertissement là où enregistrer redémarre le path. - Écritures creuses — seulement les clés modifiées.
Un seul processus pour l'API, la SPA et les médias · multi-arch · GET /health · logs structurés · PWA · clair et sombre · 30 langues · aucune base de données.
Elles ne servent qu'au premier démarrage. Tout reste modifiable dans Config.
| Variable | Par défaut | Rôle |
|---|---|---|
BACKEND_SERVER_MEDIAMTX_URL |
http://mediamtx |
Où Connect joint l'API de MediaMTX depuis l'intérieur de son conteneur |
MEDIAMTX_API_PORT |
9997 |
Port de l'API MediaMTX |
MEDIAMTX_RECORDINGS_DIR |
./recordings |
Chemin hôte monté pour les enregistrements (compose uniquement) |
MEDIAMTX_SCREENSHOTS_DIR |
/screenshots |
Où sont rangées les vignettes |
http://mediamtx ne se résout que sur le réseau du compose fourni — pour un docker run autonome, pointez-le vers votre hôte.
Browser ──HLS / WebRTC (WHEP)──────────────────────────┐
│ │
│ oRPC (typed) ▼
▼ ┌──────────┐
┌─────────────────────┐ MediaMTX HTTP API │ MediaMTX │
│ mediamtx-connect │ ────────────────────────▶ │ server │
│ Hono API + React SPA│ └──────────┘
└─────────────────────┘ │
│ reads │ writes
▼ ▼
recordings/ + screenshots/ ◀──────────────────── MP4 segmentsLa lecture va du navigateur à MediaMTX. Connect ne déplace que du JSON, plus les enregistrements et vignettes qu'il lit sur le disque.
| Fonctionnalités | Toutes les capacités, routes et procédures livrées |
| Architecture | Comment les pièces s'assemblent |
| Contribuer | Environnement de dev, scripts, processus de PR |
| Exemples | Caméra Raspberry Pi, faux flux pour les tests |
Les issues et les PR sont bienvenues. pnpm install && pnpm dev vous donne la stack complète avec des données de test — voyez CONTRIBUTING.md, et notez que les titres de PR sont des conventional commits. Nous suivons un Code de Conduite.