mp_image: copy params before dovi mapping for mp_image_copy_attributes

It currently doesn't copy original params before mapping, resulting in
wrong colors when some video filters are used, e.g. d3d11vpp=scale.
This commit is contained in:
nanahi 2024-10-01 00:36:25 -04:00 committed by Kacper Michajłow
parent 7bd612ee66
commit 9b571a7aa7
1 changed files with 3 additions and 0 deletions

View File

@ -519,6 +519,9 @@ void mp_image_copy_attributes(struct mp_image *dst, struct mp_image *src)
dst->params.chroma_location = src->params.chroma_location; dst->params.chroma_location = src->params.chroma_location;
dst->params.crop = src->params.crop; dst->params.crop = src->params.crop;
dst->nominal_fps = src->nominal_fps; dst->nominal_fps = src->nominal_fps;
dst->params.primaries_orig = dst->params.color.primaries;
dst->params.transfer_orig = dst->params.color.transfer;
dst->params.sys_orig = dst->params.repr.sys;
// ensure colorspace consistency // ensure colorspace consistency
enum pl_color_system dst_forced_csp = mp_image_params_get_forced_csp(&dst->params); enum pl_color_system dst_forced_csp = mp_image_params_get_forced_csp(&dst->params);