2013年10月6日日曜日

StretchDIBits関数によるノイズ。

StretchDIBits()を使い縮小や拡大をするとノイズが発生する。
これを回避するためにはStretchDIBits()の前にSetStretchBltMode()を実行すればいい。

例:

SetStretchBltMode(hdc , COLORONCOLOR);
//これを挿入しないと「StretchDIBits」による縮小時に発生するノイズが酷い。
StretchDIBits(
 hdc ,
 650 , 0 ,
 640 , 360 ,
 0 , 0 ,
 pVideoInfoHeader->bmiHeader.biWidth , pVideoInfoHeader->bmiHeader.biHeight ,
 rgbValues , &bmpInfo , DIB_RGB_COLORS,SRCCOPY
);

このソースは
http://the-united-front.blogspot.com/2013/10/top-2-3-directshowusb-2-httpsdocs.html
の記事の一部です。

1 件のコメント:

  1. ノイズ発生抑止、参考になりました!thx :)

    返信削除