Notícias

Como configurar o codificador para sua transmissão IPTV ao vivo?

Como configurar o codificador para sua transmissão IPTV ao vivo?

Podendo transmitir vídeo ao vivo pela Internet é um empreendimento técnico complexo. Requer uma boa compreensão de várias peças de trabalho. É por isso que nosso blog está aqui - para ajudá-lo a entender esses sistemas, para que você possa fazer as escolhas certas na hora de fazer uma transmissão importante.

O foco deste blog estará no lado da codificação da transmissão ao vivo. Especificamente, examinaremos as configurações que você deve programar no seu codificador. Mas primeiro, vamos fornecer uma breve introdução sobre o que é o codificador, para aqueles que desejam construir seu conhecimento básico primeiro.

garota de vestido azul com câmera

Finalidade de um codificador de transmissão ao vivo

A transmissão ao vivo de vídeo digital tem tudo a ver com codificação. Codificação refere-se à compressão e formatos de vídeo. Em um estado bruto, o vídeo digital consistiria simplesmente em uma sequência de imagens estáticas que seriam exibidas seqüencialmente enquanto uma faixa de áudio é reproduzida em segundo plano.

No entanto, esse método de transmissão de vídeo utiliza grandes quantidades de espaço. Um único minuto de gravação de vídeo de alta definição bruta ou descompactada pode usar vários GB de espaço de armazenamento. Quando as filmagens começam a obter 30, 60, 90 minutos ou mais, os tamanhos dos arquivos se tornam grandes demais para lidar.

A solução é a compactação: um método matemático de "jogar fora" dados desnecessários. A compactação de vídeo reduz o tamanho do arquivo, lançando dados para seções do vídeo que não mudam de quadro para quadro. Por exemplo, se um canto do vídeo for preto por minutos do 10, a maioria desses dados reais poderá ser lançada e substituída por uma referência como "faça esse canto preto para os próximos quadros do 300".

Um codificador de transmissão ao vivo reduz a taxa de bits ou o tamanho do vídeo transmitido para viabilizar o envio desse conteúdo pela Internet.

Altos níveis de compactação podem reduzir drasticamente a qualidade de um vídeo, tornando-o mais pixelizado. Muitos “codecs” diferentes (ou padrões para codificação / decodificação de vídeo compactado) foram desenvolvidos ao longo dos anos e estão disponíveis para combater esse problema.

Mídia otimizada para streaming

No entanto, há outro elemento quando se trata de codificação: capacidade de streamability. Nem o vídeo bruto, nem a maioria dos formatos de vídeo compactado são otimizados para transmissão pela Internet. Os formatos de streaming usam marcadores e recipientes especiais para garantir que o vídeo possa ser entregue peça por peça, sem falhas ou erros. Portanto, os codificadores não apenas comprimem o vídeo, mas também o transformam em formatos adequados para streaming. Com esse entendimento básico, estamos prontos para realmente configurar um codificador para uma transmissão ao vivo.

Definir codificador para transmissão ao vivo

A configuração de um codificador pode ser confusa, mas depois de entender o que as várias configurações significam para o seu fluxo, é realmente muito fácil. Aqui, listaremos algumas das configurações mais comuns encontradas em várias plataformas de codificadores.

Isso pode variar de acordo com o aplicativo. Portanto, se você encontrar uma configuração que não entende, consulte a documentação da sua plataforma. Como alternativa, poste aqui nos comentários e faremos o possível para ajudá-lo a resolver o problema.

Como selecionar a fonte

O primeiro elemento na configuração de qualquer codificador ao vivo é selecionar a mídia de origem. Pode ser uma webcam IP, uma entrada HDMI de uma câmera ou até arquivos de mídia estáticos localizados no seu computador. Da mesma forma, as fontes de áudio são microfones (autônomos ou incorporados à sua câmera) ou arquivos de áudio.

Se você estiver trabalhando em uma situação com várias câmeras, sua fonte poderá ser um único feed proveniente do seu dispositivo de comutação ao vivo. Como alternativa, sua plataforma de codificador pode suportar a comutação ao vivo por conta própria - as plataformas vMix, por exemplo, suportam a comutação ao vivo.

De qualquer maneira, certifique-se de selecionar as fontes de vídeo e áudio apropriadas para o conteúdo que você deseja transmitir. Uma armadilha comum a evitar aqui é selecionar a fonte errada, como a seleção do microfone embutido no laptop como fonte de áudio para sua transmissão.

Alguns codecs de vídeo futuros

RGB básico

A próxima seleção a considerar é qual codec (ou esquema de compactação) você deseja que seu codificador crie e transmita. O codec mais comum para transmissão ao vivo é chamado H.264 e é suportado em quase todos os dispositivos modernos capazes de vídeo. Alguns codecs futuros, que prometem reduzir o tamanho do arquivo enquanto mantém a qualidade, incluem o H.265 e o VP10.

No entanto, manter o H.264 padrão é sua melhor aposta por enquanto. Uma variação que você pode ver é chamada x264. Este é simplesmente um método específico de codificação de vídeo H.264. A codificação com x264 geralmente usa menos recursos de CPU do que outros métodos, mas você pode testar isso antes de começar.

Uma observação sobre vários fluxos

Observe que muitas das configurações descritas abaixo são aplicáveis ​​a usuários com diferentes velocidades de conexão com a Internet. Muitos streamers ao vivo modernos optam por transmitir múltiplos fluxos simultâneos do mesmo conteúdo, cada um codificado para uma taxa de bits diferente (a quantidade de dados enviados por segundo). Eles podem ser entregues aos usuários com conexões lentas, médias e rápidas da Internet, para fornecer a cada um a melhor experiência possível.

Audio Codec

Você precisará selecionar também qual codec de áudio enviar no seu fluxo. As configurações mais comuns são MP3 e AAC, formatos de áudio compatíveis com quase todos os dispositivos. Recomendamos o AAC em quase todos os casos, pois é exigido pelos dispositivos iOS da Apple.

Taxa de amostragem de áudio

Outra configuração de áudio comum que você precisará selecionar é a "taxa de amostragem de áudio". Isso simplesmente se refere ao número de medições de áudio realizadas por segundo durante uma determinada gravação. Recomendamos que você defina a taxa de amostragem como 44100 KHz para cada transmissão ao vivo. Esse é um padrão na maioria dos equipamentos e gravações de áudio.

Resolução de Streaming de Vídeo

A resolução do seu fluxo refere-se ao tamanho (medido em pixels) do quadro de vídeo. Os tamanhos de vídeo mais comuns em uso atualmente são:

  • 426 x 240 (240p)
  • 640 x 360 (360p, baixa definição)
  • 854 x 480 (480p, definição padrão ou SD)
  • 1280 x 720 (720p HD)
  • 1920 x 1080 (1080p ou Full HD)
  • 3840 x 2160 (conhecido como 4K ou Ultra HD)

A resolução que você escolher para o seu vídeo depende de vários fatores. Primeiro, todo o seu equipamento deve suportar a resolução máxima escolhida, incluindo velocidade e espaço de armazenamento. Imagens de resolução mais alta requerem muito mais poder de processamento para codificar.

Segundo, a velocidade da Internet deve poder acomodar a resolução escolhida. Embora a resolução não esteja estritamente vinculada à taxa de bits, os vídeos de alta resolução exigem mais largura de banda para parecerem bons. Não adianta enviar uma conexão de vídeo HD se sua largura de banda não suportar esse nível de qualidade nessa resolução.

Vídeo Frame Rate

A taxa de quadros refere-se simplesmente ao número de imagens estáticas capturadas por segundo por suas câmeras. Geralmente, esses quadros são do 29.97 por segundo (arredondamentos para 30 fps), mas o 25 e o 24 fps também são comuns. Alguns eventos esportivos e outras transmissões que lidam com movimentos rápidos optam por transmitir em 60 fps para tornar a ação mais nítida. Em caso de dúvida, use o 30 fps.

Protocolo de transmissão ao vivo: HLS, RTMP

Conceito de crime de computador

Os vídeos de transmissão ao vivo são enviados por meio de vários protocolos que evoluem com o tempo. O mais comum e antigo deles é chamado RTMP. O RTMP, ou Real Time Messaging Protocol, é um padrão da Macromedia (Adobe) para transmitir vídeo, áudio e metadados pela Internet em tempo real. A maioria dos codificadores, incluindo os do projeto OBS, Wirecast, vMix e o próprio Flash Media Live Encoder da Adobe, pode usar RTMP.

O RTMP é um padrão flexível e robusto, mas nem sempre é suficiente hoje. Isso porque exige que os espectadores usem dispositivos que possuem o Flash Player instalado no dispositivo. Cada vez mais, o Flash está sendo aposentado em favor de protocolos de entrega de vídeo mais confiáveis ​​e seguros, e muitas plataformas móveis - principalmente iOS em iPhones e iPads - não são compatíveis com Flash.

No entanto, os feeds RTMP ainda são o método padrão para obter um fluxo do codificador para os servidores de distribuição. Com o host de streaming de vídeo certo, um único feed RTMP do seu codificador pode ser convertido para outros padrões mais compatíveis, como HLS e HDS, automaticamente no servidor.

Aqui na DaCast, usamos o serviço Stream Packaging da Akamai para Universal Streaming para esse processo. O Stream Packaging da Akamai ingere um fluxo RTMP do seu codificador e o transcodifica automaticamente para HLS e HDS quase em tempo real, preparando o fluxo para qualquer formato de dispositivo. Esse processo resulta em um atraso mínimo de 30-45 no feed.

Taxa de bits de vídeo

Talvez a configuração mais importante em todo o processo de codificação seja a taxa de bits. A taxa de bits é a linha inferior que determina quantos dados sua transmissão consumirá. Seja qual for a taxa de bits máxima, sua taxa de dados não aumentará mais que isso.

As taxas de bits são medidas em bits por segundo, mas mais comumente em kilobits por segundo (8 Kilobits = 1 kilobyte). A taxa de bits determina essencialmente quanta largura de banda sua transmissão usará. Um número maior de Kilobits por segundo usa mais dados. Isso é crítico por vários motivos relacionados à velocidade da Internet.

Primeiro, sua velocidade de upload deve ser rápida e estável o suficiente para sustentar um upload nessa velocidade durante a transmissão. Geralmente, recomendamos que suas velocidades de upload sejam capazes de atingir velocidades pelo menos o dobro do que você espera precisar.

Aqui estão recomendações comuns para taxas de bits para várias resoluções de vídeo:

  • Vídeo 360p: 400 Kbps - 1000 Kbps
  • Vídeo 480p: 500 Kbps - 2 Mbps (1 Mbps = 1000 Kbps)
  • Vídeo 720p: 1.5 - 4 Mbps
  • Vídeo 1080p: 3 - 6 Mbps

Lembre-se também de que seus requisitos totais de largura de banda serão o total de todos os seus fluxos adicionados juntos. Portanto, se você estiver transmitindo um fluxo 360p, um fluxo 720p e um fluxo 1080p, além do áudio de cada um, poderá transmitir um total de quase 12 Mbps de dados. Isso significa que sua conexão com a Internet precisa ser capaz de velocidades de upload sustentadas de 24 Mbps.

Taxa de bits CBR vs. taxa de bits VBR

Uma pergunta é se deve usar uma taxa de bits constante (CBR) ou taxa de bits variável (VBR). Usar VBR significa que o uso de dados diminuirá se o conteúdo do vídeo transmitido em um determinado momento não contiver muita informação. Por outro lado, o uso de dados será maior se houver muita ação na tela.

O uso do CBR tende a resultar em um fluxo mais estável e confiável, pois o VBR pode causar grandes picos no uso de dados. No entanto, o uso do VBR pode reduzir o uso total da largura de banda, o que pode reduzir os custos. Recomendamos o uso de CBR, a menos que você esteja realmente preocupado com os custos de largura de banda.

Como definir taxas de bits de áudio

A taxa de bits de áudio também é algo que você precisará definir. Recomendamos as seguintes configurações:

  • Para vídeo 360p: áudio 64 Kbps, mono
  • Para vídeo 480p: 128 Kbps, estéreo
  • Para vídeo 720p: 128 Kbps, estéreo
  • Para vídeo 1080p e superior: 256 Kbps, estéreo

"Mono" ou "estéreo" refere-se ao número de canais de áudio: um ou dois. Essa configuração pode ser chamada de "canal". Escolha as configurações apropriadas para a sua resolução, conforme listado acima.

Tamanho do buffer

Essa configuração avançada tem a ver com a forma como os dados de vídeo são armazenados em cache nos breves momentos antes de serem transmitidos. Um tamanho de buffer mais alto pode aumentar a qualidade do movimento, mas na verdade pode aumentar sua taxa de dados em um determinado momento acima da taxa de bits escolhida.

Embora isso não afete sua taxa de bits geral (os algoritmos compensarão reduzindo o uso de dados em outros momentos), pode causar problemas de qualidade para alguns espectadores. Recomendamos que você defina o tamanho do buffer como o da sua taxa de bits para garantir uma transmissão suave e sem picos no uso de dados.

Vinculando ao seu host de vídeo ao vivo

Agora que você aprendeu a definir as configurações de vídeo e áudio no seu codificador, a etapa final é vincular seu codificador ao servidor de processamento. Na plataforma DaCast, você receberá quatro informações ao criar um fluxo: um "nome do fluxo", um "URL do fluxo", um código de login e uma senha. Você pode inserir essas informações no seu codificador para conectar-se aos servidores do DaCast e iniciar o upload.

As outras configurações

Ao configurar seu codificador, você pode encontrar algumas outras configurações. Aqui está uma explicação para algumas das configurações encontradas no Adobe Flash Media Live Encoder. Outros codificadores devem ter configurações semelhantes.

  • "Tamanho da entrada" e "Tamanho da saída" referem-se à resolução do vídeo proveniente da (s) câmera (s) e à resolução que você prefere exibir como transmissão ao vivo.
  • "URL do FMS" é o URL do seu servidor de ingestão de mídia.
  • "Stream" geralmente é a caixa na qual você inserirá seu "nome do stream".
  • “Salvar em arquivo” permite que você salve sua transmissão simultaneamente em uma unidade de armazenamento.

Codificadores de hardware x software

Existem vários tipos de codificadores que podem ser divididos em duas categorias principais: hardware e software. Os codificadores de hardware são dispositivos dedicados usados ​​para codificar transmissões ao vivo. Eles são poderosos, confiáveis ​​e podem ter ótimos recursos, como software de mixagem ao vivo embutido. Os principais fornecedores de codificadores de hardware incluem VMix e Teradek. No entanto, estes são frequentemente muito caros.

Os codificadores de software são ótimas alternativas para orçamentos menores. Os codificadores de software são simplesmente aplicativos como qualquer outro que podem ser instalados em um desktop ou laptop. Você precisará garantir que este computador seja poderoso o suficiente para lidar com o fluxo de vídeo ao vivo antes de confiar nele durante uma transmissão. Como sempre dizemos: teste, teste, teste!

Um exemplo gratuito de codificador de software é o Adobe Flash Media Live Encoder. Este pacote de software fornece muitas ferramentas para colocar uma transmissão ao vivo em funcionamento. Outro exemplo é OBS, ou Open Broadcaster Software. Este pacote é poderoso, configurável e pode ser instalado em praticamente qualquer computador. Você pode aprender mais sobre OBS e fazer o download do aplicativo em seus sites. site do projeto.

PARTILHAR

Deixe um comentário