Konteneryzacja Docker i stabilność platformy

Cała infrastruktura iTVT opiera się na zaawansowanej architekturze kontenerów Docker. W celu zapewnienia maksymalnej elastyczności i eliminacji ryzyk związanych ze stabilnością, system został podzielony na wyspecjalizowane, odizolowane usługi:

  • Główny playout (serce systemu): Kontener oparty na technologii GStreamer, który odpowiada bezpośrednio za emisję sygnału – mikser wideo oraz audio dla kanału linearnego iTVT.
  • Scheduler (zarządzanie): Dedykowany kontener, który umożliwia planowanie ramówki. Dzięki niemu playout automatycznie przełącza sceny, programy, zapowiedzi oraz bloki reklamowe.
  • Broker-listener (obsługa reklam): Kontener odpowiedzialny za ciągły nasłuch i odbiór materiałów reklamowych od brokera zewnętrznego (poprzez standardy VAST/VMAP) lub bezpośrednio z plików lokalnych.
  • Kanały FAST (izolacja): Każdy kanał typu FAST został wydzielony do osobnego, niezależnego kontenera, co zapobiega przenoszeniu się ewentualnych błędów i drastycznie zwiększa stabilność całego środowiska.

Nad całością systemu w celu zminimalizowania czasu ewentualnych przestojów oraz zagwarantowania najwyższej niezawodności, działa system monitoringu Uptime Kuma, który stale nadzoruje pracę wszystkich kontenerów.

Protokoły transmisyjne: SRT, RTMP, HLS

Serce platformy stanowią trzy protokoły transmisyjne:

  • SRT (Secure Reliable Transport) — główny protokół transmisji na żywo. Charakteryzuje się odpornością na straty pakietów i niskim opóźnieniem.
  • RTMP — protokół używany do ingestu strumienia z źródeł zewnętrznych.
  • HLS (Low-Latency) — protokół dostarczania treści do przeglądarek i urządzeń mobilnych. Dzięki wdrożeniu nowoczesnej technologii bezpośredniej konwersji ze strumienia SRT na HLS, udało się zredukować opóźnienie (latency) w odtwarzaczu u widza w typowych warunkach sieciowych, zaledwie do 3-5 sekund, co zapewnia płynny odbiór sygnału w czasie zbliżonym do rzeczywistego.

Zaufane oprogramowanie w iTVT

W procesie emisji my oraz nasi partnerzy korzystamy ze sprawdzonych i powszechnie stosowanych rozwiązań, takich jak RevoStream, OBS Studio oraz vMix. W celu zapewnienia jeszcze wyższego poziomu bezpieczeństwa, większej stabilności, niższego opóźnienia oraz pełnej kompatybilności, nasz zespół planuje w przyszłości głębszą migrację całego ekosystemu w stronę autorskich rozwiązań.

Kluczowym krokiem w tej strategii jest rozwój modułu transmisyjnego RevoStream, który docelowo przepisywany jest w całości w języku Rust z wykorzystaniem biblioteki libobs-rs. Eliminacja surowych odwołań do C/C++ drastycznie zwiększyła stabilność renderowania oraz istotnie redukuje ryzyko błędów związanych z zarządzaniem pamięcią.
➤ Jak porzuciliśmy OBS Studio dla Rusta, czyli jak powstało RevoStream

Cały ekosystem streamingowy iTVT jest rygorystycznie optymalizowany pod kątem minimalnego zużycia zasobów przy maksymalnej wydajności sieciowej. Projektowany z myślą o wysokiej dostępności i niezawodności usług

MediaMTX — relay strumieni i nasze mechanizmy fallback

Do pośredniczenia między ingestem a dystrybucją wykorzystujemy MediaMTX — lekki serwer relayu strumieni, który przyjmuje dane przez SRT/RTMP i przekazuje je do klientów przez HLS.

W ramach podnoszenia niezawodności nadawania, eksperymentalnie wdrażamy zaawansowany system fallback na MediaMTX. W przypadku nagłego zerwania transmisji na serwerze głównym, system automatycznie przełącza źródło na sygnał zapasowy, dzięki czemu widz unika oglądania „czarnego ekranu”. Dodatkowo w najbliższej przyszłości planowane jest zaimplementowanie analogicznego mechanizmu fallback bezpośrednio po stronie playera, co zapewni podwójną warstwę ochrony przed przerwami w dostawie sygnału.

Infrastruktura sieciowa i zabezpieczenia Cloudflare

Zarządzanie ruchem na brzegu sieci (edge) oraz dystrybucja danych realizowane są z wykorzystaniem platformy Cloudflare. Architektura ta pozwala na skuteczne filtrowanie ruchu oraz optymalizację dostarczania treści:

  • DNS, CDN i Reverse Proxy: Globalna sieć Anycast Cloudflare pozwala na redukcję opóźnień (TTFB) oraz odciążenie infrastruktury iTVT poprzez efektywne keszowanie statycznych zasobów platformy.
  • Szyfrowanie HTTPS/TLS: Zastosowanie nowoczesnych standardów kryptograficznych w transmisji danych pomiędzy klientem a infrastrukturą sieciową znacząco zwiększa poufność oraz integralność przesyłanego strumienia.
  • Ochrona DDoS i WAF: Aktywne reguły bezpieczeństwa pomagają wykrywać anomalie sieciowe na wczesnym etapie oraz ograniczać skutki ataków wolumetrycznych ataków na warstwę aplikacyjną, minimalizując ryzyko przerw w dostępności usług.
  • Filtry aplikacyjne i ochrona strumienia: Wdrożone reguły cache'owania oraz polityki bezpieczeństwa warstwy aplikacyjnej utrudniają nieautoryzowane osadzanie (hotlinking) strumieni wideo, ograniczając możliwość ich odtwarzania poza oficjalnym playerem iTVT.

SSAI — monetyzacja reklam

System Server-Side Ad Insertion (SSAI) umożliwia płynną insertcję reklam po stronie serwera, bez wpływu na jakość transmisji dla widzów.
➤ Wdrożenie SSAI w kanałach linearnych iTVT

PAGE 801 — ARCHITEKTURA
▸ Monitoring usług: (Uptime Kuma)
▸ Proxy/DNS: Cloudflare
▸ Kontenery: Docker (Rootless)
▸ Backend: Python (gstreamer) / Rust
▸ Streaming: MediaMTX
▸ Protokoły: SRT / RTMP / HLS
▸ SSAI: Server-Side Ad Insertion
▸ Repozytorium: github.com/open-itvt