Skip to content

{vulkan,radv,anv}/video: derive H264 scaling lists correctly

Benjamin Cheng requested to merge bcheng/mesa:bcheng/h264-sl into main

What does this MR do and why?

vulkan/video: add helper to derive H264 scaling lists

The H264 spec defines a complicated way of layering PPS scaling lists on top of SPS scaling lists. The details can be found in 7.4.2.1 (seq_scaling_matrix_present_flag semantics) and 7.4.2.2 (pic_scaling_matrix_present_flag semantics).

Both ANV and RADV need to derive the final scaling lists sent to HW using this logic in order to handle H264 scaling lists correctly.

Additionally, the scaling lists for ANV and RADV are converted from zig-zag order as specified by ITU, to raster order as needed for their HW.

Edited by Benjamin Cheng

Merge request reports