The following method for C++ shows how to get the DVR Sink object from the ltmmPlayControl object and use it to copy DVR buffered data to a new file.
void PlayerDVRCopyToFile(IltmmPlay *pPlay){IUnknown *punk = NULL;HRESULT hr = pPlay->GetSubObject(ltmmPlay_Object_SourceFilter, &punk);if(SUCCEEDED(hr) && NULL != punk){ILMDVRSink *pDvrSink;hr = punk->QueryInterface(IID_ILMDVRSink, (LPVOID*)&pDvrSink);punk->Release();if (SUCCEEDED(hr)){double start, stop, total;// Get available range to copypDvrSink->GetAvailabilityInfo(&start, &stop, &total);// Copy the data to the new filepDvrSink->CopyBufferToFile(L"C:\\Temp\\DVR\\Copied_Capture.mpg", start, stop);// Release the interface and free string datapDvrSink->Release();}}}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
