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 20.0.2018.12.3
Products | Support | Contact Us | Copyright Notices
© 1991-2018 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Multimedia C API Help