Skip to content

Latest commit

 

History

History
165 lines (125 loc) · 8.19 KB

File metadata and controls

165 lines (125 loc) · 8.19 KB

MediaMTX Connect

MediaMTX:n web-käyttöliittymä.
Katso live-lähetyksiä, selaa tallenteita, muokkaa mitä tahansa asetusavainta — suoraan selaimessa.

CI Release Docker MIT

MediaMTX Connect — live-lähetysten ruudukko, tallenneselain ja asetuseditori
🌍 Lue 30 kielellä

🇺🇸 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 • 🇹🇭 ไทย • 🇮🇳 हिन्दी • 🇧🇩 বাংলা

Mikä tämä on

MediaMTX on erinomainen suoratoistopalvelin ilman käyttöliittymää. Connect on se puuttuva käyttöliittymä: yksi kontti, joka juttelee MediaMTX:n API:n kanssa ja muuttaa sen kameraseinäksi, tallennearkistoksi ja asetuseditoriksi.

Se on kumppani, ei korvaaja. Jokainen näkymä nojaa johonkin, minkä MediaMTX jo tarjoaa: path, API-päätepiste, runOn*-koukku, protokolla jota se itse jakaa. Ei säilö videota, ei välitä mediaa, ei tietokantaa.

Pika-aloitus

Moniarkkitehtuuri-imaget (linux/amd64, linux/arm64) — Docker hakee oikean.

Onko MediaMTX jo käynnissä? Laita Connect sen viereen:

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:latest

Aloitatko tyhjästä? Mukana tuleva compose käynnistää molemmat:

git clone https://github.com/bcanfield/mediamtx-connect.git
cd mediamtx-connect
docker compose up -d

Avaa sitten http://localhost:3000.

Important

Connect tarvitsee mediamtx.yml-tiedostoosi rivin api: yes. Mukana tuleva asetustiedosto toimii sellaisenaan.

Mitä saat

Livenäkymä

Kaikki path-polut, jotka MediaMTX tuntee, 2–4 sarakkeen ruudukossa.

  • WebRTC tai HLS, korttikohtaisesti. AUTO putoaa hiljaa HLS:ään, LOW-LAT vaatii WebRTC:tä ja COMPAT pakottaa HLS:n — ja jokainen kortti kertoo, minkä siirtotavan se todella sai.
  • Tilannekuvia myös levossa. Taustatyö pitää jokaisella kortilla tuoretta kuvaa, ja sen ikä lukee merkissä.
  • Live-telemetria. Koodekit, katsojamäärä ja käyntiaika suoraan path-listasta.
  • Rehellinen tallennustila. Kortit näyttävät, tallentaako striimi tosiasiassa; tila jota Connect ei saanut luettua on tuntematon, ei koskaan pois.
  • Julkaisuosoitteet leikepöydälle. RTSP, RTMP ja SRT rakennetaan palvelimen omista kuunteluosoitteista.

Tallenteet

  • Jokaisen striimin MP4-tiedostot päivittäin ryhmiteltyinä, automaattisin pikkukuvin.
  • Soitin, joka avautuu paikallaan ja kelaa HTTP Range -pyynnöillä.
  • Suoratoistavat lataukset: edistyminen reaaliajassa ja peruutus.
  • Suodata painamalla /.

Asetukset ilman YAML:ia

  • Koko palvelinkonfiguraatio — 65 tyypitettyä ja validoitua säädintä osioissa Logging, API, Hooks, RTSP, RTMP, HLS, WebRTC ja SRT.
  • Path defaults ja polkukohtaiset ohitukset niissä laajuuksissa, joista MediaMTX ne tarjoaa. Jokerimerkin kattaman striimin tallentaminen kirjoittaa harvan merkinnän, joten koskemattomat avaimet periytyvät edelleen.
  • Kaikki 15 runOn*-koukkua, varoituksin siellä missä tallennus käynnistää polun uudelleen.
  • Harvat kirjoitukset — vain muuttamasi avaimet.

Ylläpito

Yksi prosessi API:lle, SPA:lle ja medioille · moniarkkitehtuuri · GET /health · rakenteiset lokit · PWA · vaalea ja tumma · 30 kieltä · ei tietokantaa.

Ympäristömuuttujat

Ne siementävät vain ensimmäisen käynnistyksen. Loppu on muokattavissa Config-näkymässä.

Muuttuja Oletus Tarkoitus
BACKEND_SERVER_MEDIAMTX_URL http://mediamtx Mistä Connect tavoittaa MediaMTX:n API:n konttinsa sisältä
MEDIAMTX_API_PORT 9997 MediaMTX:n API-portti
MEDIAMTX_RECORDINGS_DIR ./recordings Isäntäkoneen polku tallenteille (vain compose)
MEDIAMTX_SCREENSHOTS_DIR /screenshots Minne pikkukuvat tallennetaan

http://mediamtx ratkeaa vain mukana tulevan composen verkossa — erilliselle docker run -ajolle osoita se omaan koneeseesi.

Miten se toimii

Browser ──HLS / WebRTC (WHEP)──────────────────────────┐
   │                                                   │
   │ oRPC (typed)                                      ▼
   ▼                                              ┌──────────┐
┌─────────────────────┐    MediaMTX HTTP API      │ MediaMTX │
│ mediamtx-connect    │ ────────────────────────▶ │  server  │
│ Hono API + React SPA│                           └──────────┘
└─────────────────────┘                                │
   │ reads                                             │ writes
   ▼                                                   ▼
recordings/ + screenshots/  ◀────────────────────  MP4 segments

Toisto kulkee selaimesta MediaMTX:ään. Connect siirtää vain JSONia sekä levyltä lukemansa tallenteet ja pikkukuvat.

Dokumentaatio

Ominaisuudet Kaikki julkaistut kyvyt, reitit ja proseduurit
Arkkitehtuuri Miten palaset loksahtavat yhteen
Osallistuminen Kehitysympäristö, skriptit, PR-prosessi
Esimerkit Raspberry Pi -kamera, testien valestriimit

Osallistuminen

Issuet ja PR:t ovat tervetulleita. pnpm install && pnpm dev pystyttää koko pinon testidatoineen — loput tiedostossa CONTRIBUTING.md, ja huomaa että PR-otsikot ovat conventional commits. Noudatamme käytössääntöjä.

Lisenssi

MIT