Delete Live Stream Example for C++

HRESULT DeleteLiveStream(IltmsServer* server, LPCTSTR path) 
{ 
   HRESULT hr; 
   long streamcount; 
   long streamindex; 
   CComPtr streams; 
   hr = server->GetLiveStreams(&streams); 
   if(FAILED(hr)) 
      goto error; 
   if(!path) 
   { 
      // remove all the streams 
      hr = streams->Clear(); 
      if(FAILED(hr)) 
         goto error; 
      // save the new collection 
      hr = server->SetLiveStreams(streams); 
      if(FAILED(hr)) 
         goto error; 
   } 
   else 
   { 
      // search for existing stream with same path 
      hr = streams->get_Count(&streamcount); 
      if(FAILED(hr)) 
         goto error; 
      for(streamindex = 0; streamindex < streamcount; streamindex++) 
      { 
         CComPtr stream; 
         CComBSTR v; 
         hr = streams->GetLiveStream(streamindex, &stream); 
         if(FAILED(hr)) 
            goto error; 
         hr = stream->get_Path(&v); 
         if(FAILED(hr)) 
            goto error; 
         if(CStringW(path).CompareNoCase(v) == 0) 
         { 
            // remove it 
            hr = streams->Remove(streamindex); 
            if(FAILED(hr)) 
               goto error; 
            // save the new collection 
            hr = server->SetLiveStreams(streams); 
            if(FAILED(hr)) 
               goto error; 
            break; 
         } 
      } 
   } 
error: 
   return hr; 
} 

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