diff --git a/dlls/ir50_32/ir50.c b/dlls/ir50_32/ir50.c index 87807aba25f..ccd7f245772 100644 --- a/dlls/ir50_32/ir50.c +++ b/dlls/ir50_32/ir50.c @@ -95,7 +95,7 @@ IV50_DecompressQuery( LPBITMAPINFO in, LPBITMAPINFO out ) return ICERR_BADFORMAT; } - if ( out->bmiHeader.biBitCount != 32 && out->bmiHeader.biBitCount != 16 ) + if ( out->bmiHeader.biBitCount != 32 && out->bmiHeader.biBitCount != 24 && out->bmiHeader.biBitCount != 16 ) { TRACE("incompatible depth requested\n"); return ICERR_BADFORMAT; @@ -153,6 +153,8 @@ static LRESULT IV50_DecompressBegin( IMFTransform *decoder, LPBITMAPINFO in, LPB if ( out->bmiHeader.biBitCount == 32 ) output_subtype = &MFVideoFormat_RGB32; + else if ( out->bmiHeader.biBitCount == 24 ) + output_subtype = &MFVideoFormat_RGB24; else if ( out->bmiHeader.biBitCount == 16 ) output_subtype = &MFVideoFormat_RGB555; else