платформа IPTV · один продукт

Catena

Телевидение, которое работает в вашей сети

Catena принимает каналы с вашей головной станции, транскодирует, пишет архив и доставляет ТВ на приставки, телефоны и Smart TV — с пакетами каналов, EPG и интеграцией с биллингом. На вашем железе, начиная с одного сервера Ubuntu.

1команда от чистой Ubuntu до играющего канала: apt install catena
0рестартов при возвращении central — кластер срастается сам
100 Гбит/свидео отдаёт один сервер-стример
N−1/N−2окно совместимости базы: поэтапные обновления и откат без восстановления бэкапов

конвейер

От любого источника до каждого экрана

Четыре стадии одного продукта. Каналы входят из сети оператора или от поставщика контента — и выходят ТВ-сервисом для абонентов.

01 · ПРИЁМ

Приём

Мультикаст прямо из сети оператора, SRT по каналам с потерями, фиды поставщиков контента. Приоритеты источников на каждом канале с автоматическим переключением.

MPEG-TS/UDPSRTHTTPRTMP
channel-source
02 · ТРАНСКОДИНГ

Транскодинг

Лестница качества от 2160 до 360 с единым GOP — или готовая лестница с энкодера, не тратя ни одного ядра CPU.

H.264HEVCAV1ABR/MBR
transcoder
03 · ЗАПИСЬ

Запись

Catch-up и перемотка на каждом канале. Архив пишется на независимые диски: потеря диска стоит только его доли, а не архива.

DVRcatch-uprewindJBOD
dvr
04 · ДОСТАВКА

Доставка

HLS и DASH для любых устройств, маршрутизация зрителей по зонам сети, авторизация сессий — вы всегда знаете, кто смотрит и откуда.

HLSLL-HLSDASHCDN zones
cdn-zones

архитектура

Один мозг. Сколько угодно стримеров.

Catena — управляемый кластер, а не набор медиасерверов. Одна консоль, один API, одно желаемое состояние — и машины, которые делают тяжёлую работу.

central

Управляющий контур: конфигурация всех каналов, статистика, веб-консоль и API. Его единственное состояние — PostgreSQL: целый бэкап базы — это целая инсталляция.

database-backup

layouter

Решает, какой канал работает на каком стримере — предсказуемо и с записанными причинами. Вы всегда можете ответить, «почему этот канал здесь».

layouter

streamers

Серверы, которые принимают, транскодируют, пишут и обслуживают зрителей. Своей конфигурации не хранят — получают её от central.

streamers
Стримеру central нужен, чтобы изменить конфигурацию, а не чтобы работать.

отказоустойчивость

Убейте управляющий контур. Эфир продолжается.

Отказ central — инцидент управления, а не эфира. Каналы вещают, архив пишется, зрители смотрят. Когда central возвращается, кластер срастается обратно — без рестартов.

отказ central

Эфир продолжается

Стример, перезапущенный во время сбоя, поднимается мгновенно: тёплый старт из локального кэша применённой конфигурации, не дожидаясь ни одного ответа от central.

central-outage
отказ стримера

Каналы переезжают

Layouter автоматически перепланирует каналы погибшей машины на выжившие стримеры. Каждый переезд журналируется вместе с причиной.

reliability
отказ источника

Входы переключаются аккуратно

Упорядоченные приоритеты источников: мёртвый переключается сразу, деградировавший — только если есть лучше. Восстановившийся основной сначала должен отработать чистое окно — никакого дребезга.

input-failover

второй день

Здоровый кластер — серо-зелёный

Ежедневная работа идёт в одной консоли. Оператор открывает дашборд и читает его с одного взгляда: красное пятно — работа, всё остальное — кофе.

  • Живой реестр. Телеметрия стримеров каждые 2,5 секунды, тепловая карта ошибок по каналам, предупреждения о дисках и сертификатах до того, как они станут инцидентами. dashboard

  • Сессии. Кто смотрит, какой канал, с какого стримера — с принудительным закрытием, когда нужно. sessions

  • Ваш мониторинг, не наш. Prometheus-совместимые метрики и источник данных для Grafana из коробки; Retroview для глубокого анализа потоков.

  • Обновления по вашему расписанию. apt install новой версии, рестарт в выбранный вами момент — тёплый старт сразу возвращает каналы. По одной машине на весь кластер. upgrade

catena — dashboard
Catena dashboard
catena — channels
Catena channels list

масштабирование

Рост — это добавление машин

Минимальная инсталляция — одна машина, на которой работает всё. Когда становится тесно, вы добавляете стримеры через окно присоединения в интерфейсе — существующая инсталляция остаётся на месте, ничего не перестраивается.

  • Permit join открывает окно на один час; новая машина входит по токену — без правки конфигов. Поддерживается автоматическая раскатка через Ansible. add-streamer
  • Вывод машины так же осознан: отозвать доступ, удалить с перепланированием каналов или вычистить навсегда. remove-streamer
  • Обычная Ubuntu, deb-пакеты, systemd. Не нужно учить оркестратор, чтобы вещать телевидение. install

сценарии

Где ваши зрители?

Один продукт, один движок. Ответ определяет сценарий — в вашей сети ISP или через открытый интернет.

Middleware уже выбрана?

Оставьте stalker-подобный портал или свои приложения — подключите Catena снизу как движок доставки по API, не меняя продуктовый слой.

Начните с пилотного региона

Расскажите про вашу сеть, список каналов и число абонентов. Наши инженеры разложат архитектуру, спецификацию серверов и поэтапный запуск — параллельно с сервисом, который работает у вас сегодня.

Читать документацию