Setting the Player Source with Callbacks for C++

The following code demonstrates disabling scrubbing so a user can install callbacks when the source is assigned.

HRESULT SetPlayerSourceWithCallbacks(IltmmPlay* player, BSTR source) 
{ 
   HRESULT hr; 
   VARIANT_BOOL autoscrub; 
 
   // check to see whether autoscrub is enabled 
   hr = player->get_AutoScrub(&autoscrub); 
   if(FAILED(hr)) 
      return hr; 
   // if enabled then disable it 
   if(autoscrub == VARIANT_TRUE) 
   { 
      hr = player->put_AutoScrub(VARIANT_FALSE); 
      if(FAILED(hr)) 
         return hr; 
 
   } 
   // assign the source file 
   hr = player->put_SourceFile(source); 
   if(FAILED(hr)) 
      return hr; 
   // install any user-defined callbacks 
   hr = InstallUserCallbacks(player); 
   if(FAILED(hr)) 
      return hr; 
   // check to see if autoscrub was enabled on function entry 
   if(autoscrub == VARIANT_TRUE) 
   { 
      // manually force a poster frame 
      hr = player->Scrub(); 
      if(FAILED(hr)) 
         return hr; 
      // restore the autoscrub value 
      hr = player->put_AutoScrub(VARIANT_TRUE); 
      if(FAILED(hr)) 
         return hr; 
   } 
   return S_OK; 
} 

Help Version 20.0.2020.4.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Multimedia C API Help