IWMSPublishingPoint2.AllowStartupProfile (C#)

banner art

Previous Next

IWMSPublishingPoint2.AllowStartupProfile (C#)

The AllowStartupProfile property specifies and retrieves a Boolean value that indicates whether the publishing point allows clients to use Startup Profile.

  • **Note   **This property is available only on Windows Server 2003, Enterprise Edition with Service Pack 1; Windows Server 2003, Datacenter Edition with Service Pack 1; and Windows Server 2008.

Syntax

  PublishingPoint2
  .AllowStartupProfile
  
  =
  
  bool
  ;
  
  bool
  
  =
  
  PublishingPoint2
  .AllowStartupProfile;

Property Value

A bool that indicates whether the publishing point allows the use of Startup Profile.

Remarks

The default value is false.

Startup Profile, also called Advanced Fast Start, is the process by which the server and a client decide the minimum amount of buffering needed to prevent buffer underflow. Data is buffered at a higher rate than the encoded rate of the content by a multiplier value determined by the client. The buffering time is determined by the server. After an adequate amount of data has been buffered, the client begins playing the content.

Advanced Fast Start reduces latency more effectively than Fast Start because only the minimum amount of data is buffered initially.

For more information on Startup Profile and how to encode content to take advantage of it, see "Understanding Advanced Fast Start" in the Windows Media Services 9 Series Help documentation.

Example Code

using Microsoft.WindowsMediaServices.Interop;
using System.Runtime.InteropServices;

// Declare variables.
IWMSServer                    Server = null;
IWMSPublishingPoints          PubPoints = null;
IWMSPublishingPoint           PubPoint = null;
IWMSPublishingPoint2          PubPoint2 = null;

bool                          bVal;

try
{
    // Create a new WMSServer object.
    Server = new WMSServerClass();

    // Retrieve the IWMSPublishingPoints object.
    PubPoints = Server.PublishingPoints;

    // Retrieve each publishing point and retrieve the
    // IWMSPublishingPoint2 object. You can retrieve this
    // object only from a cache/proxy on-demand 
    // or cache/proxy broadcast publishing point.
    for (int i = 0; i < PubPoints.Count; i++)
    {
        PubPoint = PubPoints[i];

        if (PubPoint.Type == 
            WMS_PUBLISHING_POINT_TYPE.WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_BROADCAST || PubPoint.Type == WMS_PUBLISHING_POINT_TYPE.WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_ON_DEMAND)
        {
            PubPoint2 = (IWMSPublishingPoint2)PubPoint;

            // Retrieve a Boolean value indicating whether Startup Profile
            // functionality is allowed when streaming content to clients.
            bVal = PubPoint2.AllowStartupProfile;

            // Set a Boolean value indicating Startup Profile
            // functionality is allowed when streaming content to clients. 
            PubPoint2.AllowStartupProfile = true;
            break;
        }
    }
}
catch (COMException comExc) 
{
    // TODO: Handle COM exceptions.
}
catch (Exception e) 
{
    // TODO: Handle exceptions.
}

Requirements

Reference: Add a reference to Microsoft.WindowsMediaServices.

Namespace: Microsoft.WindowsMediaServices.Interop.

Assembly: Microsoft.WindowsMediaServices.dll.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003, Enterprise Edition with Service Pack 1; Windows Server 2003, Datacenter Edition with Service Pack 1; Windows Server 2008.

See Also

Previous Next