I tried using your code and it doesn't seem to work in my particular case. The bibitCount is not always 32 since it will depend on the device. The Original BITMAPINFOHEADER comes from a VIDEOINFOHEADER which in turn is from an AM_MEDIA_TYPE. Here is the bih
Code:
bih.biSize = 40;
bih.biWidth = 440;
bih.biHeight = 200;
bih.biPlanes = 1;
bih.biBitCount = 16;
bih.biCompression = 844715353;
bih.biSizeImage = 176000;
every other parameter is 0 for this.
I tried using your code and it doesn't seem to work in my particular case.