Rémi Bernon (@rbernon) commented about dlls/winegstreamer/wmv_decoder.c:
+ return S_OK; + + decoder->output_subtype = type->subtype; + decoder->output_format = wg_format; + /* Set up wg_transform. */ + if (decoder->wg_transform) { - decoder->output_subtype = type->subtype; - decoder->output_format = wg_format; + if (!wg_transform_set_output_format(decoder->wg_transform, &decoder->output_format)) + return E_FAIL; + } + else + { + if (!(decoder->wg_transform = wg_transform_create(&decoder->input_format, &decoder->output_format))) + return E_FAIL; I think it might be better to simply destroy and re-create the transform. Changing its output format would probably require to support format change events, and make things more complicated.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/2258#note_25320