Skip to content

Мозаика

Несколько потоков можно "склеить" в одну мозаику и показывать как один поток. Создается мозаика с помощью транскодирования.

Сборка мозаики из потоков

Через веб-интерфейс Watcher можно включить только клиентскую мозаику из камер. Подробнее об этом написано в документации Watcher.

Чтобы создать серверную мозаику:

Установите пакет flussonic-transcoder:

Замечание. Пакет flussonic-transcoder необходим только в случае, если вы планируете использовать CPU для выполнения транскодирования. Если вы используете Nvidia NVENC, то он не нужен.

apt-get -y install flussonic-transcoder

Добавьте поток с источником input mosaic://...:

stream cam1 {
  input rtsp://IP-CAMERA-ADDRESS:PORT/camera1;
}
stream cam2 {
  input rtsp://IP-CAMERA-ADDRESS:PORT/camera2;
}
stream cam3 {
  input rtsp://IP-CAMERA-ADDRESS:PORT/camera3;
}
stream cam4 {
  input rtsp://IP-CAMERA-ADDRESS:PORT/camera4;
}
stream mosaic0 {
  input mosaic://cam1,cam2,cam3,cam4?fps=20&preset=ultrafast&bitrate=1024k&size=340x240&mosaic_size=16;
}

После mosaic:// идет через запятую список камер, которые будут использоватся в мозаике.

В опциях можно указывать настройки, которые будут использоваться в энкодере.

Опция fps=20 жестко указывает скорость видео. Для камер можно указывать fps=video, чтобы привязать кадры мозаики к первой камере.

Опция size=320x240 настроит размер каждой камеры в мозаике. Если от камеры поток с картинкой больше, то она будет уменьшена до этого размера.

Опция mosaic_size указывает, на сколько камер будет рассчитана мозаика. Это может быть удобно для того, чтобы фиксировать размер мозаики.