Simulador de controle de taxa

veja como o CRF adapta a taxa de bits à complexidade, enquanto o CBR mantém um alvo fixo ao custo de variação de qualidade

A carregar a simulação interativa...

Um número CRF não viaja entre codificadores 🖖

O CRF parece uma escala de qualidade absoluta, e dentro de um mesmo codificador com um mesmo preset ele se comporta como tal. Entre codificadores, não. O valor é um índice nas decisões internas de quantização daquele codificador específico, não a medida de nada, então copiar um ajuste de uma linha de comando x264 para uma x265 muda silenciosamente o que você pediu — a equivalência prática aproximada é que o x265 precisa de um número cerca de 5 ou 6 mais alto para parecer igual, porque sua escala de quantização padrão é diferente. Presets também deslocam o alvo, já que mudam em quais decisões o codificador está disposto a gastar tempo. A única forma confiável de igualar qualidade entre dois codificadores é codificar uma amostra com cada um e comparar.

Fixar a qualidade ou fixar o tamanho 🖖

O controle de taxa é, no fundo, escolher qual botão você fixa. Com CRF você escolhe um nível de qualidade e deixa o tamanho do arquivo cair onde o material exigir. Com CBR você fixa a taxa de bits e deixa a qualidade subir e descer com a cena. Regra prática: use CRF para downloads e arquivos onde o tamanho pode variar, e CBR para transmissões ao vivo ou broadcast com largura de banda fixa.

O CRF baixa a qualidade nas cenas agitadas 🖖

Apesar do nome, a qualidade 'constante' não é bem constante. Codificadores como o x264 deixam a qualidade cair de propósito nos quadros mais complexos, por meio de um fator de compressão da curva de quantização (qcomp, padrão 0.6) que dá às cenas de muito movimento menos bits por pixel do que uma qualidade estritamente constante. Funciona porque o movimento rápido mascara os detalhes finos, e o olho quase nunca percebe os artefatos escondidos na ação.

UMA ETAPA DE UMA CADEIA — O QUE ENTRA, O QUE SAI E O QUE QUEBRA DEPOIS

Onde isto fica no pipeline de codificação

Um codificador de vídeo não é um algoritmo, mas oito etapas numa ordem fixa, e a ordem não é arbitrária: cada etapa existe porque a anterior tornou o seu trabalho possível. Esta ferramenta modela uma delas. A cadeia abaixo liga às outras sete.

Simulador de controle de taxa — escolhe o quantizador de cada quadro para atingir uma meta de taxa de bits ou de qualidade

O controle de taxa é um laço, não um passo: envolve a quantização da etapa 05 e vai ajustando-a, em vez de rodar uma vez entre duas vizinhas.

O que entra
O custo em bits medido dos quadros já codificados, mais uma meta a atingir.
O que sai
Um ajuste de quantizador para o próximo quadro, devolvido à etapa 05.
O que a etapa seguinte pressupõe
Pressupõe que tem permissão para alterar a quantização, e é por isso que envolve essa etapa em vez de segui-la.
O que dá errado aqui
Qualidade e taxa de bits não podem ser mantidas constantes ao mesmo tempo. O CRF fixa a qualidade e deixa a taxa subir em cenas complexas; o CBR fixa a taxa e deixa a qualidade cair nelas. Escolher um é escolher qual dos dois tem permissão para se mover.

Problemas resolvidos na íntegra

  1. Derivação da pontuação de 60 para o pior quadro do CBR a partir de um buffer de 4 quadros 6 passos

    Cena de ação, CRF 23, um buffer de 4 fotogramas. O pior fotograma do CBR pontua 60 em 85 permitidos por este modelo, e as regras estão todas na página: o CRF atribui a cada fotograma uma quota de bits proporcional à sua complexidade, o CBR paga um valor fixo de 2000 bits e complementa esse valor a partir de um buffer com capacidade para 4 fotogramas, e a qualidade do CBR é 85 vezes a raiz quadrada da oferta sobre a procura. Deduza o 60.

    1. A alocação do CRF é definida em relação à complexidade média da cena, pelo que ao fazer a média se obtém diretamente de volta essa mesma média. Seja qual for a cena e seja qual for o CRF, a média resulta no alvo de 2000 bits — essa indicação é uma definição, não uma medição.

    2. O pico é a informação relevante. 4078 contra 2000 indica que o fotograma com maior atividade carrega 2,039 vezes a complexidade média, e o gerador limita a complexidade a 0,95, pelo que a complexidade média desta cena tem de ser 0,466.

    3. O CBR enfrenta a mesma curva. A sua procura por fotograma é a mesma expressão que a alocação do CRF, pelo que o fotograma pelo qual o CRF paga 4078 bits é o fotograma para o qual são pedidos 4078 bits ao CBR, entregando este apenas 2000.

    4. Cobrir essa diferença é a função do buffer. Quando cheio, comporta 8000 bits e eleva a oferta para 5040, confortavelmente acima dos 4078 exigidos pelo fotograma mais difícil — um buffer cheio ocultaria o pico por completo e a qualidade nunca deixaria os 85.

    5. A qualidade deixa efetivamente os 85, logo o buffer não pode estar cheio. Considere-o vazio: a oferta é de apenas 2000, a razão é 0,4904, a sua raiz quadrada é 0,7003, e 85 vezes esse valor dá 59,5, que o painel arredonda para 60. O mínimo apresentado é exatamente o limite inferior do buffer vazio.

    6. O buffer esvazia à taxa em que a procura excede o orçamento, ou seja, 2078 bits no fotograma de pico. 8000 bits de buffer correspondem a 3,85 fotogramas dessa diferença. O trecho de maior atividade desta cena dura 40.

    Resposta

    60 não se deve a um buffer com tamanho errado. Deve-se a um buffer que se esgotou. O tamanho do buffer converte-se em tempo, não em qualidade: divida o preenchimento pelo défice por fotograma e obtém o número de fotogramas de cobertura de que dispõe, razão pela qual um pico de consumo é medido em relação ao buffer em fotogramas e não em bits. Ocultar um pico com a duração de 40 fotogramas exige cerca de 1,04 fotogramas de buffer por fotograma de pico — aproximadamente 40 fotogramas, e o cursor para nos 10. Esta é a justificação para a taxa de bits variável numa única linha: o CRF nunca precisa de ocultar o pico, apenas paga por ele.

  2. A diferença de 10,8 pontos entre CRF e CBR a 2000 bits por quadro 5 passos

    Ambos os modos consomem os mesmos 2000 bits por fotograma nesta cena. A linha de qualidade do CRF situa-se em 89,8, enquanto o CBR regista uma média de 79. Determine o que se obtém em troca dessa diferença de 10,8 pontos e quanto custaria em passos de CRF.

    1. A pontuação do CRF provém exclusivamente do cursor: 45 pontos distribuídos ao longo dos 22 passos de CRF 18 a CRF 40. O CRF 23 fica 5 passos abaixo, resultando em 89,8.

    2. Um passo equivale, portanto, a 2,045 pontos em qualquer ponto da escala — este modelo torna a qualidade do CRF linear, o que permite quantificar posteriormente a diferença em passos.

    3. As taxas de bits não são meramente próximas, são idênticas. Por construção, o CRF atinge em média o valor-alvo, e o CBR paga o valor-alvo em cada fotograma individual, pelo que ambos produzem 240 000 bits ao longo dos 120 fotogramas.

    4. Nada nos 10,8 pontos entre 89,8 e 79 resulta, portanto, de uma diferença na taxa de bits. Mesmos bits, mesmo tamanho de ficheiro, separados por 10,8 pontos.

    5. A diferença divide-se em duas partes. O CBR está limitado a 85 mesmo em fotogramas que superaria facilmente, o que custa 4,8 pontos face aos 89,8 do CRF, e os 6,0 pontos restantes perdem-se nos fotogramas em que o buffer já não tinha reserva.

    Resposta

    Uma taxa de bits constante custa aqui 10,8 pontos de qualidade, e 5,28 passos de CRF permitiriam recuperá-los. O que o CBR obtém em troca é um limite de pico: o seu maior fotograma tem 2000 bits, exatamente a sua média, enquanto o maior do CRF tem 4078. Numa ligação que transporta 2000 bits por fotograma e nem mais um, o fotograma de pico do CRF chega com atraso e os seus 89,8 não valem nada — essa é toda a razão para aceitar os 10,8. Note o que o passo 3 também exclui: a alocação não contém qualquer termo de CRF, pelo que aumentar o CRF para 28 baixaria a pontuação e manteria a taxa de bits em 2000. Esta página mostra onde os bits são aplicados, não quanto custa obter determinado nível de qualidade.

Referências (1)

Problemas de exemplo

  • ação - Filme de ação: a taxa de bits do CRF dispara 3× durante cenas de luta; a qualidade do CBR cai quando o buffer se esgota
  • gravação de tela - Gravação de tela: o CRF usa bits quase nulos em interface estática; a qualidade do CBR despenca quando a reprodução de vídeo começa
  • esportes - Esportes com buffer de 1 quadro: a alta complexidade sustentada mantém a qualidade do CBR sob pressão constante
  • documentário - Documentário com CRF 30: bitrate moderado; picos isolados de complexidade visíveis em ambos os modos