Guia NVIDIA NVENC OBS

Por Gerardo Delgado Cabrera ligado 16 de setembro de 2024 | Broadcasting Guides Streaming

Sobre este guia

O objetivo deste guia é ajudar você a entender como usar o encoder NVIDIA, NVENC, no OBS.

Nota: simplificamos alguns dos conceitos para tornar este guia acessível a um público mais amplo. 

Encoders, Bitrate, Resolução e Framerate

Visão Geral

Encoding é tudo sobre compactar imagens. Quanto menor o tamanho da imagem, menos precisamos compactá-la e mais qualidade ela mantém. Enquanto o mesmo se aplica à taxa de quadros, um espectador pode realmente notar uma queda em FPS, mas não tanto na resolução, então sempre tentaremos transmitir a 60 FPS.

As GPUs GeForce RTX têm encoders de hardware dedicados (NVENC), permitindo capturar e transmitir conteúdo sem impactar o desempenho da GPU ou da CPU. Novas gerações de GPU RTX incluem suporte para codecs mais novos e eficientes. O benefício de um codec mais eficiente pode ser pensado de duas maneiras:

  1. O vídeo codificado com a mesma qualidade com um codec mais eficiente ocupará menos espaço em disco ou menos largura de banda de streaming do que um codec menos eficiente
  2. O vídeo codificado com um codec mais eficiente terá qualidade superior a um codec menos eficiente com o mesmo tamanho de arquivo ou largura de banda de streaming

Eficiência de compressão relativa de codecs  

H.264

HEVC

AV1

1.0x

1.15x

1.40x

 

GPU RTX Série 

H.264

HEVC

AV1

RTX Série 20

Sim

Sim

Não

RTX Série 30

Sim

Sim

Não

RTX Série 40 

Sim

Sim

Sim


Plataformas de streaming podem não suportar todos os codecs. A tabela a seguir lista o suporte a codecs para serviços de streaming populares.

 

Plataforma de Streaming 

H.264

HEVC

AV1

Facebook Gaming

Sim

Não

Não

Twitch

Sim

Não

Não

YouTube

Sim

Beta

Beta


Como determinar seu Bitrate

Primeiro, execute um teste de velocidade para determinar sua velocidade de upload (por exemplo, Speed ​​Test). Queremos usar cerca de 75% da sua velocidade de upload, pois o jogo e outros programas como o Discord também lutarão por largura de banda.

Então, determinaremos a resolução e o FPS que podemos usar para tal taxa de bits. A maioria dos sites de streaming tem recomendações (TwitchYoutubeFacebook Gaming) sobre o que usar. Estas são as nossas:

 

 

Resolução

Velocidade de Upload 

Bitrate

H.264

HEVC

AV1

4 Mbps

3 Mbps

576p

720p

720p

5 Mbps

4 Mbps

720p

720p

1080p

8 Mbps

6 Mbps

720p

1080p

1080p

10 Mbps

8 Mbps

1080p

1080p

1440p

12 Mbps

10 Mbps

1080p

1440p

1440p

15 Mbps

12 Mbps

1080p

1440p

4K

20 Mbps

15 Mbps

1080p

4k

4K

25 Mbps

20 Mbps

4k

4k

4K

50 Mbps

40 Mbps

4k

4k

4K

  • Nota importante para conteúdo de alta movimentação. Se você for transmitir cenas de alta movimentação (por exemplo, jogos de corrida, jogos FPS, etc.), recomendamos fortemente reduzir sua resolução. Conteúdo de alta movimentação não pode ser comprimido tanto e pode sofrer mais artefatos (erros de codificação) que fazem sua transmissão parecer "blocada". Se você reduzir a resolução, reduzirá os dados que estão sendo codificados e a qualidade resultante do visualizador será melhor. Por exemplo, para Fortnite, muitos streamers decidem transmitir em 1280x720 60 FPS a 6.000 Kbps, abaixo de 1920x1080.
  • Nota para novos e futuros streamers do Twitch. A transcodificação permite que um espectador assista ao seu vídeo em uma resolução diferente, exigindo, portanto, uma largura de banda menor. A Twitch oferece transcodificação garantida apenas para parceiros; não parceiros podem receber transcodificação dependendo da carga do servidor. Isso é importante se seus espectadores estiverem em celulares ou se a velocidade da Internet não for tão rápida. Você pode considerar fazer streaming em uma taxa de bits e resolução menores para diminuir a largura de banda necessária para ver seu canal.

Configurações Recomendadas

Estas são nossas configurações recomendadas para o OBS Studio 29.1 e superior. Para acessar as configurações, clique no botão Configurações no canto inferior direito.

Configurações da Guia de Vídeo

  • Base (Canvas) Resolution: Defina a resolução que você normalmente joga. Ou seja, a resolução da sua área de trabalho (se você joga no modo sem bordas), ou a resolução do jogo que você normalmente usa (se você joga em tela cheia).
  • Resolução de saída (dimensionada): insira a resolução apropriada para sua velocidade de upload e taxa de bits, conforme discutimos na seção anterior.
  • Filtro de Downscale: Se sua Resolução de Saída for menor que a Resolução Base, o OBS usará um filtro de downscale. Selecionar um melhor fornecerá um pequeno aprimoramento de nitidez da imagem, ao custo de alguma carga de trabalho do codificador. O NVENC é muito eficiente e normalmente roda com baixa utilização, então recomendamos usar isso com a opção Lanczos, 36 samples para a melhor qualidade.
  • FPS: insira o FPS apropriado para sua velocidade de upload e taxa de bits, conforme discutimos na seção anterior.

Configurações da Guia Transmissão

Selecione a plataforma de streaming à qual deseja se conectar. Você terá a opção de entrar no seu serviço com suas credenciais de login. Outro método é inserir sua “Chave de Stream”

  • Nota importante: Tenha cuidado com sua chave de transmissão! Qualquer pessoa com ela pode assumir o controle de sua transmissão

Instruções sobre como encontrar sua chave de transmissão podem ser encontradas no YouTubeTwitch ou Facebook Gaming.

Configurações da Guia Saída

Se você quiser uma configuração fácil e pronta para uso, faça o seguinte:

  • Modo de saída : Simples
  • Transmissão :
    • Taxa de bits : insira a taxa de bits apropriada para sua velocidade de upload, conforme discutimos na primeira seção.
    • Codificador : Aqui selecionaremos qual hardware será usado para codificar e com qual codec.
      • Para Twitch, selecione Hardware (NVENC, H.264).
      • Para o YouTube, selecione Hardware (NVENC, AV1) se você tiver uma GPU RTX Série 40, ou Hardware (NVENC, HEVC) caso contrário.
    • Predefinição do codificador: A predefinição determina a qualidade da codificação, a um custo de desempenho para o codificador. A maioria dos usuários deve usar P6: Mais lento (melhor qualidade). Se você estiver tentando executar várias codificações ao mesmo tempo, pode ser que você queira reduzir esse presente para não sobrecarregar o codificador.
  • Gravação :
    • Caminho de Gravação : Este é o diretório onde os vídeos serão salvos. Certifique-se de que o disco rígido selecionado tenha espaço suficiente!
    • Qualidade de gravação : Alta qualidade normalmente funciona para a maioria dos usuários, mas você pode alterar para Qualidade indistinguível se tiver espaço em disco suficiente ou se for gravar vídeos curtos (cerca de 60 segundos).
    • Formato de gravação : MKV
    • Codificador : Para gravações locais, você quer ter certeza de que o formato em que você grava é legível pelo aplicativo em que você usará o arquivo. AV1 fornece a melhor qualidade, seguido por HEVC e, por último, por H.264. Mas H.264 tem a maior compatibilidade com aplicativos, então se você tiver algum problema com os outros 2, você pode querer voltar para este.

Outras Configurações

Há mais duas coisas que você precisa configurar para garantir um fluxo tranquilo:

  • Modo de Jogo do Windows : Habilita o Modo de Jogo. Isso prioriza seu Jogo e Software de Streaming para que eles rodem melhor.
  • Utilização da GPU: Se a utilização da sua GPU estiver acima de 95%, o Windows começará a priorizar o jogo sobre tudo; isso pode, em alguns casos, fazer com que seu fluxo fique lento. Para resolver isso, o Windows adicionou um novo sistema de agendamento chamado Agendamento de GPU acelerado por hardware. Isso equilibrará automaticamente as diferentes cargas de trabalho no seu sistema para que seu jogo, fluxo e outros aplicativos (como um aplicativo VTubing) possam funcionar ao mesmo tempo. Verifique ou altere sua configuração no Painel de Controle do Windows em Sistema -> Vídeo -> Gráficos -> Configurações gráficas padrão.

Se por algum motivo o Hardware Accelerated GPU Scheduling não resolver o problema, o OBS adicionou uma opção no OBS 24.0.3 para priorizar o OBS Studio sobre todo o resto. Basta executar o OBS como Admin, e seu stream será suave como seda.

Se você não quiser executar o OBS no modo Admin, você também pode limitar o uso da GPU para ficar abaixo do limite de 95%. Para fazer isso, você pode:

  • Limite o FPS no jogo, execute o jogo no modo de janela sem bordas, reduza os gráficos ou a resolução do jogo ou ative o V-Sync.
  • Execute todos os ativos em 1080p. Para fazer isso, clique duas vezes na fonte no OBS e em Resolution selecione Custom e especifique uma resolução igual ou menor que 1080p.

E aí está! Esperamos que isso ajude você a melhorar a qualidade do seu stream e atingir seus objetivos. Deixe um comentário se isso funcionou para você ou se você gostaria que atualizássemos o guia com outras informações. Boa transmissão!

Transmissão aprimorada na Twitch

Ao fazer streaming, você envia um vídeo em uma taxa de bits específica. Alguns dos seus usuários podem não ter largura de banda suficiente para assistir ao seu canal, fazendo com que o stream fique travado. Para resolver isso, plataformas como Twitch oferecem transcodificação - elas criam versões diferentes do stream em várias larguras de banda e oferecem a melhor versão que cada pessoa pode assistir. O desafio é que esse processo é muito caro e só pode ser feito para os canais mais populares.

Para resolver isso, o Twitch lançou o Enhanced Broadcasting - um recurso que permite que sua GPU RTX crie várias versões do seu stream e as transmita para o Twitch. Além disso, as configurações de codificação de vídeo são selecionadas automaticamente para você com base no seu hardware, o que significa menos problemas na configuração do seu hardware ou OBS. E como toda a codificação é feita localmente, o Twitch também aproveitará esse recurso para testar novos codecs.

Para habilitar o Twitch Enhanced Broadcast:

  1. Baixe ou atualize para o OBS 30.2 mais recente
  2. Em “Configurações->Stream”, faça login no Twitch
  3. Nas novas configurações de “Vídeo multitrilha”, marque a caixa de seleção Habilitar transmissão aprimorada
  4. Mantenha a largura de banda máxima de streaming e o número máximo de faixas de vídeo marcados como Automático

Configurações Avançadas

Se você quiser personalizar todas as configurações, aqui estão nossas recomendações detalhadas.

Configurações de streaming

  • Modo de saída: Avançado. Isso lhe dá acesso a todas as configurações. Vamos começar!
  • Codificador:
    • Para Twitch, selecione Hardware (NVENC, H.264).
    • Para o YouTube, selecione Hardware (NVENC, AV1) se você tiver uma GPU RTX Série 40, ou Hardware (NVENC, HEVC) caso contrário.
  • Aplicar configurações do codificador do serviço de streaming: deixe esta opção marcada. Isso garantirá que, se você inserir um valor errado por engano, ele será corrigido.
  • Rate Control: Selecione CBR. Isso determina a taxa na qual os quadros serão codificados.
  • Bitrate : Insira o bitrate apropriado para sua Velocidade de Upload, como discutimos na seção anterior. Tenha em mente que algumas plataformas têm um bitrate máximo (por exemplo, para Twitch, atualmente é 6000 Kbps).
  • Intervalo de quadros-chave: definido como 2. As plataformas de streaming podem limitar o que você pode selecionar aqui, e a maioria exige uma configuração de 2.
  • Predefinição: Selecione P6: Mais lento (melhor qualidade).
  • Afinação: Selecione Alta qualidade.
  • Modo Multipass: definido como Duas Passagens (Resolução de um Quarto).
  • Perfil:
    • H.264: Defina como Alto. O perfil determina um grupo de configurações no Codec H.264. Ele não afeta o desempenho e dá acesso a um conjunto de recursos que são essenciais para streaming, então isso deve sempre ser definido como Alto.
    • HEVC: definido como principal; se você for transmitir em HDR, verifique se o perfil está definido como principal10.
    • AV1: Definido como principal (única opção).
  • Look-ahead: Verificado. Isso permite que o codificador selecione dinamicamente o número de B-Frames, entre 0 e o número de B-Frames que você especificar. Os B-frames são ótimos porque aumentam a qualidade da imagem, mas consomem muito da sua taxa de bits disponível, então eles reduzem a qualidade em conteúdo de alto movimento. O Look-ahead permite o melhor dos dois mundos. Este recurso é acelerado por CUDA; desative-o se a utilização da sua GPU for alta para garantir um fluxo suave.
  • Psycho Visual Tuning: Verificado. Isso habilita a Rate Distortion Optimization no codificador, o que otimiza muito a maneira como você usa a taxa de bits, melhorando a qualidade da imagem em movimento.
  • GPU: 0. Se você tiver 2 GPUs em seu sistema, você pode selecionar qual delas será usada para codificar. Isso não é recomendado, pois o NVENC já é muito eficiente e o pequeno ganho que você pode obter usando uma segunda placa é perdido por ter que copiar o quadro para a segunda GPU.
  • Máximo de quadros B: definido como 4. Se você desmarcar a opção Look-ahead, reduza para 2 quadros B.

Configurações de gravação

  • Tipo: Padrão.
  • Caminho de Gravação: Este é o diretório onde os vídeos serão salvos. Certifique-se de que o disco rígido selecionado tenha espaço suficiente!
  • Formato de gravação: MKV
  • Faixa de áudio: deixe em 1 como padrão; você pode adicionar mais faixas de áudio se estiver usando mais fontes.
  • Codificador: NVIDIA NVENC H.264 (novo).
  • Controle de taxa: Recomendamos CQP, embora VBR também produza bons resultados.
    • Nível CQ (CQ):  15 (você pode diminuir o número para obter maior qualidade).
    • Bitrate e Max Bitrate (VBR): 40.000 Bitrate; 60.000 Max bitrate. Você pode aumentar para 100.000 e 200.000 (respectivamente) para maior qualidade.
  • Intervalo de quadros-chave: 0 ou 2.
  • Predefinição: Selecione P6: Mais lento (melhor qualidade).
  • Afinação: Selecione Alta qualidade.
  • Modo Multipass: definido como Duas Passagens (Resolução de um Quarto).
  • Perfil:
    • H.264: Defina como Alto. O perfil determina um grupo de configurações no Codec H.264. Ele não afeta o desempenho e dá acesso a um conjunto de recursos que são essenciais para streaming, então isso deve sempre ser definido como Alto.
    • HEVC: Defina como principal; se você for capturar em HDR, defina como principal10.
    • AV1: Definido como principal (única opção).
  • Look-ahead: Verificado.
  • Ajuste Psicovisual: Verificado.
  • GPU: 0. Se você tiver 2 GPUs em seu sistema, poderá selecionar qual delas será usada para codificar.
  • Máximo de quadros B: definido como 4. Se você desmarcar a opção Look-ahead, reduza para 2 quadros B.

Gravação e transmissão HDR

Com o OBS versão 28 e posterior, você pode gravar em HDR e transmitir HDR para serviços compatíveis. Atualmente, você pode capturar HDR com HEVC e AV1 para gravações locais e transmitir em HDR para o YouTube apenas com HEVC.

Screenshot1
Screenshot2
Screenshot3

Capturando HDR

HDR - ou High Dynamic Range - permite que você aumente o alcance da luz do seu conteúdo. Você pode gravar e/ou transmitir com HDR.

Observe que:

  • O conteúdo HDR pode parecer desbotado em telas não HDR, então você não deve ativar esta opção se sua tela não for compatível com HDR ou se a plataforma para a qual você está transmitindo não for compatível com HDR.
  • HDR requer HEVC; não é compatível com H.264.

Para habilitar o HDR, precisamos ter certeza de que:

  1. Você tem um monitor HDR.
  2. As configurações do Windows e do jogo têm o HDR ativado.
  3. Configuramos seu pipeline completo no OBS para habilitar HDR.

Configurações do Windows e do jogo

Comece certificando-se de que você tenha o HDR ativado para seu Display no Windows. Clique com o botão direito do mouse em sua área de trabalho > Configurações de Display e ative Usar HDR.

Em seguida, abra o jogo que você deseja gravar ou transmitir, vá para as configurações e certifique-se de que o HDR esteja ligado. No Windows 11, há um recurso chamado Auto HDR que habilita um modo HDR virtual para qualquer jogo. Esta também é uma opção válida.

Configurações do OBS

No OBS, comece acessando a aba Avançado e alterando o Formato de Cor para P010 e o Espaço de Cor para Rec. 2100 (PQ).

Em seguida, precisamos ajustar a fonte Game Capture. Clique duas vezes nela (ou clique com o botão direito e vá para Propriedades), role para baixo e encontre o Espaço de Cor RGB10A2. Certifique-se de que esteja definido como Rec. 2100 (PQ).

Seu conteúdo agora deve estar pronto para ser capturado e/ou transmitido em HDR! Mas lembre-se, para gravar e/ou transmitir em HDR, você precisa alterar seu codificador de H.264 para HEVC. Você pode visitar a seção Como gravar e/ou transmitir com HEVC acima para ajustar isso.

Como transmitir HDR com HEVC para o YouTube

Se você quiser transmitir com HDR para o YouTube (único serviço suportado atualmente), certifique-se de estar usando o codificador HEVC e ajuste seu Perfil para main10.

Por fim, navegue até as configurações do YouTube Live no YouTube.com e certifique-se de que a configuração de Latência esteja definida como Baixa ou Normal (não use Ultra Baixa, pois não é compatível).

Sobre NVENC

NVENC é o codificador da NVIDIA. É uma seção física de nossas GPUs dedicada apenas à codificação. Isso significa que sua GPU pode operar normalmente, independentemente de você usar essa região para transmitir ou gravar. Outros codificadores, como x264, usam sua CPU para codificar, o que tira recursos de outros programas, como seu jogo. Codecs avançados como AV1 não conseguem rodar em CPUs de consumidor. É por isso que usar NVENC permite que você jogue em uma taxa de quadros mais alta e evite travamentos, dando a você e seus espectadores uma melhor experiência.

A eficiência dos codecs desempenha um papel importante na qualidade do vídeo, especialmente em situações de menor taxa de bits, como transmissão ao vivo. Um codec mais eficiente requer menos bits (portanto, menor largura de banda) do que um codec menos eficiente para atingir a mesma qualidade visual. O codec AV1 mais recente é ~40% mais eficiente do que o H.264. Isso também significa que codecs mais avançados como o AV1 produzirão maior qualidade, como se você estivesse transmitindo com ~40% mais taxa de bits.

O que isso significa para o streaming ao vivo? Simples! Melhor qualidade visual pode ser alcançada com a mesma largura de banda. A largura de banda de upload é uma variável sobre a qual a maioria dos streamers tem pouco controle, então a eficiência do codec é frequentemente o maior fator quando se trata da qualidade do stream. 

A largura de banda de upload pode ser limitada por limites de ISP ou serviço de streaming, caindo em média entre 6-15 Mbps. Transmitir vídeo codificado em H.264 4K/60 fps nessa velocidade de upload resulta em um vídeo desagradável, granulado e em blocos. Transmitir o mesmo vídeo codificado com AV1 resulta em melhorias significativas na qualidade.

Comparação de qualidade de vídeo 4K: H.264 vs. AV1 a 10 Mbps

A NVIDIA também trabalhou em estreita colaboração com a OBS para ajudar a otimizar o OBS Studio para GPUs NVIDIA, melhorando o desempenho e habilitando os melhores e mais recentes recursos de qualidade.

Uma vantagem adicional do NVENC é que, normalmente, a mesma versão do NVENC é usada por geração de GPU. Por exemplo, uma GeForce RTX 4090 e uma GeForce RTX 4050 têm a mesma qualidade de codificador. Isso é benéfico (e econômico!) se você quiser obter outra GPU para seu segundo PC codificar. No entanto, as GPUs GeForce RTX 4090, 4080 e 4070 Ti oferecem codificadores duplos para capacidade adicional, o que é útil porque você pode codificar em resolução e FPS mais altos (até 8K60) ou oferecer suporte a mais codificações simultâneas (por exemplo, se quiser transmitir para várias plataformas).

Por fim, se você estiver usando uma GPU NVIDIA, terá acesso aos Filtros de Jogo do GeForce Experience , que permitem melhorar ainda mais a qualidade da imagem dos seus espectadores por meio de software, aprimorando cores, adicionando nitidez ou introduzindo efeitos interessantes.

Sobre a NVIDIA Broadcast

O NVIDIA Broadcast transforma seu covil de gamer em um estúdio de transmissão doméstico, atualizando webcams e microfones padrão em dispositivos inteligentes premium por meio do poder da IA. Melhore a qualidade de vídeo e áudio da sua transmissão ao vivo por meio de recursos de IA, como plano de fundo virtual ou quadro automático de webcam e remoção de ruído do microfone. Com processadores de IA dedicados chamados Tensor Cores em GPUs GeForce RTX, as redes de IA são capazes de executar efeitos de alta qualidade em tempo real.

Sobre o NVIDIA Broadcast

O NVIDIA Broadcast transforma seu quarto gamer em um estúdio de transmissão doméstico, atualizando webcams e microfones padrão em dispositivos inteligentes premium por meio do poder da IA. Melhore a qualidade de vídeo e áudio da sua transmissão ao vivo por meio de recursos de IA, como plano de fundo virtual ou quadro automático de webcam e remoção de ruído do microfone. Com processadores de IA dedicados chamados Tensor Cores em GPUs GeForce RTX, as redes de IA são capazes de executar efeitos de alta qualidade em tempo real.

Os recursos do NVIDIA Broadcast incluem:

  • Remoção de ruído: use IA para remover ruído de fundo do seu feed de microfone – seja um teclado mecânico alto ou o AC. A rede de IA pode até ser usada em feeds de áudio de entrada para silenciar aquele amigo que não liga o push-to-talk.
  • Plano de fundo virtual: use IA para remover o plano de fundo do feed da sua webcam e substituí-lo por imagens de jogos, uma imagem de substituição ou até mesmo um desfoque sutil.
  • Enquadramento automático: use IA para rastrear o movimento da sua cabeça, aplicando zoom e cortando automaticamente sua cabeça para que você esteja sempre no quadro, mesmo enquanto se movimenta.
  • Contato visual: use a IA para ajustar o posicionamento dos seus olhos para fazer parecer que você está olhando diretamente para a câmera.

Quando não estiver transmitindo, esses recursos também podem aprimorar suas videoconferências e bate-papos de voz, tornando o NVIDIA Broadcast um companheiro de IA perfeito para radiodifusores e jogadores.

O NVIDIA Broadcast é compatível com uma ampla gama de aplicativos de transmissão, videoconferência e bate-papo por voz. Eles incluem OBS Studio, Streamlabs, Xsplit, Discord, Skype, Zoom, Webex, Microsoft Teams, Google Meet e muito mais.