HRESULT SetTVFormat(IltmmCapture *pCapture){HRESULT hr;long lSupportFormats, lTVFormat, lLines;VARIANT_BOOL vLocked, vVCRLocked, vEnable;IltmmAnalogVideoDecoder* pAnVidDec = NULL;hr = pCapture->get_AnalogVideoDecoder(&pAnVidDec);if (FAILED(hr))return hr;hr = pAnVidDec->get_AvailableTVFormats(&lSupportFormats);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}hr = pAnVidDec->get_TVFormat(&lTVFormat);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}if ((lTVFormat != AnalogVideo_NTSC_M ) && (lSupportFormats & AnalogVideo_NTSC_M)){hr = pAnVidDec->put_TVFormat(AnalogVideo_NTSC_M);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}}hr = pAnVidDec->get_HorizontalLocked(&vLocked);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}hr = pAnVidDec->get_VCRHorizontalLocking(&vVCRLocked);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}if (vVCRLocked == VARIANT_FALSE){hr = pAnVidDec->put_VCRHorizontalLocking(VARIANT_TRUE);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}}hr = pAnVidDec->get_NumberOfLines(&lLines);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}hr = pAnVidDec->get_OutputEnable(&vEnable);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}if (vEnable == VARIANT_FALSE){hr = pAnVidDec->put_OutputEnable(VARIANT_TRUE);if (FAILED(hr)){pAnVidDec->Release();pAnVidDec = NULL;return hr;}}pAnVidDec->Release();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
