IWMSBroadcastPublishingPoint Interface
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 |