Skip to content

Latest commit

 

History

History
165 lines (125 loc) · 8.46 KB

File metadata and controls

165 lines (125 loc) · 8.46 KB

MediaMTX Connect

MediaMTX için web arayüzü.
Canlı yayınları izleyin, kayıtlara göz atın, her yapılandırma anahtarını düzenleyin — tarayıcınızdan.

CI Release Docker MIT

MediaMTX Connect — canlı yayın ızgarası, kayıt tarayıcısı ve yapılandırma düzenleyici
🌍 30 dilde okuyun

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

Bu nedir

MediaMTX arayüzsüz gelen mükemmel bir yayın sunucusudur. Connect onun eksik ön yüzü: MediaMTX API'siyle konuşan tek bir konteyner, onu bir kamera duvarına, bir kayıt arşivine ve bir yapılandırma düzenleyicisine dönüştürür.

Yerine geçen değil, yanında duran bir araç. Her ekran MediaMTX'in zaten sunduğu bir şeye oturur: bir path, bir API uç noktası, bir runOn* kancası, doğrudan servis ettiği bir protokol. Video saklamaz, medyayı vekillemez, veritabanı tutmaz.

Hızlı başlangıç

Çok mimarili imajlar (linux/amd64, linux/arm64) — Docker doğrusunu indirir.

MediaMTX zaten çalışıyor mu? Connect'i yanına ekleyin:

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

Sıfırdan mı başlıyorsunuz? Birlikte gelen compose ikisini de ayağa kaldırır:

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

Ardından http://localhost:3000 adresini açın.

Important

Connect'in mediamtx.yml dosyanızda api: yes olmasına ihtiyacı var. Birlikte gelen yapılandırma olduğu gibi çalışır.

Neler elde edersiniz

Canlı görünüm

MediaMTX'in bildiği tüm path'ler, 2–4 sütunluk bir ızgarada.

  • Kart başına WebRTC veya HLS. AUTO sessizce HLS'e düşer, LOW-LAT WebRTC'de ısrar eder, COMPAT HLS'i dayatır — ve her kart gerçekten elde ettiği taşımayı bildirir.
  • Boştayken de anlık görüntü. Bir arka plan işi her kartta güncel bir kare tutar, karenin yaşı da rozette yazar.
  • Canlı telemetri. Kodekler, izleyici sayısı ve çalışma süresi, doğrudan path listesinden.
  • Dürüst kayıt durumu. Kartlar bir yayının fiilen kayıtta olup olmadığını gösterir; Connect'in okuyamadığı bir durum kapalı değil, bilinmiyor olarak görünür.
  • Yayınlama URL'leri panoya. RTSP, RTMP ve SRT, sunucunun kendi dinleme adreslerinden üretilir.

Kayıtlar

  • Her yayının MP4'leri, güne göre gruplanmış, otomatik küçük resimlerle.
  • Yerinde açılan gömülü oynatıcı; HTTP Range istekleriyle sarılabilir.
  • Canlı ilerleme ve iptal içeren akışlı indirmeler.
  • Filtrelemek için / tuşuna basın.

YAML olmadan yapılandırma

  • Sunucu yapılandırmasının tamamı — Logging, API, Hooks, RTSP, RTMP, HLS, WebRTC ve SRT boyunca tipli ve doğrulanmış 65 denetim.
  • Path varsayılanları ve path başına geçersiz kılmalar, MediaMTX'in bunları sunduğu kapsamlarda. Joker karakterle kapsanan bir yayını kaydetmek seyrek bir girdi yazar; dokunmadığınız anahtarlar devralmayı sürdürür.
  • 15 runOn* kancasının tamamı, kaydetmenin path'i yeniden başlattığı yerlerde uyarıyla.
  • Seyrek yazma — yalnızca değiştirdiğiniz anahtarlar.

İşletim

API, SPA ve medya için tek süreç · çok mimarili · GET /health · yapılandırılmış loglar · PWA · açık ve koyu · 30 dil · veritabanı yok.

Ortam değişkenleri

Yalnızca ilk açılışı tohumlar. Gerisi Config altında düzenlenebilir kalır.

Değişken Varsayılan Amaç
BACKEND_SERVER_MEDIAMTX_URL http://mediamtx Connect'in kendi konteynerinin içinden MediaMTX API'sine ulaştığı yer
MEDIAMTX_API_PORT 9997 MediaMTX API portu
MEDIAMTX_RECORDINGS_DIR ./recordings Kayıtlar için bağlanan ana makine yolu (yalnızca compose)
MEDIAMTX_SCREENSHOTS_DIR /screenshots Küçük resimlerin saklandığı yer

http://mediamtx yalnızca birlikte gelen compose ağında çözülür — tek başına bir docker run için kendi makinenizi yazın.

Nasıl çalışır

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

Oynatma tarayıcıdan MediaMTX'e gider. Connect yalnızca JSON taşır, bir de diskten okuduğu kayıtlar ile küçük resimleri.

Belgeler

Özellikler Yayınlanan her yetenek, rota ve prosedür
Mimari Parçaların nasıl birleştiği
Katkıda bulunma Geliştirme kurulumu, betikler, PR süreci
Örnekler Raspberry Pi kamerası, test için sahte yayınlar

Katkıda bulunma

Issue ve PR'lar memnuniyetle karşılanır. pnpm install && pnpm dev size örnek verilerle dolu tam bir yığın verir — gerisi için CONTRIBUTING.md; ayrıca PR başlıkları conventional commits biçimindedir. Bir Davranış Kuralları belgesine uyuyoruz.

Lisans

MIT