WMF: fix RGB24 format matching.
MFVideoFormat_RGB24 has a BGR layout and should therefore be matched to QVideoFrame::Format_BGR24, not Format_RGB24. Task-number: QTBUG-42323 Change-Id: I1749b575b1738168e3d3c0d055dee10f6d870c0c Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
This commit is contained in:
@@ -813,7 +813,7 @@ namespace
|
|||||||
case QVideoFrame::Format_RGB32:
|
case QVideoFrame::Format_RGB32:
|
||||||
mediaType->SetGUID(MF_MT_SUBTYPE, MFVideoFormat_RGB32);
|
mediaType->SetGUID(MF_MT_SUBTYPE, MFVideoFormat_RGB32);
|
||||||
break;
|
break;
|
||||||
case QVideoFrame::Format_RGB24:
|
case QVideoFrame::Format_BGR24: // MFVideoFormat_RGB24 has a BGR layout
|
||||||
mediaType->SetGUID(MF_MT_SUBTYPE, MFVideoFormat_RGB24);
|
mediaType->SetGUID(MF_MT_SUBTYPE, MFVideoFormat_RGB24);
|
||||||
break;
|
break;
|
||||||
case QVideoFrame::Format_RGB565:
|
case QVideoFrame::Format_RGB565:
|
||||||
@@ -1082,6 +1082,7 @@ namespace
|
|||||||
return format.frameWidth() * 4;
|
return format.frameWidth() * 4;
|
||||||
// 24 bpp packed formats.
|
// 24 bpp packed formats.
|
||||||
case QVideoFrame::Format_RGB24:
|
case QVideoFrame::Format_RGB24:
|
||||||
|
case QVideoFrame::Format_BGR24:
|
||||||
return PAD_TO_DWORD(format.frameWidth() * 3);
|
return PAD_TO_DWORD(format.frameWidth() * 3);
|
||||||
// 16 bpp packed formats.
|
// 16 bpp packed formats.
|
||||||
case QVideoFrame::Format_RGB565:
|
case QVideoFrame::Format_RGB565:
|
||||||
|
|||||||
Reference in New Issue
Block a user