Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
You can use the IWMSPlaylist interface to manage a playlist.
In addition to the methods inherited from IXMLDOMDocument, the IWMSPlaylist interface exposes the following methods.
Method |
Description |
---|---|
CueStream |
Prepares the next stream in the queue. |
FireEvent |
Sends the specified event to the playlist. |
get_CallerEntry |
Retrieves the current caller entry. |
get_CurrentMediaInformation |
Retrieves an IWMSActiveMedia interface containing information about the active media element in the playlist. |
get_CurrentPlaylistEntry |
Retrieves the active playlist element. |
get_ElapsedSimpleTime |
Retrieves the simple duration of the active playlist element. |
get_IsStreamCued |
Retrieves a Boolean value indicating whether a specific playlist element has been initialized and is ready to stream. |
get_NestedPlaylist |
Retrieves a nested playlist object. |
put_CurrentPlaylistEntry |
Specifies the active playlist element. |
UncueStream |
Specifies that content previously prepared for streaming is uncued. |
Example
The following example illustrates how to retrieve a pointer to an IWMSPlaylist interface
#include <windows.h>
#include <atlbase.h> // Includes CComVariant.
#include "wmsserver.h"
// Declare variables and interfaces.
IWMSServer *pServer;
IWMSPlayers *pPlayers;
IWMSPlayer *pPlayer;
IWMSPlaylist *pPlaylist;
HRESULT hr;
CComVariant varIndex;
long lCount;
// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer,
NULL,
CLSCTX_ALL,
IID_IWMSServer,
(void **)&pServer);
if (FAILED(hr)) goto EXIT;
// Retrieve a pointer to an IWMSPlayers interface
// and retrieve the total count of current connections.
hr = pServer->get_Players(&pPlayers);
if (FAILED(hr)) goto EXIT;
hr = pPlayers->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;
// Retrieve information about each requested playlist.
for (long x = 0; x < lCount; x++)
{
varIndex = x;
hr = pPlayers->get_Item(varIndex, &pPlayer);
if (FAILED(hr)) goto EXIT;
// Retrieve the playlist requested by the client
// if one exists.
hr = pPlayer->get_RequestedPlaylist(&pPlaylist);
if (FAILED(hr)) goto EXIT;
// Release temporary COM objects.
pPlayer->Release();
pPlaylist->Release();
}
EXIT:
// TODO: Release temporary COM objects and uninitialize COM.