Crie seu próprio servidor de streaming de vídeo ao vivo com Linux

A maioria das ferramentas e sites de transmissão ao vivo são gratuitos para o público, mas geralmente exigem que você crie uma conta, fornecendo informações que talvez você não queira que apareçam online. Eles podem(can ) conter algum conteúdo por trás de anúncios e incorporar Termos de Serviço(Service) confusos que podem nem mesmo se ater a si mesmos. 

Há aqueles que gostam da capacidade de transmitir ao vivo, mas não precisam ter seus vídeos disponíveis para as massas. Em vez disso, eles preferem ter mais controle sobre seu fluxo e o conteúdo que produzem. O software de código(Open-source) aberto, como o Linux(Linux) , é a melhor resposta para esse obstáculo.

Pensando à frente(Thinking Ahead)

Antes de começar a configurar seu próprio servidor de streaming pessoal, você deve se fazer algumas perguntas. Primeiro(First) , que qualidade de stream você está procurando? Em seguida(Next) , quantos espectadores você espera atrair? Onde você armazenará todo o seu conteúdo transmitido? Quem terá acesso a esse conteúdo?

Os requisitos do sistema também podem ser vistos como uma preocupação. No entanto, não há regras definidas sobre exatamente o que você precisará a esse respeito, então faça um favor a si mesmo e experimente para ver o que funciona melhor para seus objetivos.

Você precisará descobrir qual protocolo lidará com a parte de áudio e vídeo do streaming. O Real-Time Messaging Protocol ( RTMP ) é uma ótima opção, mas há outros, como WebRTC , que podem se sair melhor em sua situação. O RTMP(RTMP) tem amplo suporte, então vamos nos concentrar nisso neste artigo.

Outra coisa com que se preocupar são os prováveis ​​atrasos na sua transmissão “ao vivo”. Só porque você vai ao vivo não significa que tudo vai se alinhar perfeitamente. Os(Video) fluxos de vídeo precisam ser codificados, transferidos, armazenados em buffer e exibidos, portanto, espere a necessidade de alguns ajustes nos atributos do fluxo.

Configuração do servidor Linux(Linux Server Setup)

Ubuntu Linux é o meu favorito pessoal, então essa será a versão de escolha aqui. Para aqueles que preferem uma opção de GUI , o Ubuntu Desktop(Ubuntu Desktop) está disponível. 

  • Inicie(Fire) o instalador do Ubuntu e escolha as configurações que melhor atendem às suas necessidades. Você provavelmente desejará definir algumas configurações de rede estáticas, pois isso será usado como um servidor.
  • Reinicie(Reboot) o sistema após a instalação, caso não o faça automaticamente. Depois que o sistema Ubuntu inicializar, instale as atualizações disponíveis:
sudo apt update
sudo apt upgrade

Usaremos o servidor web Nginx(Nginx web server) para este servidor de streaming. Instale-o:

sudo apt install nginx

Adquira o módulo RTMP para que o (RTMP)Nginx possa lidar com seu fluxo de mídia:

sudo add-apt-repository universe
sudo apt install libnginx-mod-rtmp

Ajuste a configuração do Nginx para que ele possa aceitar e entregar seu fluxo de mídia.

sudo nano /etc/nginx/nginx.conf

Adicione o seguinte código ao final do arquivo de configuração:

rtmp {
        server {
                listen 1935;
                chunk_size 4096;

                application live {
                        live on;
                        record off;
                }
        }
}

Salve o arquivo de configuração, pois o usaremos mais tarde para criar um servidor de streaming funcional.

Reinicie o Nginx(Restart Nginx) com sua nova configuração:

sudo systemctl restart nginx

Configuração do software de transmissão(Streaming Software Setup)

O servidor está pronto, então agora é hora de configurar seu software de streaming. Vamos usar o Open Broadcaster Software (OBS) neste teste. 

  • Vá para o site e selecione a compilação para Linux . Depois que o software for iniciado, configure o OBS com as configurações que melhor correspondem ao seu hardware.
  • Adicione uma fonte de streaming clicando no + logo abaixo de Source .

  • Para fins de teste, escolha Display Capture e insira um nome para a origem.
  • Clique no botão OK e o OBS espelhará sua área de trabalho.
  • Em seguida, clique na guia Arquivo(File) e escolha Configurações(Settings)

Na seção Stream, selecione set Stream Type to Custom… e insira o seguinte URL no campo Server :

rtmp://IPaddress/live 

No lugar de IPaddress , insira o endereço IP do seu servidor de streaming.

Agora crie sua própria Stream Key e insira-a na caixa Stream key. Faça algo que você vai se lembrar e anote. Para maior segurança, marque a caixa Usar autenticação(Use authentication ) e adicione suas credenciais preferidas.

Finalize com Aplicar(Apply) seguido do botão OK .

Tudo agora deve ser configurado para streaming. Para iniciar sua primeira transmissão, pressione o botão Transmitir agora(Stream Now) . O botão mudará para Parar transmissão(Stop Streaming) desde que tudo tenha sido feito corretamente. As métricas de largura de banda do seu stream aparecerão na parte inferior da janela do OBS .

Seja seu primeiro visualizador(Be Your First Viewer)

Existem muitos players de mídia de código aberto que suportam RTMP , o mais conhecido deles é o VLC media player(VLC media player) . Instale e inicie este software, clique na guia Mídia(Media) e selecione Abrir fluxo(Open Network Stream) de rede no menu. 

Tem(Got) a sua Stream Key à mão? Digite o caminho para o seu stream e inclua a chave do stream(Stream Key) que você configurou anteriormente, no final dele. Deve se parecer com:

rtmp://IPaddress/live/SecretKey

Clique em Reproduzir(Play) e você terá uma visualização ao vivo de sua própria transmissão.

Medidas Adicionais(Additional Measures)

Agora que o básico foi alcançado, limitar o acesso ao seu servidor de streaming e poder gravar e salvar seus vídeos são outros dois fatores que você pode estar interessado.

Por padrão, qualquer pessoa pode ver seu stream. Isso pode ir contra o propósito de criar o servidor em primeiro lugar. Você desejará configurar o acesso limitado usando um firewall Linux , arquivo .htaccess(.htaccess file) ou os controles de acesso integrados no módulo RTMP(built-in access controls in the RTMP module) . Esta escolha é deixada para você.

A configuração do Nginx fornecida aqui só permitirá que você transmita vídeos, mas não os salve. Para adicionar uma opção de armazenamento, na configuração do Nginx , logo abaixo da seção RTMP , você pode configurar as opções de gravação de fluxo e fornecer um local para onde deseja que seu conteúdo seja salvo e armazenado. 

Defina(Set) um caminho existente para permitir que o Nginx grave(Nginx) nele. Digite o seguinte:

aplicação ao vivo { (application live {)
             ao vivo; (             live on;)
             gravar tudo; (             record all;)
             record_path /var/www/html/recordings;
             record_unique ativado; (             record_unique on;)
}

Isso é tudo o que você precisa ao configurar um servidor de transmissão ao vivo usando o sistema operacional Ubuntu Linux(Ubuntu Linux OS) . Se você estiver mais interessado em um servidor de streaming de mídia não ao vivo, sugiro o uso do Plex no lugar do OBS.



About the author

Eu sou um técnico de informática com mais de 10 anos de experiência, incluindo 3 anos como um店員. Tenho experiência em dispositivos Apple e Android e sou particularmente habilidoso em reparar e atualizar computadores. Também gosto de assistir filmes no meu computador e usar meu iPhone para tirar fotos e vídeos.



Related posts