IWMSPublishingPointLimits::put_PerPlayerRapidStartBandwidth

The put_PerPlayerRapidStartBandwidth method specifies the rapid starting bandwidth, in Kbps, permitted for a player connection on the publishing point.

HRESULT put_PerPlayerRapidStartBandwidth(
  long  newVal
);

Arguments

newVal

[in] long containing the maximum rapid start bandwidth, in Kbps, permitted per player.

Return Value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.

Return code

Number

Description

E_INVALIDARG

0x80070057

Indicates that newVal is an invalid argument.

Remarks

Limits the bandwidth any single unicast player can use for accelerating the initial buffering of the content. Players requesting content encoded at a bit rate that exceeds this limit will not be able to achieve any benefit of the Rapid Start feature. The default value is 3,500 Kbps.

Example

#include <windows.h>
#include <atlbase.h>    // Includes CComVariant.
#include "wmsserver.h"

// Declare variables and interfaces.
IWMSServer                  *pServer;
IWMSPublishingPoints        *pPubPoints;
IWMSPublishingPoint         *pPubPoint;
IWMSPublishingPointLimits   *pLimits;

HRESULT         hr;
CComVariant     varIndex;
long            lCount;
long            lValue;

// 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 total count of publishing points.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
hr = pPubPoints->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;

// Retrieve information about each publishing point.
for (long x = 0; x < lCount; x++)
{
    varIndex = x;
    hr = pPubPoints->get_Item(varIndex, &pPubPoint);
    if (FAILED(hr)) goto EXIT;

    // Retrieve a pointer to the IWMSPublishingPointLimits
    // interface for the publishing point.
    hr = pPubPoint->get_Limits(&pLimits);
    if (FAILED(hr)) goto EXIT;
  •  // each client connection.
    
    hr = pLimits->put_PerPlayerRapidStartBandwidth(1024);
    if (FAILED(hr)) goto EXIT;

    // Release temporary COM objects.
    pPubPoint->Release();
    pLimits->Release();
}

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

Requirements

Header: wmsserver.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003 family, Windows Server 2008 family.

See Also

Reference

IWMSPublishingPointLimits Interface