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 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 IWMSAnnouncementStreamFormatsIWMSAnnouncementStreamFormats 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 IWMSAnnouncementStreamFormatsIWMSAnnouncementStreamFormats Interface that contains a collection of names of media files whose formats are used in a multicast broadcast. |
get_BroadcastDataSinks |
Retrieves an IWMSPluginsIWMSPlugins 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 IWMSPlaylistIWMSPlaylist 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
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
Reference
IWMSPublishingPoints Interface