Install

Vivoh Webinar Manager Server

Download: https://releases.vivoh.com/binaries/vwm/2023_07/vivoh-webinar-manager__8fa4e01e__3.9.1.0_amd64.deb CONFIG FORMAT TIPS: ADMINISTRATOR = admin:!1Abc88888888 CERTIFICATES = /etc/vivoh/vwm/privkey.pem,/etc/vivoh/vwm/fullchain.pem,/etc/vivoh/vwm/chain.pem WEBCAST_FALLBACK_URL = https://vivoh.com FAILOVERS = https://vivoh.acme.com BROADCASTER = /usr/local/vivoh/encoder/bin/run.sh PORT = 443 VERBOSE = 1 ADMIN_PORT = 8443 NODE_ENV = production OPTIONAL: update /usr/local/vivoh/encoder/bin/run.sh to sleep 2 and retry the encoder to enable reconnections after a RTMP source failure.

Vivoh Video Server

Download: https://releases.vivoh.com/assets/vivoh-video-server-apr-6-2023 to /usr/local/vivoh/vivoh-video-server Create: /etc/vivoh/vvs/vvs.json as: { "player": 4040, "auth": { "api" : true, "api_user": "admin", "api_pass": "!1Abc88888888" }, "rtmp": { "port": 1935, "chunk_size": 60000, "gop_cache": true, "ping": 30, "ping_timeout": 60 }, "http": { "port": 7777, "mediaroot": "/home/vivoh", "allow_origin": "*" }, "relay": { "ffmpeg": "/usr/bin/ffmpeg", "tasks": [ { "app": "live", "mode": "pull", "change-me-edge": "rtmps://vvs2.vivoh.io:443" } ] }, "trans": { "ffmpeg": "/usr/bin/ffmpeg", "tasks": [ { "app": "live", "hls": "true", "hlsFlags": "[hls_time=2:hls_list_size=3:hls_flags=delete_segments]", "hlsKeep": "false" } ] } } Create Vivoh Video Server systemctrl script at /etc/systemd/system/vvs.service [Unit] Description=Vivoh Video Server [Service] Type=simple Restart=always RestartSec=1 ExecStart=/usr/local/vivoh/vivoh-video-server /etc/vivoh/vvs/vvs.json [Install] WantedBy=multi-user.target Enable Vivoh Video Server via: systemctl enable vvs then systemctl start vvs Create CERT certbot certonly -d vvs.vivoh.io sudo touch /etc/haproxy/all.pem sudo chmod 777 /etc/haproxy/all.pem sudo cat /etc/letsencrypt/live/vvs.vivoh.io/fullchain.pem /etc/letsencrypt/live/vvs.vivoh.io/privkey.pem >> /etc/haproxy/all.pem sudo chmod 600 /etc/haproxy/all.pem /etc/letsencrypt/live/vvs.vivoh.io/privkey.pem >> /etc/haproxy/all.pem HAProxy configuration (expected at /etc/haproxy/haproxy.cfg) frontend rtmps mode tcp timeout client 50000 bind *:1936 ssl crt /etc/haproxy/all.pem default_backend rtmp frontend https_admin mode tcp timeout client 50000 bind *:1111 ssl crt /etc/haproxy/all.pem default_backend http_admin frontend https_player mode tcp timeout client 50000 bind *:8080 ssl crt /etc/haproxy/all.pem default_backend http_player backend rtmp mode tcp timeout connect 60 timeout server 50000 server self *:1935 backend http_admin mode tcp timeout connect 60 timeout server 50000 server self *:7777 backend http_player mode tcp timeout connect 60 timeout server 50000 server self *:4040 Restart: sudo systemctl restart haproxy https://vvs.vivoh.io:1111/live/test/index.m3u8 https://vvs.vivoh.io:1111/admin (admin,!1Abc88888888) https://vvs.vivoh.io:8080/player/test (hard coded test) ffmpeg -stream_loop -1 -re -i /tmp/adena.mp4 -c:a aac -ar 48000 -b:a 128k -c:v h264 -profile:v main -crf 20 -g 48 -keyint_min 48 -sc_threshold 0 -b:v 2500k -maxrate 2675k -bufsize 3750k -f flv rtmp://vivoh-origin.vivoh.io/live/test sudo apt-get install openssh-server