連続フレーム画像を保存について
現在、USBカメラから撮ったフレーム画像を保存するといったプログラムを作成しています。やりたいのはUSBカメラから撮った全てのフレーム画像(例:300フレーム=300枚画像)の保存ですが、今はキーボートを押されるたび画像の保存しかできない状態です。とっても困っています。どうか教えていただけませんか?よろしくお願いします。
while(1){
int v = 0;
hr = pGrab -> GetCurrentBuffer( &n, (long *)buffer );// グラブ
if( kbhit() ){
getch();//kbhitで取得したキーの破棄
hr = pMC -> Pause();
memset(&bmphdr, 0, sizeof(bmphdr));
bmphdr.bfType = ('M' << 8) | 'B';
bmphdr.bfSize = sizeof(bmphdr) + sizeof(BITMAPINFOHEADER) + n;
bmphdr.bfOffBits = sizeof(bmphdr) + sizeof
(BITMAPINFOHEADER);
while(1){
v++;
char filename[300];
_snprintf(filename, sizeof(filename),"%d.bmp", v);
fh = CreateFile(filename,GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(fh, &bmphdr, sizeof(bmphdr), &nWritten, NULL);
WriteFile(fh,&pVideoHeader->bmiHeader,
sizeof(BITMAPINFOHEADER), &nWritten, NULL);
WriteFile(fh, buffer, n, &nWritten, NULL);
CloseHandle(fh);
pMC -> Run();
pGrab -> SetBufferSamples(FALSE);
if(kbhit()){
break;
}
}
printf( "グラブ停止:終了 -- 0 、再開 -- 1 、処理 -- 2\n" );
scanf("%d",&num);
}
お礼
回答ありがとうございました。参考にさせていただき進めたいと思います。また、よろしくお願いします。