Nginx

Como configurar o Nginx RTMP

Como configurar o Nginx RTMP
Na última década, a transmissão ao vivo se tornou cada vez mais popular à medida que os usuários se comunicam com familiares e amigos, assistem a conteúdo online e realizam operações comerciais. Embora existam serviços e plataformas populares para realizar transmissões ao vivo, pode ser desafiador e caro configurar uma sessão privada.

Este tutorial procura resolver isso mostrando como configurar um servidor pessoal de streaming ao vivo que tira proveito do Nginx, um servidor da web poderoso e leve e proxy reverso e o protocolo RTMP.

Antes de prosseguirmos, certifique-se de:

Vamos começar.

O que é Nginx

Como mencionado acima, Nginx é um servidor da web de código aberto rápido e leve e proxy reverso usado para servir sites estáticos simples ou aplicativos massivos. Nginx é um servidor web de alto desempenho com incrível velocidade e segurança. Graças à sua natureza leve, é uma escolha muito eficiente para serviços de streaming e tráfego com tráfego massivo.

Você pode aprender mais sobre o Nginx no recurso fornecido abaixo:

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

O que é Nginx RTMP

Nginx RTMP é um módulo de código aberto e poderoso para o servidor da web Nginx. Ele ativa o protocolo RTMP, HTTP Live Streaming (HLS) e Dynamic Adaptive Streaming over HTTP (DASH).

Você pode aprender mais sobre HLS e DASH na página de recursos:

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

Agora que você sabe o que são Nginx e Nginx RTMP, vamos configurar o servidor:

Configurar para servidor

A primeira etapa é obter acesso ao servidor. Certifique-se de que o SSH para o seu servidor esteja ativado e que você tenha as chaves adicionadas para facilitar o login.

ssh debian @ 34.73.160.42
[email protegido]: ~ $

Assim que tivermos acesso ao servidor, podemos começar a instalar os pacotes e bibliotecas necessários. Primeiro, certifique-se de que seu servidor esteja atualizado:

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

Instalando o software necessário

Para configurar o servidor de streaming, precisaremos construir o Nginx a partir da fonte e habilitar o módulo RTMP. Para isso, devemos usar build-essentials e outros pacotes. Use o comando apt abaixo para instalar todas as dependências.

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

A próxima etapa é compilar e instalar o Nginx com o módulo RTMP habilitado. Para se manter organizado, crie um diretório para o processo.

mkdir ~ / Make
cd ~ / Make /

Em seguida, clone o módulo nginx-RTMP:

git clone git: // github.com / arut / nginx-rtmp-module.idiota

Agora precisamos baixar o nginx.

Acesse http: // nginx.org / en / download.html e selecione sua opção de download.

wget http: // nginx.org / download / nginx-1.19.8.alcatrão.gz
tar xzf nginx-1.19.8.alcatrão.gz
cd nginx-1.19.8

A etapa final nesta seção é compilar o Nginx com o módulo RMTP habilitado. Use os comandos abaixo:

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

Configurando a transmissão ao vivo

Para habilitar o suporte RTMP, precisamos editar o arquivo de configuração nginx e especificar o bloco RTMP.

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

Insira o bloco de suporte RTMP como:

rtmp
servidor
listen 1935;
ping 30s;
aplicativo ao vivo
viver;
intercalar;
hls on;
hls_path / tmp / hls;
hls_sync 100ms;
hls_fragment 15s;



http
default_type application / octet-stream;
servidor
escute 80;
localização / tv
root / tmp / hls;


tipos
aplicação / vnd.maçã.mpegurl m3u8;
vídeo / mp2t ts;
text / html html;

Na configuração acima, habilitamos o módulo RTMP e HLS. Considere a documentação para aprender como habilitar o DASH.

Assim que tiver a configuração, salve o arquivo e inicie o serviço Nginx.

sudo / usr / local / nginx / sbin / nginx

Iniciar streaming

Depois de ter tudo configurado corretamente, você pode iniciar o streaming usando FFmpeg - é o mais fácil. Você também pode configurar outras ferramentas como OBS Studio, mas não vou cobrir isso neste tutorial.

Use o comando FFmpeg como:

sudo ffmpeg -re -i arquivo de amostra-mp4.mp4 -c copy -f hls rtmp: // localhost / live / stream

Reproduza a transmissão usando FFplay ou VLC Media player no recurso.

ffplay rtmp: // IP / live / stream

Depois de ter o stream em execução, você pode expor o serviço a uma rede externa.

NOTA: Certifique-se de ter protegido seu servidor antes de permitir o acesso público.

Conclusão

Este tutorial cobriu como configurar um servidor de streaming usando Nginx e o módulo Nginx RTMP. Lembre-se de que há muitas engrenagens envolvidas na configuração de um serviço de streaming e você pode personalizá-lo de acordo com suas necessidades.

Considere os seguintes recursos para explorar mais.

OpenTTD vs Simutrans
Criar sua própria simulação de transporte pode ser divertido, relaxante e extremamente atraente. É por isso que você precisa ter certeza de experiment...
Tutorial OpenTTD
OpenTTD é um dos jogos de simulação de negócios mais populares que existem. Neste jogo, você precisa criar um maravilhoso negócio de transporte. No en...
SuperTuxKart para Linux
SuperTuxKart é um ótimo título projetado para trazer a você a experiência Mario Kart gratuitamente em seu sistema Linux. É bastante desafiador e diver...