IWMProfile interface (wmsdkidl.h)

The IWMProfile interface is the primary interface for a profile object. A profile object is used to configure custom profiles. You can use IWMProfile to create, delete, or modify stream configuration objects and mutual exclusion objects. You can also set and retrieve general information about the profile. To access all the features of the profile object, you should use IWMProfile3, which inherits from IWMProfile and IWMProfile2.

IWMProfile is also accessible through the reader object, where you can use it to get information about the streams of a file that is loaded in the reader. When accessing IWMProfile from the reader, you can make changes to the profile, but none of the changes can be saved to the file. It is often handy to use the profile of an existing file as the foundation of a new profile. The synchronous reader supports IWMProfile in the same way as the reader.

The profile information obtained through the reader or synchronous reader does not come from a .prx file. The reader uses the information in the ASF file to assemble the stream configurations. Thus certain profile information, like the name and description, are not available through the reader.

There are several ways to obtain a pointer to an IWMProfile interface. The profile manager has methods to create a new profile and to access existing profiles. All of these methods set an IWMProfile pointer. When reading a file, a pointer to IWMProfile can be obtained by calling the QueryInterface method of any reader interface. Likewise, any interface of the synchronous reader object can obtain a pointer with a call to QueryInterfaceIWMProfile3.

Inheritance

The IWMProfile interface inherits from the IUnknown interface. IWMProfile also has these types of members:

Methods

The IWMProfile interface has these methods.

 
IWMProfile::AddMutualExclusion

The AddMutualExclusion method adds a mutual exclusion object to the profile. Mutual exclusion objects are used to specify a set of streams, only one of which can be output at a time.
IWMProfile::AddStream

The AddStream method adds a stream to the profile by copying the stream configuration details into the profile.
IWMProfile::CreateNewMutualExclusion

The CreateNewMutualExclusion method creates a mutual exclusion object. Mutual exclusion objects are used to specify a set of streams, only one of which can be output at a time.
IWMProfile::CreateNewStream

The CreateNewStream method creates a stream configuration object. You can use a stream configuration object to define the characteristics of a media stream.
IWMProfile::GetDescription

The GetDescription method retrieves the profile description. The description is a string that contains an explanation of what the profile should be used for.
IWMProfile::GetMutualExclusion

The GetMutualExclusion method retrieves a mutual exclusion object from the profile.
IWMProfile::GetMutualExclusionCount

The GetMutualExclusionCount method retrieves the number of mutual exclusion objects in the profile.
IWMProfile::GetName

The GetName method retrieves the name of a profile.
IWMProfile::GetStream

The GetStream method retrieves a stream from the profile.
IWMProfile::GetStreamByNumber

The GetStreamByNumber method retrieves a stream from the profile.
IWMProfile::GetStreamCount

The GetStreamCount method retrieves the number of streams in a profile.
IWMProfile::GetVersion

The GetVersion method retrieves the version number of the Windows Media Format SDK used to create the profile.
IWMProfile::ReconfigStream

The ReconfigStream method enables changes made to a stream configuration to be included in the profile. Use this method when you have made changes to a stream that has already been included in the profile.
IWMProfile::RemoveMutualExclusion

The RemoveMutualExclusion method removes a mutual exclusion object from the profile.
IWMProfile::RemoveStream

The RemoveStream method removes a stream from the profile.
IWMProfile::RemoveStreamByNumber

The RemoveStreamByNumber method removes a stream from the profile.
IWMProfile::SetDescription

The SetDescription method specifies the description of a profile. The description is a string that contains an explanation of what the profile should be used for.
IWMProfile::SetName

The SetName method specifies the name of a profile.

Requirements

Requirement Value
Target Platform Windows
Header wmsdkidl.h

See also

IWMProfileManager Interface

Interfaces

Profile Manager Object

Reader Object

Synchronous Reader Object

Working with Profiles