Skip to content

[3.0 backport] codec: libass: pass storage size to libass

Oneric requested to merge Oneric/vlc:3.0.x_fix-ass-storage-size into 3.0.x

Backport of !1708 (merged) to the stable branch to also fix #26634 (closed) in 3.0. Cherry picked from commit 2608eb5c with no changes necessary.


Due to a quirk in the ASS format some tags do depend on the exact storage size of the video not just the pixel aspect ratio, so tell libass via ass_set_storage_size to achieve correct rendering.

For ASS, storage size refers to the size the video is encoded in (stored at) with codec-level crop applied; further transforms like e.g. anamorphic de-squeezing or container-level crop must not be applied. This matches the used fmt_src values despite them being named visible_{width,height} and the existing PAR calculation already relies on this.

Fixes #26634 (closed)

Edited by Oneric

Merge request reports