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.
.gif)
| Previous | Next |
IWMSBroadcastPublishingPoint Interface
You can use the IWMSBroadcastPublishingPoint interface to configure and run a broadcast publishing point.
In addition to the methods inherited from the IWMSPublishingPoint interface, the IWMSBroadcastPublishingPoint interface exposes the following methods.
| Method | Description |
| Announce | Updates the publishing points multicast configuration with data formats that have been added to the IWMSAnnouncementStreamFormats interface. |
| AnnounceToNSCFile | Creates a multicast announcement (.nsc) file that is required for a client to connect to a multicast broadcast. |
| AnnounceToNSCStream | Retrieves an IStream interface that contains a file stream that can be used by a client to receive and render a broadcast. |
| ExportXML | Creates an XML file that contains publishing point configuration data. |
| get_AllowClientToStartandStop | Retrieves a Boolean value that indicates whether a stopped publishing point can be started when a client tries to receive a broadcast from it. |
| get_AllowStreamSplitting | Retrieves a Boolean value that indicates whether the stream can be split. |
| get_AnnouncementStreamFormats | Retrieves an IWMSAnnouncementStreamFormats interface that contains a collection of names of media files whose formats are used in a multicast broadcast. |
| get_BroadcastDataSinks | Retrieves an IWMSPlugins interface that contains a collection of broadcast data sink plug-ins that can be used to send content to a client. |
| get_BroadcastStatus | Retrieves an enumeration value that indicates the status of the broadcast publishing point. |
| get_BufferSetting | Retrieves a member of the WMS_BUFFER_SETTING enumeration type that indicates the amount of buffering that is done on a broadcast sink. |
| get_SharedPlaylist | Retrieves an IWMSPlaylist interface for the broadcast publishing point. |
| get_UpTime | Retrieves the elapsed time, in seconds, that the publishing point has been running. |
| put_AllowClientToStartAndStop | Specifies a Boolean value that indicates whether a stopped publishing point can be started when a client tries to receive a broadcast from it. |
| put_AllowStreamSplitting | Specifies a Boolean value that indicates whether the stream can be split. |
| put_BufferSetting | Specifies a member of the WMS_BUFFER_SETTING enumeration type that indicates the amount of buffering that is done on a broadcast sink. |
| Start | Starts the broadcast publishing point. |
| StartArchive | Begins saving the streamed content to a file. |
| StartWithoutData | Initializes the publishing point and sends multicast beacons that enable clients to connect to a multicast when no content is being streamed. |
| Stop | Stops the broadcast publishing point. |
| StopArchive | Stops archiving the content streamed by the publishing point. |
Example Code
The following example illustrates how to retrieve a pointer to an IWMSBroadcastPublishingPoint interface.
#include <windows.h>
#include <atlbase.h> // Includes CComVariant.
#include "wmsserver.h"
// Declare variables and interfaces.
IWMSServer *pServer;
IWMSPublishingPoints *pPubPoints;
IWMSPublishingPoint *pPubPoint;
IWMSBroadcastPublishingPoint *pBCPubPoint;
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 the IWMSPublishingPoints
// interface and retrieve the number of publishing points.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
hr = pPubPoints->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;
// Retrieve each publishing point and query the
// IWMSBroadcastPublishingPoint interface.
for (long x = 0; x < lCount; x++)
{
varIndex = x;
hr = pPubPoints->get_Item(varIndex, &pPubPoint);
if (FAILED(hr)) goto EXIT;
// Retrieve the type of publishing point.
WMS_PUBLISHING_POINT_TYPE pptType;
hr = pPubPoint->get_Type(&pptType);
if (FAILED(hr)) goto EXIT;
if (pptType == WMS_PUBLISHING_POINT_TYPE_BROADCAST)
{
hr = pPubPoint->QueryInterface(IID_IWMSBroadcastPublishingPoint,
(void **)&pBCPubPoint);
if (FAILED(hr)) goto EXIT;
pBCPubPoint->Release();
}
// Release temporary COM objects.
pPubPoint->Release();
}
EXIT:
// TODO: Release temporary COM objects and uninitialize COM.
See Also
| Previous | Next |