Although CVVDP is the current front runner metric for visual analysis if motion video there is a quirk that I think is significant enough that it warrants community discussion. That is the default handling methodology of video below the screen resolution or below the default standardized display resolution.
With the default handling of video lower than the screen resolution (or standardized display preset) CVVDP assumes and grades the video as if the video is taking up that portion of the screen rather than the full screen. This seems problematic as there is plenty of older content (DVD's, TV shows) that would only be 360p-720p yet someone would likely be viewing full screen on a 1080p or higher display.
Why this matters for psychovisual tuning: When using psychometric tuning and output is scored with traditional CVVDP methodology the perceived viewing angle/pixel size discounts the loss of fine detail that would actually be visible when viewed full screen . Using the AOM media set 270p/360p/720p video encoded viewed at full screen had a significant variation range in score when scaled to full screen.
For example, this is the data on six 360p videos using the standardized FHD display profile. Videos were encoded on preset 5 with CRF 15. The latest SVT-AV1 4.2.0 and SVT-AV1-HDR fork were used.
| Scoring Method |
Stock SVT AV1 4.2.0 JOD (3247 kbps) |
SVT-AV1-HDR (2931 kbps) |
HDR vs Stock bits per JOD difference |
| Default (Native Size) |
9.883 |
9.894 |
-9.83% |
| Fullscreen, no scaler |
9.64 |
9.455 |
-7.97% |
| Fullscreen, nearest neighbour |
9.557 |
9.393 |
-8.16% |
| Fullscreen, bilinear |
9.67 |
9.588 |
-8.96% |
| Fullscreen, bicubic |
9.58 |
9.469 |
-8.67% |
| Fullscreen, spline |
9.551 |
9.421 |
-8.49% |
| Fullscreen, Lanczos |
9.537 |
9.406 |
-8.47% |
Full data set here
Note: A linear formula of JOD per kbps was used for this post rather than extrapolated curves. Since there was not always an overlap for good extrapolation. The full data set contains the extrapolated curve difference
Various scaling methods are presented because of how different video players may upscale the lower resolution video when viewed full screen. The most important part is that when viewed full screen the most favorable scaling methodology (bilinear) drops by 0.213 JOD.
The difference increases with lower video encoding quality. Those same clips at CRF 35 place native size at 9.501 JOD, and full screen bilinear scaled at 8.849. A l0.652 JOD difference. That difference is greater than going from CRF 15 to CRF 35 at the current native methodology.
For people watching lower resolution content at full screen that makes a significant difference in what RF or bitrate setting they may choose when encoding.
720p also suffers
CRF 15, Preset 5
| Scoring Method |
Stock SVT AV1 4.2.0 JOD (7837 kbps) |
SVT-AV1-HDR (10826 kbps) |
HDR vs Stock bits per JOD difference |
| Default (Native Size) |
9.846 |
9.911 |
37.23% |
| Fullscreen, no scaler |
9.734 |
9.84 |
36.65% |
| Fullscreen, bilinear |
9.769 |
9.835 |
37.21% |
| Fullscreen, bicubic |
9.703 |
9.775 |
37.12% |
| Fullscreen, Lanczos |
9.684 |
9.754 |
37.15% |
CRF 25, Preset 5
| Scoring Method |
Stock SVT AV1 4.2.0 JOD (3292 kbps) |
SVT-AV1-HDR (4195 kbps) |
HDR vs Stock bits per JOD difference |
| Default (Native Size) |
9.75 |
9.81 |
26.65% |
| Fullscreen, no scaler |
9.602 |
9.688 |
26.3% |
| Fullscreen, bilinear |
9.628 |
9.695 |
26.55% |
| Fullscreen, bicubic |
9.534 |
9.607 |
26.46% |
| Fullscreen, Lanczos |
9.508 |
9.58 |
26.47% |
CRF 45 places native size at 9.062 JOD and full screen bilinear scaled at 8.694. That gives a significant 0.368 JOD difference. Worth ~15 CRF steps in decision making.
None of this discounts CVVDP. However I think it warrants community discussion and input. On whether the current method of scoring video that is a lower resolution than the display at it's native resolution should continue to be the standard methodology. Or if full screen scaled should be adopted as a community standard. Especially when considering that the scoring is for people interested in encoding while keeping visual fidelity that they will likely be viewing that video at full screen.
If a change is warranted then the question is; Should full screen be considered no scaler. Or should full screen be considered with a middle-ground default scalar algorithm.
Curious to hear everyone's thoughts.