How to Copy buffered DVR data to a new file (C++)

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 copy 
         pDvrSink->GetAvailabilityInfo(&start, &stop, &total); 
         // Copy the data to the new file 
         pDvrSink->CopyBufferToFile(L"C:\\Temp\\DVR\\Copied_Capture.mpg", start, stop); 
         // Release the interface and free string data 
         pDvrSink->Release(); 
      } 
   } 
} 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Multimedia C API Help