From: Brendan McGrath <bmcgrath@codeweavers.com> --- dlls/iyuv_32/iyuv.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/dlls/iyuv_32/iyuv.c b/dlls/iyuv_32/iyuv.c index bd7b3be31cd..0f1a5611f63 100644 --- a/dlls/iyuv_32/iyuv.c +++ b/dlls/iyuv_32/iyuv.c @@ -99,9 +99,25 @@ static LRESULT IYUV_DecompressQuery(const BITMAPINFOHEADER *in, const BITMAPINFO static LRESULT IYUV_DecompressGetFormat(BITMAPINFOHEADER *in, BITMAPINFOHEADER *out) { - FIXME("ICM_DECOMPRESS_GETFORMAT %p %p\n", in, out); + TRACE("ICM_DECOMPRESS_GETFORMAT %p %p\n", in, out); - return ICERR_UNSUPPORTED; + if (compare_fourcc(in->biCompression, FOURCC_I420) && compare_fourcc(in->biCompression, FOURCC_IYUV)) + return ICERR_BADFORMAT; + + if (out) + { + memset(out, 0, sizeof(*out)); + out->biSize = sizeof(BITMAPINFOHEADER); + out->biWidth = in->biWidth; + out->biHeight = abs(in->biHeight); + out->biCompression = BI_RGB; + out->biPlanes = 1; + out->biBitCount = 24; + out->biSizeImage = out->biWidth * out->biHeight * 3; + return ICERR_OK; + } + + return sizeof(*out); } static LRESULT IYUV_DecompressBegin(IMFTransform *transform, const BITMAPINFOHEADER *in, const BITMAPINFOHEADER *out) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10549