webmice
March 17, 2004, 18:58:24
I Create a function like this to save the live picture by double Click
{
m_pGrabber->setSinkType( DShowLib::FrameGrabberSink( DShowLib::FrameGrabberSink::tFrameGrabberMode::eSN AP, DShowLib::eRGB24) );
int size_buffer = m_pGrabber->getAcqSizeMaxX()
* m_pGrabber->getAcqSizeMaxY() * 3; //1 byte per pixel.
BYTE* pBuf[5];
for( int i = 0; i < 3; ++i )
{
pBuf[i] = new BYTE[size_buffer];
}
DShowLib::Grabber::tMemBufferCollectionPtr pMemBufferCollection = m_pGrabber->newMemBufferCollection( 5 );
m_pGrabber->setActiveMemBufferCollection( pMemBufferCollection );
m_pGrabber->startLive( false );
m_pGrabber->snapImages( 3 );
m_pGrabber->stopLive();
pMemBufferCollection->save( "file*.bmp" );
AfxMessageBox ("Save OK");
}
Why the picture like this ?? blank
{
m_pGrabber->setSinkType( DShowLib::FrameGrabberSink( DShowLib::FrameGrabberSink::tFrameGrabberMode::eSN AP, DShowLib::eRGB24) );
int size_buffer = m_pGrabber->getAcqSizeMaxX()
* m_pGrabber->getAcqSizeMaxY() * 3; //1 byte per pixel.
BYTE* pBuf[5];
for( int i = 0; i < 3; ++i )
{
pBuf[i] = new BYTE[size_buffer];
}
DShowLib::Grabber::tMemBufferCollectionPtr pMemBufferCollection = m_pGrabber->newMemBufferCollection( 5 );
m_pGrabber->setActiveMemBufferCollection( pMemBufferCollection );
m_pGrabber->startLive( false );
m_pGrabber->snapImages( 3 );
m_pGrabber->stopLive();
pMemBufferCollection->save( "file*.bmp" );
AfxMessageBox ("Save OK");
}
Why the picture like this ?? blank