HRESULT IltmmAnalogVideoDecoder_put_TVFormat_Example (IltmmCapture* pCapture)
{
HRESULT hr;
long lSupportFormats, lTVFormat, lLines;
VARIANT_BOOL vLocked, vVCRLocked, vEnable;
IltmmAnalogVideoDecoder* pAnVidDec = NULL;
hr = IltmmCapture_get_AnalogVideoDecoder(pCapture, &pAnVidDec);
if (FAILED(hr))
return hr;
hr = IltmmAnalogVideoDecoder_get_AvailableTVFormats(pAnVidDec, &lSupportFormats);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
hr = IltmmAnalogVideoDecoder_get_TVFormat(pAnVidDec, &lTVFormat);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
if ((lTVFormat != AnalogVideo_NTSC_M ) && (lSupportFormats & AnalogVideo_NTSC_M))
{
hr = IltmmAnalogVideoDecoder_put_TVFormat(pAnVidDec, AnalogVideo_NTSC_M);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
}
hr = IltmmAnalogVideoDecoder_get_HorizontalLocked(pAnVidDec, &vLocked);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
hr = IltmmAnalogVideoDecoder_get_VCRHorizontalLocking(pAnVidDec, &vVCRLocked);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
if (vVCRLocked == VARIANT_FALSE)
{
hr = IltmmAnalogVideoDecoder_put_VCRHorizontalLocking(pAnVidDec, VARIANT_TRUE);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
}
hr = IltmmAnalogVideoDecoder_get_NumberOfLines(pAnVidDec, &lLines);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
hr = IltmmAnalogVideoDecoder_get_OutputEnable(pAnVidDec, &vEnable);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
if (vEnable == VARIANT_FALSE)
{
hr = IltmmAnalogVideoDecoder_put_OutputEnable (pAnVidDec, VARIANT_TRUE);
if (FAILED(hr))
{
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return hr;
}
}
IltmmAnalogVideoDecoder_Release(pAnVidDec);
pAnVidDec = NULL;
return S_OK;
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document