Nginx

Cómo configurar Nginx RTMP

Cómo configurar Nginx RTMP
Durante la última década, la transmisión en vivo se ha vuelto cada vez más popular a medida que los usuarios se comunican con familiares y amigos, miran contenido en línea y realizan operaciones comerciales. Aunque existen servicios y plataformas populares para realizar transmisiones en vivo, puede ser desafiante y costoso configurar una sesión privada.

Este tutorial busca resolver eso mostrándole cómo configurar un servidor de transmisión en vivo personal que aprovecha Nginx, un servidor web potente y liviano y un proxy inverso y el protocolo RTMP.

Antes de continuar, asegúrese de:

Empecemos.

¿Qué es Nginx?

Como se mencionó anteriormente, Nginx es un servidor web de código abierto rápido y ligero y un proxy inverso que se utiliza para servir sitios web estáticos simples o aplicaciones masivas. Nginx es un servidor web de alto rendimiento con una velocidad y seguridad increíbles. Gracias a su naturaleza liviana, es una opción muy eficiente para servicios de transmisión y tráfico con tráfico masivo.

Puede obtener más información sobre Nginx en el recurso que se proporciona a continuación:

https: // nginx.org / en / docs /

¿Qué es Nginx RTMP?

Nginx RTMP es un módulo potente y de código abierto para el servidor web Nginx. Habilita el protocolo RTMP, HTTP Live Streaming (HLS) y Dynamic Adaptive Streaming sobre HTTP (DASH).

Puede obtener más información sobre HLS y DASH en la página de recursos:

https: // www.nube.com / learning / video / what-is-mpeg-dash /

Ahora que sabe qué son Nginx y Nginx RTMP, permítanos configurar el servidor:

Configurar al servidor

El primer paso es acceder al servidor. Asegúrese de que SSH en su servidor esté habilitado y de que tenga las claves agregadas para facilitar el inicio de sesión.

ssh debian @ 34.73.160.42
[correo electrónico protegido]: ~ $

Una vez que tenemos acceso al servidor, podemos comenzar a instalar los paquetes y bibliotecas requeridos. Primero, asegúrese de que su servidor esté actualizado:

sudo apt-get update
sudo apt-get upgrade -y

Instalación del software necesario

Para configurar el servidor de transmisión, necesitaremos compilar Nginx desde la fuente y habilitar el módulo RTMP. Para esto, usaremos build-essentials y otros paquetes. Use el comando apt a continuación para instalar todas las dependencias.

sudo apt-get install -y build-essential libpcre3 libpcre3-dev libssl-dev git zlib1g-dev

El siguiente paso es compilar e instalar Nginx con el módulo RTMP habilitado. Para mantenerse organizado, cree un directorio para el proceso.

mkdir ~ / Hacer
cd ~ / Hacer /

A continuación, clone el módulo nginx-RTMP:

git clon git: // github.com / arut / nginx-rtmp-module.git

Ahora necesitamos descargar nginx.

Dirígete a http: // nginx.org / en / download.html y seleccione su opción de descarga.

wget http: // nginx.org / download / nginx-1.19.8.alquitrán.gz
alquitrán xzf nginx-1.19.8.alquitrán.gz
cd nginx-1.19.8

El último paso de esta sección es compilar Nginx con el módulo RMTP habilitado. Utilice los siguientes comandos:

sudo ./ configure --with-http_ssl_module --add-module =… / nginx-rtmp-module
sudo hacer
sudo make install

Configuración de transmisión en vivo

Para habilitar el soporte RTMP, necesitamos editar el archivo de configuración nginx y especificar el bloque RTMP.

sudo nano / usr / local / nginx / conf / nginx.conf

Ingrese el bloque de soporte de RTMP como:

rtmp
servidor
escuchar 1935;
ping 30;
aplicación en vivo
vivir;
intercalar en;
hls encendido;
hls_path / tmp / hls;
hls_sync 100ms;
hls_fragment 15s;



http
tipo_predeterminado application / octet-stream;
servidor
escucha 80;
location / tv
root / tmp / hls;


tipos
aplicación / vnd.manzana.mpegurl m3u8;
video / mp2t ts;
texto / html html;

En la configuración anterior, habilitamos el módulo RTMP y HLS. Considere la documentación para aprender cómo habilitar DASH.

Una vez que tenga la configuración, guarde el archivo e inicie el servicio Nginx.

sudo / usr / local / nginx / sbin / nginx

Comenzar a transmitir

Una vez que tenga todo configurado correctamente, puede comenzar a transmitir usando FFmpeg, es lo más fácil. También puede configurar otras herramientas como OBS Studio, pero no lo cubriré en este tutorial.

Utilice el comando FFmpeg como:

sudo ffmpeg -re -i sample-mp4-file.mp4 -c copy -f hls rtmp: // localhost / live / stream

Reproduzca la transmisión usando FFplay o VLC Media Player en el recurso.

ffplay rtmp: // IP / live / stream

Una vez que tenga la transmisión en ejecución, puede exponer el servicio a una red externa.

NOTA: Asegúrese de haber asegurado su servidor antes de permitir el acceso público.

Conclusión

Este tutorial ha cubierto cómo configurar un servidor de transmisión usando Nginx y el módulo Nginx RTMP. Tenga en cuenta que hay muchos engranajes involucrados en la configuración de un servicio de transmisión y puede personalizarlo según sus necesidades.

Considere los siguientes recursos para explorar más.

El botón central del mouse no funciona en Windows 10
La botón central del ratón le ayuda a desplazarse por páginas web largas y pantallas con una gran cantidad de datos. Si eso se detiene, bueno, termina...
Cómo cambiar los botones izquierdo y derecho del mouse en una PC con Windows 10
Es una norma que todos los dispositivos de mouse de computadora estén diseñados ergonómicamente para usuarios diestros. Pero hay dispositivos de mouse...
Emule los clics del mouse colocando el mouse con Clickless Mouse en Windows 10
El uso excesivo de un mouse o teclado en una postura incorrecta puede provocar muchos problemas de salud, como tensión, síndrome del túnel carpiano y ...