IltmfConvert::SaveStillBitmap Example for C++
Show in webframe
#define MAKE_MEDIA_PATH(pFileName) (TEXT("C:\\LEADTOOLS\\Media\\")TEXT(pFileName))
// This function would be called before start the conversion process
void BeforeConversion(IltmfConvert *pConvert)
{
long lWnd = 0;
ltmfSizeMode lSizeMode;
long lLimit, lVideoH, lVideoW, lWndLeft, lWndTop, lWndW, lWndH;
VARIANT_BOOL vb;
BSTR bstrLog;
pConvert->get_VideoWindowHandle(&lWnd);
if (lWnd)
{
// get video dimensions
pConvert->get_VideoWidth(&lVideoW);
pConvert->get_VideoHeight(&lVideoH);
// get window size and pos
pConvert->get_VideoWindowWidth(&lWndW);
pConvert->get_VideoWindowHeight(&lWndH);
pConvert->get_VideoWindowLeft(&lWndLeft);
pConvert->get_VideoWindowTop(&lWndTop);
// set the desired video window size mode
pConvert->get_VideoWindowSizeMode(&lSizeMode);
if (lSizeMode != ltmfFit && lVideoW > lWndW && lVideoH > lWndH)
pConvert->put_VideoWindowSizeMode(ltmfFit);
else if (lVideoW < lWndW && lVideoH < lWndH)
pConvert->put_VideoWindowSizeMode(ltmfStretch);
}
// get full screen mode
pConvert->get_FullScreenMode(&vb);
if (vb == VARIANT_TRUE)
{
// Just to show how to use put_FullScreenMode
pConvert->ToggleFullScreenMode();
// Use put_FullScreenMode(VARIANT_FALSE) to turn off the full screen mode
pConvert->put_FullScreenMode(VARIANT_FALSE);
}
}
// This function would be called to save a snapshot from the running conversion to a file
void TakeSnapShots(IltmfConvert *pConvert)
{
static int i = 0;
WCHAR szFileName[100];
wsprintf(szFileName, MAKE_MEDIA_PATH("SnapShot%d.cmp"), i++);
USES_CONVERSION;
BSTR bstFileName = SysAllocString(szFileName);
pConvert->SaveStillBitmap(bstFileName, ltmfConvert_StillFormat_CMP, 2, 0, -1);
}