Modifiche

Da GolemWiki.

NGINX RTMP server

474 byte aggiunti, 11:29, 9 ott 2020
m
Per il sistemista - piccole considerazioni sociali
Si deve installare il relay RTMP ricompilando un modulo specifico per ''nginx 1.13'' (purtroppo questa cosa non è stata documentata a suo tempo, qualcuno vuole farlo ora?).
==== Configurazione di nginx ====
Lo streaming avviene nel seguente modo:
* flusso RTMP in ingresso: il flusso audio/video RTMP viene trasmesso da OBS già codificato correttamente, e nginx si occuperà semplicemente di replicarlo e, eventualmente, di incapsularlo (vedere più avanti);
* flusso RTMP in uscita: lo stesso flusso audio/video in ingresso viene inserito in un buffer in memoria (es. 4096k), e viene replicato ai client che si connettono per la riproduzione tramite RTMP;
* lettore multimediale HLS web: nginx, tramite le direttive <code>hls</code> produce un file di playlist ''.m3u8'' e spezza il flusso audio/video che gli giunge tramite RTMP in tanti piccoli file ''.ts'' (numerati in sequenza, e che mano a mano che la diretta procede, vengono eliminati a rotazione). Una semplice pagina web con [https://videojs.com/ video.js] può essere approntata per la riproduzione: il lettore usa il file di playlist per rimanere aggiornato su quali sono gli ultimi "pezzi" ''.ts'', li scarica e li mostra automaticamente in sequenza, senza discontinuità.
=== RTMP vs HLS ===* il flusso RTMP è riproducibile solo con un programma dedicato, non da browser; il buffer può essere ridotto "a piacere" e il ritardo di trasmissione ridotto fino a pochi secondi. È meno pratico da utilizzare, specialmente su smartphone e tablet.* il flusso HLS (HTTP Live Streaming) è riproducibile anche - e soprattutto - da un qualunque browser HTML5, comodo anche da smartphone e tablet, però la frammentazione introduce un notevole ritardo fino a 30 secondi. ==== Configurazione di nginx: ====[[File:rtmp-nginx.conf.gz]]
Si notino in particolare le seguenti sezioni:

Menu di navigazione