IltmmVideoProcAmp::GetRange Example for C
Show in webframe
HRESULT IltmmVideoProcAmp_GetRange_Example (IltmmCapture *pCapture)
{
HRESULT hr;
long lMin, lMax, lSteppingDelta, lDefault, lCapsFlags;
long lFlags, lVal;
IltmmVideoProcAmp* pVidProcAmp = NULL;
hr = IltmmCapture_get_VideoProcAmp (pCapture, &pVidProcAmp);
if (FAILED(hr))
{
IltmmVideoProcAmp_Release(pVidProcAmp);
pVidProcAmp = NULL;
return hr;
}
hr = IltmmVideoProcAmp_GetRange (pVidProcAmp, ltmmVideoProcAmp_Brightness,
&lMin, &lMax, &lSteppingDelta,
&lDefault, &lCapsFlags);
if (FAILED(hr))
{
IltmmVideoProcAmp_Release(pVidProcAmp);
pVidProcAmp = NULL;
return hr;
}
hr = IltmmVideoProcAmp_Get (pVidProcAmp, ltmmVideoProcAmp_Brightness,
&lVal, &lFlags);
if (FAILED(hr))
{
IltmmVideoProcAmp_Release(pVidProcAmp);
pVidProcAmp = NULL;
return hr;
}
lVal = min(lVal + 10, lMax);
hr = IltmmVideoProcAmp_Set(pVidProcAmp, ltmmVideoProcAmp_Brightness,
lVal, ltmmVideoProcAmp_Flags_Manual);
if (FAILED(hr))
{
IltmmVideoProcAmp_Release(pVidProcAmp);
pVidProcAmp = NULL;
return hr;
}
IltmmVideoProcAmp_Release(pVidProcAmp);
pVidProcAmp = NULL;
return S_OK;
}