Копия стрима¶
Один сигнал часто нужен в нескольких видах: как есть — для архива и внутреннего контроля, и обработанный — для зрителей; открытый для одних и закрытый шифрованием для других. Принять его дважды не всегда возможно: SRT-энкодер отвечает одному звонящему, спутниковый приёмник отдаёт один поток. Источник Copy читает другой стрим того же стримера внутри процесса — без второго подключения к источнику и без сетевой петли. Копия при этом — самостоятельный стрим со своими настройками.
Что получает копия¶
Копия читает стрим-цель после всей его обработки — транскодера, выравнивания и нарезки — и видит ровно то, что цель отдаёт зрителям, с теми же временными метками. Вместе с кадрами приходят и границы фрагментов, которыми цель нарезала поток: копия нарезает так же, и архивы двух стримов складываются из одинаковых сегментов.
Остальное копия не наследует. Это отдельный стрим со своими вкладками: транскодер, архив, защита воспроизведения, доставка и размещение настраиваются на нём заново и на цель не влияют. Так один принятый сигнал получает столько независимых обработок, сколько нужно, а источник остаётся подключённым один раз.
Настройте копию¶
- Создайте стрим, который станет копией — например,
arena-mobileрядом с принимающим стримомarena. - На вкладке Источники нажмите + Добавить источник и выберите протокол Copy.
- В поле Стрим-цель (эта нода) введите имя стрима, который нужно читать:
arena. - Сохраните. Индикатор источника становится зелёным, как только цель отдаёт кадры; в карточке под источником — статус и битрейт, как у любого другого источника.

В списке стримов цель и копия — два обычных работающих стрима.

Настройки цели не меняются: ей не нужно знать о копиях, и их может быть несколько.
Цель по запросу¶
Если у стрима-цели Режим запуска — По запросу, копия поднимает его сама, как зритель: цель запускается вместе с копией и работает, пока копия её читает. Остановлена или удалена копия — цель гаснет по своему таймауту без зрителей.
Цель в кластере¶
Копия читает только стрим своего стримера: сигнал не ходит по сети между машинами. Лейаутер размещает каждый стрим отдельно и о связи между копией и целью не знает, поэтому за тем, чтобы оба оказались на одном стримере, следите вы — неймспейсом или тегом. Самый простой способ: дайте цели и копии требование required_<тег>, а сам тег — ровно одному стримеру.
Если цель размещена на другом стримере, источник копии остаётся в ошибке: стрим ждёт и подключается сам, как только цель появится на его машине.
Что не разрешается¶
Проверка при сохранении отклоняет две конфигурации и подсвечивает поле стрима-цели:
- Стрим читает сам себя. Копия ждала бы кадров, которые сама же и должна произвести.
- Цепочка копий замыкается в кольцо.
aчитаетb, аb—a: ни у одной нет источника. Цепочка без возврата — копия копии — допустима.
Если копия не идёт¶
- Источник мёртв, цель не найдена. Проверьте имя в поле стрима-цели и размещение: цель должна работать на том же стримере, что и копия.
- Цель остановлена. Источник копии в ошибке, стрим ждёт. Как только цель снова отдаёт кадры, копия подключается сама — менять ничего не нужно.
- Растут ошибки входа. Копия не успевает за целью, и часть кадров потеряна: стример перегружен. Смотрите диагностику источника и нагрузку на стример.