Anton Baskanov (@baskanov) commented about dlls/amstream/ddrawstream.c:
- videoinfo = (VIDEOINFO*)mt->pbFormat;
- videoinfo->bmiHeader.biWidth = format->dwWidth;
- videoinfo->bmiHeader.biHeight = format->dwHeight;
- videoinfo->bmiHeader.biBitCount = format->ddpfPixelFormat.dwRGBBitCount;
- videoinfo->bmiHeader.biCompression = BI_RGB;
- videoinfo->bmiHeader.biSizeImage = ALIGN(format->dwWidth * format->dwHeight * (format->ddpfPixelFormat.dwRGBBitCount / 8), 4);
- if (format->ddpfPixelFormat.dwRGBBitCount == 16 && format->ddpfPixelFormat.dwRBitMask == 0x7c00)
mt->subtype = MEDIASUBTYPE_RGB555;
- else if (format->ddpfPixelFormat.dwRGBBitCount == 16 && format->ddpfPixelFormat.dwRBitMask == 0xf800)
- {
mt->subtype = MEDIASUBTYPE_RGB565;
mt->cbFormat = offsetof(VIDEOINFO, dwBitMasks[3]);
mt->pbFormat = CoTaskMemRealloc(mt->pbFormat, mt->cbFormat);
videoinfo = (VIDEOINFO*)mt->pbFormat;
videoinfo->dwBitMasks[iRED] = 0xf800;
`biCompression` has to be `BI_BITFIELDS` for RGB565: ```suggestion:-0+0 videoinfo->bmiHeader.biCompression = BI_BITFIELDS; videoinfo->dwBitMasks[iRED] = 0xf800; ```