IWMSBroadcastPublishingPoint::put_BufferSetting
Previous | Next |
IWMSBroadcastPublishingPoint::put_BufferSetting
The put_BufferSetting method specifies a member of the WMS_BUFFER_SETTING enumeration type that indicates the amount of buffering that is done on a broadcast sink.
Syntax
HRESULT put_BufferSetting( WMS_BUFFER_SETTING newVal );
Parameters
newVal
[in] Member of the WMS_BUFFER_SETTING enumeration type that indicates the amount of buffering that is done on a broadcast sink. This must be one of the following values.
Value | Description |
WMS_BUFFER_SETTING_UNSPECIFIED | Reserved for future use. |
WMS_BUFFER_SETTING_MINIMIZE_STARTUP_LATENCY | Instructs the server to buffer data ahead of the client connection so that when the client connects, the server can send data to it more quickly. |
WMS_BUFFER_SETTING_PROPOGATION_LATENCY | Minimizes the amount of data the server buffers before streaming. |
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.
Return code | Number | Description |
E_INVALIDARG | 0x8007000E | newVal is not a valid argument. |
NS_E_PUBLISHING_POINT_REMOVED | 0xC00D145AL | The publishing point has already been removed. |
Remarks
The default value is WMS_BUFFER_SETTING_MINIMIZE_STARTUP_LATENCY.
Example Code
#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; // Retrieve the buffer setting for the publishing point. WMS_BUFFER_SETTING bsSetting; hr = pBCPubPoint->get_BufferSetting(&bsSetting); if (FAILED(hr)) goto EXIT; // Set a buffer setting if it is currently unspecified. if (bsSetting == WMS_BUFFER_SETTING_UNSPECIFIED) { hr = pBCPubPoint->put_BufferSetting( WMS_BUFFER_SETTING_MINIMIZE_STARTUP_LATENCY); if (FAILED(hr)) goto EXIT; } pBCPubPoint->Release(); } // Release temporary COM objects. pPubPoint->Release(); }
Requirements
Header: wmsserver.h.
Library: WMSServerTypeLib.dll.
Platform: Windows Server 2003 family, Windows Server 2008 family.
See Also
Previous | Next |