Quatro fabricantes. Quatro blocos de silício de função fixa. Um único trabalho — transformar um quadro de pixels em alguns quilobytes de H.265 ou AV1 em menos de cinco milissegundos, sessenta vezes por segundo, sem perder nenhum. Veja como NVIDIA, AMD, Intel e Apple realmente se comparam no streaming de baixa latência e como o Remio escolhe o certo em tempo de execução.
Por que codificadores por hardware importam no desktop remoto
Codifique um único quadro 1080p com o libx264 em um núcleo de CPU rápido. Em um Apple série M moderno ou em um Ryzen 7000, você chega a algo entre 8 e 12 milissegundos no preset ultrafast, e mais ainda para qualquer coisa que tente preservar a qualidade. Isso parece tolerável até você lembrar do orçamento: 16,6 milissegundos por quadro a 60 FPS. Agora some captura, empacotamento, fila do pacer, saída pela rede, decodificação e renderização. A codificação por CPU não apenas deixa você mais lento — ela consome o orçamento inteiro de latência e, em qualquer coisa acima de 1080p60, perde quadros.
Os codificadores por hardware resolvem isso dedicando silício de função fixa ao mesmo trabalho. A NVIDIA chama o seu bloco de NVENC. A AMD chama o dela de AMF (mais precisamente, o motor VCN que o AMF controla). A Intel chama o dela de QuickSync (o Media Engine dentro da iGPU). A Apple chama o dela de VideoToolbox (a API; o silício é o Media Engine dos chips das séries M e A). Os quatro existem por um único motivo: a codificação por software não consegue cumprir as metas de latência e de taxa de quadros que telas, GPUs e usuários modernos esperam hoje.
Para o Remio especificamente, cada milissegundo economizado no codificador é um milissegundo que o usuário recupera no pacer, na rede e no renderizador. O nosso orçamento de latência publicado mira cerca de 8 ms de processamento em rede local (o restante é o ritmo de atualização de 60 Hz da sua própria tela) — o tempo de codificação é a maior variável isolada. A escolha do codificador, e a configuração desse codificador, determina tudo o que vem depois.
Os quatro fabricantes num relance
Antes de aprofundar em cada um, ajuda entender o que exatamente estamos comparando. Não são bibliotecas intercambiáveis — são blocos físicos em um die, cada um com seu próprio conjunto de instruções, sua própria pilha de drivers, suas próprias manias e seu próprio roteiro de vários anos. Eles diferem nos codecs que suportam, na qualidade que produzem, na latência que atingem, na energia que consomem e em quais plataformas existem.
- NVENC vem em toda NVIDIA GeForce, Quadro e RTX desde 2012 (Kepler). As gerações estão ligadas às famílias de arquitetura: a 1ª geração na Kepler, a 8ª na Ada Lovelace. As peças Hopper para data centers seguem outro ritmo.
- AMF expõe o motor VCN (Video Core Next) da AMD, que substituiu o antigo VCE. Disponível em todas as GPUs Vega, RDNA, RDNA2 e RDNA3, além das APUs mais novas.
- QuickSync está presente nas iGPUs da Intel desde a Sandy Bridge, em 2011 — o que o torna o codificador por hardware mais amplamente difundido do planeta. As GPUs dedicadas Arc usam a mesma arquitetura, em escala maior.
- VideoToolbox é a API da Apple; o silício por baixo é o Media Engine, embutido em todo Mac com Apple Silicon, em todo iPhone desde o A6 e em todo iPad. Os chips da série M trazem um ou dois motores, dependendo da versão.
NVENC — oito gerações de refinamento da NVIDIA
O NVENC é o codificador contra o qual a maioria dos softwares de streaming é testada, em parte porque a NVIDIA tem orçamento de marketing e em parte porque o silício realmente foi excelente por uma década. O bloco passou por oito gerações:
- 1ª a 3ª geração (Kepler até Maxwell, 2012-2014) — só H.264, viável para streaming, mas com qualidade claramente atrás do libx264.
- 4ª geração (Pascal, série GTX 10) — acrescentou a codificação H.265. É a geração em que a qualidade do NVENC alcançou e, por alguns critérios, superou os presets fast do libx264 com o mesmo bitrate.
- 6ª geração (Turing, série RTX 20, série GTX 16) — o salto do tão citado “NVENC da Turing”. A qualidade em bitrates baixos melhorou o bastante para que os streamers parassem de fingir que a codificação por CPU era muito melhor em usos ao vivo.
- 7ª geração (Ampere, série RTX 30) — refinamentos, com qualidade em geral equivalente à da Turing por watt.
- 8ª geração (Ada Lovelace, série RTX 40) — primeira geração da NVIDIA com codificação AV1 por hardware, além de dois motores de codificação nas versões de linha superior. O NVENC da Ada faz AV1 com qualidade competitiva com os presets médios do libaom-av1, por uma fração mínima do custo de CPU.
Para uso de baixa latência, o NVENC expõe três modos de controle de taxa relevantes. CBR com ajuste low-latency e o preset p1 (o mais rápido) é a configuração canônica: taxa de saída determinística, antecipação de um único quadro, sem quadros B. O Remio usa exatamente isso ao rodar sobre o hevc_nvenc no Windows. O tempo de codificação na Ada Lovelace em H.265 1080p60 fica de forma consistente entre 1 e 3 ms.
Uma pegadinha histórica: por anos, o NVENC de consumo ficou limitado a três sessões de codificação simultâneas pelo driver da NVIDIA. Esse limite foi elevado para oito em 2023 e depois efetivamente removido. Se você está lendo um tópico de fórum antigo que alerta sobre isso, o alerta não vale mais.
AMF — a azarona da AMD que finalmente alcançou
O AMF (Advanced Media Framework) da AMD é a API; o motor por baixo passou por duas arquiteturas distintas. O antigo VCE (Video Coding Engine) veio nas placas da era GCN a partir de 2012 e era o eterno ponto fraco em comparações diretas de codificadores — qualidade visivelmente pior que o NVENC com o mesmo bitrate, principalmente em conteúdo com muito movimento. A AMD sabia, a comunidade de streaming sabia, e os benchmarks confirmavam.
Essa história mudou com o VCN (Video Core Next), introduzido na Vega e refinado a cada geração seguinte:
- VCN 1.0-2.0 (Vega, RDNA1) — H.264 e H.265 com qualidade que finalmente chegou a um fio de cabelo do NVENC Pascal/Turing.
- VCN 3.0 (RDNA2, série RX 6000) — melhorias significativas de qualidade, principalmente em bitrates baixos. A primeira geração da AMD que me sinto à vontade para recomendar para streaming de jogos.
- VCN 4.0 (RDNA3, série RX 7000) — acrescenta a codificação AV1 em paralelo com a NVIDIA Ada. Dois codificadores nas versões superiores, para sessões em paralelo. A qualidade do AV1 é competitiva com a do AV1 da NVIDIA em benchmarks de terceiros.
Para streaming de baixa latência, o AMF expõe um preset de uso ultralowlatency, um preset de qualidade speed e um modo de controle de taxa cbr. O Remio usa o hevc_amf com os três — o mesmo trio de presets documentado nas nossas notas sobre a arquitetura de streaming. O tempo de codificação na RDNA3 em H.265 1080p60 costuma ficar entre 2 e 4 ms. A RDNA2 fica em torno de 3 a 5 ms. Placas mais antigas, da era VCN 1.x, ficam mais perto de 5 a 7 ms — ainda dentro do orçamento, mas com menos folga para picos de quadro-chave.
Por cinco anos, o codificador da AMD foi piada. A RDNA2 consertou isso. A RDNA3 o tornou competitivo em AV1. O duopólio de codificadores de streaming agora é um triopólio, e isso é bom para todo mundo.
QuickSync — o campeão silencioso da onipresença
O QuickSync é o codificador que você quase certamente já tem. Ele vem em toda CPU Intel com gráficos integrados desde a Sandy Bridge, em 2011 — mais de uma década de notebooks, NUCs e desktops de escritório com codificação de vídeo por hardware parada, porque o usuário achava que precisava de uma GPU dedicada. Não precisava.
A arquitetura evoluiu acompanhando a linhagem de iGPUs da Intel:
- Sandy Bridge a Skylake (2011-2015) — só H.264, qualidade mediana, mas latência e consumo líderes da categoria para um notebook.
- Kaby Lake a Coffee Lake (2016-2018) — acrescentou H.265, 10 bits e codificação 4K.
- Ice Lake em diante (2019+) — a iGPU Xe Gen11/Gen12 melhorou muito a qualidade. Muitos benchmarks colocam o QuickSync Gen12 a poucos pontos percentuais do NVENC Turing.
- Arc dedicada (2022+) — a primeira linha de GPUs dedicadas da Intel. A mesma arquitetura Xe-HPG em escala maior, com codificação AV1. A Arc foi a primeira GPU de consumo a trazer AV1 por hardware — chegando ao mercado antes da NVIDIA Ada e da AMD RDNA3 — e a qualidade é surpreendentemente excelente. Uma Intel Arc A380 continua sendo uma pechincha absurda em vazão de AV1 por dólar.
O perfil térmico é o superpoder discreto do QuickSync. Como ele vive dentro de uma iGPU que já está no SoC, o custo marginal de usá-lo é só o bloco de codificação — sem acordar uma GPU dedicada, sem ligar os controladores de memória GDDR6. Em um ThinkPad ou NUC, o QuickSync entrega qualidade comparável à do NVENC com cerca de um quarto do consumo de energia do sistema. No host Windows do Remio, o QuickSync é a terceira opção, depois do NVENC e do AMF — não porque seja pior, mas porque quem tem GPU dedicada geralmente quer a iGPU livre para outras cargas.
VideoToolbox — o Media Engine unificado do Apple Silicon
A Apple não dá um nome de marca ao codificador por hardware como a NVIDIA faz. A API é o VideoToolbox; o silício é o Media Engine, um bloco projetado pela Apple que vive dentro de todo Mac da série M e de todo SoC de iPhone/iPad desde o A6.
O Media Engine vem em quantidades diferentes, dependendo da versão:
- M1, M2, M3 — um Media Engine.
- M1 Pro/Max, M2 Pro/Max, M3 Pro/Max — dois Media Engines.
- M1 Ultra, M2 Ultra — quatro Media Engines (dois por die unido).
- M3 Max (CPU de 16 núcleos) — dois Media Engines.
- Família M4 — Media Engine renovado, com vazão de H.265 melhorada.
Cada Media Engine cuida de codificação/decodificação de H.264, H.265 e ProRes por hardware. A codificação ProRes é o recurso de destaque para editores de vídeo — nenhum outro chip de consumo traz isso — mas, para streaming, as capacidades relevantes são a codificação eficiente de H.265 main10 e uma latência de codificação impressionantemente baixa.
A única lacuna notável: nenhuma codificação AV1 em qualquer Apple Silicon em circulação. Os chips da série M decodificam AV1 desde o M3, mas não conseguem codificar. Para transmitir a partir de um Mac, o H.265 é o padrão prático num futuro próximo.
Onde a Apple realmente ganha é na eficiência energética. Em um M2 Pro codificando H.265 4K60 a 30 Mbps, o Media Engine inteiro consome cerca de 3 a 5 watts. A carga equivalente de NVENC em uma RTX 4070 consome algo mais perto de 35 watts de potência do sistema — a maior parte é o piso de consumo ocioso da GPU dedicada, não o bloco codificador. Para um host Mac mini que fica ligado 24 horas aguardando um cliente, essa é a diferença entre “quase imperceptível na conta de luz” e “perceptível de verdade”.
Comparação lado a lado
Aqui estão os quatro motores nos mesmos eixos. Os números de latência são de presets de latência ultrabaixa em H.265 1080p60, com quadros B desativados e VBV de um quadro — a configuração do Remio. A qualidade é uma classificação perceptiva aproximada a 8 Mbps CBR; as diferenças absolutas são pequenas.
| Eixo | NVENC (Ada) | AMF (RDNA3) | QuickSync (Arc / Gen12+) | VideoToolbox (M3+) |
|---|---|---|---|---|
| H.264 | Sim | Sim | Sim | Sim |
| H.265 (HEVC) | Sim | Sim | Sim | Sim (main10) |
| Codificação AV1 | Sim | Sim | Sim | Não |
| Codificação ProRes | Não | Não | Não | Sim |
| Resolução máxima | H.265 em 8K | H.265 em 8K | 8K (Arc), 4K (iGPU) | H.265 em 8K |
| FPS máximo em H.265 1080p | ~480 | ~360 | ~360 | ~600 (M3 Max) |
| Tempo de codificação, H.265 1080p60 | 1-3 ms | 2-4 ms | 2-4 ms | 2-3 ms |
| Consumo de energia, H.265 4K60 | ~35 W no sistema | ~30 W no sistema | ~8 W no sistema (iGPU) | ~5 W |
| Classificação de qualidade a 8 Mbps CBR | 1º empatado | 2º empatado | 2º empatado | 1º empatado |
| Plataformas | Windows, Linux | Windows, Linux | Windows, Linux, macOS (Macs Intel) | macOS, iOS, iPadOS, tvOS |
| Sessões simultâneas | Ilimitadas | Ilimitadas | Ilimitadas | Ilimitadas |
O resumo honesto: nas configurações que o streaming de desktop remoto realmente usa (CBR, baixa latência, sem quadros B), os quatro são bons o bastante com folga. Os diferenciais são o suporte a AV1 (NVIDIA / AMD / Intel — não Apple), a eficiência energética (Apple, depois a iGPU da Intel, depois todos os outros) e a disponibilidade de plataforma (você não escolhe o VideoToolbox em um host Windows nem o NVENC em um Mac).
O que o Remio escolhe em tempo de execução
O Remio sonda as capacidades do host na inicialização e escolhe um codificador por uma prioridade determinística. O host Windows e o host Mac seguem a mesma lógica de seleção.
Em hosts Windows:
- NVENC (
hevc_nvenc/h264_nvenc) — escolhido primeiro quando há uma GPU NVIDIA e o driver responde. Preferido por ser o codificador de latência mais consistentemente baixa na faixa mais ampla de gerações de hardware. - AMF (
hevc_amf/h264_amf) — escolhido em segundo lugar quando há uma GPU dedicada ou APU da AMD com VCN. Configurado comusage=ultralowlatency,quality=speed,rc=cbr. - QuickSync (
hevc_qsv/h264_qsv) — escolhido em terceiro quando há uma iGPU Intel. Funcionalmente equivalente no nosso pipeline; preferimos deixar a iGPU livre se houver uma GPU dedicada. - libx264, alternativa por CPU — escolhido somente quando nenhum codificador por hardware responde. Limitado a 720p60 ou 1080p30 para ficar dentro do orçamento de latência.
Em hosts Apple: o VideoToolbox é a única opção, e a única que queremos. O Media Engine de todo Mac compatível (macOS 15+) cuida de H.265 main10 de fábrica. Não é preciso um caminho alternativo.
A preferência de codec é H.265 por hardware primeiro, com H.264 como alternativa universal — de ponta a ponta, em todas as plataformas. O Remio não usa AV1 hoje (a codificação no host, a decodificação no cliente e a negociação de codec para ele não fazem parte do pipeline); ele se mantém no H.265 mesmo em hardware que tecnicamente poderia fazer AV1, porque o gargalo em rede local é a latência de codificação, não o bitrate.
Concessões entre qualidade e latência
Todo codificador por hardware expõe o mesmo punhado de controles, e todo controle troca qualidade por latência na mesma direção. A configuração do Remio fica na ponta mais agressiva do botão de latência porque o desktop remoto é, por definição, uma aplicação em tempo real em que um quadro com mais de 20 ms é pior que um quadro um pouco mais borrado do que o ideal.
- CBR vs VBR. O bitrate variável produz melhor qualidade com a mesma taxa média, gastando bits onde eles ajudam. Mas o VBR também produz um tamanho de quadro imprevisível, o que significa fila do pacer imprevisível, o que significa latência imprevisível. O Remio usa CBR em todo lugar. O custo em qualidade é pequeno; a consistência de latência é enorme.
- Quadros B. Os quadros B referenciam quadros passados e futuros, então o decodificador precisa esperar o quadro futuro chegar antes de decodificar o quadro B. Isso é aceitável para vídeo sob demanda e fatal para tempo real. O Remio desativa os quadros B em todos os codecs, em todas as plataformas.
- GOP / intervalo de quadros-chave. GOPs mais longos (mais quadros entre quadros-chave) comprimem melhor. GOPs mais curtos se recuperam mais rápido de perda de pacotes. O Remio roda GOPs efetivamente infinitos e pede ao host um novo quadro-chave quando o decodificador reporta perda. Um pacote perdido é reenviado de imediato se ainda puder chegar a tempo; se não puder, o Remio o ignora e pede um quadro novo em vez de esperar. Isso combina com a nossa filosofia de streaming de renderizar apenas o quadro mais recente.
- Antecipação (lookahead). NVENC, AMF e QuickSync suportam antecipação de vários quadros para quantização adaptativa. Cada quadro de antecipação acrescenta um quadro inteiro de atraso. O Remio roda com antecipação zero ou de um quadro — a configuração mais baixa de cada codificador.
- Buffer VBV. A janela do Video Buffering Verifier é quantos bits o codificador pode “pegar emprestado adiantado” antes de voltar à taxa-alvo. Um VBV maior dá qualidade mais suave. Um VBV menor dá controle de taxa mais rígido e latência menor. O Remio usa 1 quadro de VBV — o bitrate dividido pela taxa de quadros — que é o menor valor válido.
O padrão é consistente nos quatro fabricantes. Baixa latência em tempo real é uma otimização com restrições: você abre mão dos poucos pontos percentuais de qualidade que a antecipação e os quadros B compram na codificação offline, em troca da latência previsível que a interação em tempo real exige. Todo produto de streaming em circulação — Remio, Parsec, NVIDIA GeForce NOW, Xbox Cloud Gaming — faz a mesma concessão, na mesma direção.
Com o que você (o usuário) realmente precisa se preocupar
Se você pulou direto para o fim: o codificador por hardware de qualquer GPU moderna serve para desktop remoto.
As diferenças nas configurações de tempo real são menores que o ruído de qualquer benchmark razoável. Quem usa uma GTX 1060 Pascal tem a mesma experiência no Remio que quem usa uma RTX 4090 — os dois saturam o pipeline de 120 FPS com cerca de 8 ms de latência de processamento (o restante é o ritmo de atualização de 60 Hz da sua própria tela), e os dois produzem resultado indistinguível em bitrates de rede local.
As exceções, em ordem de frequência com que importam:
- Hardware com suporte a AV1 ajuda em redes lentas, em geral. Em Wi-Fi de hotel ou hotspot móvel, um host Ada / RDNA3 / Arc com cliente M3+ ou RTX série 40 compra cerca de 25 por cento mais folga com a mesma qualidade nas ferramentas que o usam. Em rede local, nada. O Remio ainda não usa AV1 — H.265 de ponta a ponta é o pipeline inteiro — então hoje isso é uma vantagem do fabricante, não do Remio.
- Macs com Apple Silicon são hosts notavelmente bons. A baixa latência do Media Engine, o excelente H.265 e o consumo de 3 a 5 W fazem de um Mac mini ou Studio uma das melhores fontes de streaming sempre ligadas que você pode comprar. A falta de codificação AV1 é a única lacuna, irrelevante em rede local.
- Uma Intel Arc A380 é uma pechincha desproporcional para AV1. Cerca de US$ 120 compram um bloco codificador que supera qualquer outra coisa abaixo de US$ 400.
- A alternativa por CPU do libx264 é real. Sem codificador por hardware — notebook antigo, servidor sem iGPU — o Remio ainda funciona. Só não em 4K a 60, e não sem queimar um núcleo de CPU.
Além desses casos extremos, a resposta certa é a mais simples: use a GPU que você compraria de qualquer jeito. Todo fabricante moderno convergiu para as mesmas capacidades, os mesmos presets de baixa latência, o mesmo envelope de qualidade. O Remio escolhe o certo em tempo de execução para que você não precise pensar nisso. Siga com o que levou você a abrir uma sessão de desktop remoto — programar, editar um vídeo, consertar um servidor, enviar uma correção de uma cafeteria.
Esse é o objetivo do silício de função fixa. Ele simplesmente funciona, e você deixa de reparar nele.