XAPO_REGISTRATION_PROPERTIES structure (xapo.h)

Describes general characteristics of an XAPO. Used with IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase, and CXAPOBase::CXAPOBase.

Syntax

typedef struct XAPO_REGISTRATION_PROPERTIES {
  CLSID  clsid;
  WCHAR  FriendlyName[XAPO_REGISTRATION_STRING_LENGTH];
  WCHAR  CopyrightInfo[XAPO_REGISTRATION_STRING_LENGTH];
  UINT32 MajorVersion;
  UINT32 MinorVersion;
  UINT32 Flags;
  UINT32 MinInputBufferCount;
  UINT32 MaxInputBufferCount;
  UINT32 MinOutputBufferCount;
  UINT32 MaxOutputBufferCount;
} XAPO_REGISTRATION_PROPERTIES;

Members

clsid

COM class ID for use with the CoCreateInstance function.

FriendlyName[XAPO_REGISTRATION_STRING_LENGTH]

Friendly name, a unicode string.

CopyrightInfo[XAPO_REGISTRATION_STRING_LENGTH]

Copyright information, a unicode string.

MajorVersion

Major version number.

MinorVersion

Minor version number.

Flags

XAPO property flags that describe the general characteristics of process behavior. These flags are described in the following table.

Flag Description
XAPO_FLAG_INPLACE_SUPPORTED XAPO supports in-place processing: the input stream buffer and output stream buffer can be the same buffer depending on the input.

For example, consider an effect which may be ran in stereo to 5.1 mode or mono to mono mode. When set to stereo to 5.1, it will be run with separate input and output buffers as format conversion is not permitted in-place. However, if configured to run mono to mono, the same XAPO can be run in-place. Thus the same implementation may be conveniently reused for various input/output configurations, while taking advantage of in-place processing when possible.

XAPO_FLAG_INPLACE_REQUIRED XAPO requires in-place processing: the input stream buffer and output stream buffer must be the same buffer. When the XAPO_FLAG_INPLACE_REQUIRED is used the XAPO cannot perform format conversions.
XAPO_FLAG_CHANNELS_MUST_MATCH Channel count of the input and output streams must match.
XAPO_FLAG_FRAMERATE_MUST_MATCH Framerate of input and output streams must match.
XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH Bit depth and container size of input and output streams must match.
XAPO_FLAG_BUFFERCOUNT_MUST_MATCH Number of input and output buffers must match, applies to XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS. When the XAPO_FLAG_BUFFERCOUNT_MUST_MATCH flag is set XAPO_REGISTRATION_PROPERTIES.MinInputBufferCount must equal XAPO_REGISTRATION_PROPERTIES.MinOutputBufferCount and XAPO_REGISTRATION_PROPERTIES.MaxInputBufferCount must equal XAPO_REGISTRATION_PROPERTIES.MaxOutputBufferCount.
XAPOBASE_DEFAULT_FLAG XAPO_FLAG_CHANNELS_MUST_MATCH | XAPO_FLAG_FRAMERATE_MUST_MATCH | XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH | XAPO_FLAG_BUFFERCOUNT_MUST_MATCH | XAPO_FLAG_INPLACE_SUPPORTED

MinInputBufferCount

Minimum number of input streams required for processing.

MaxInputBufferCount

Maximum number of input streams required for processing.

Note  MaxInputBufferCount is currently limited to a value of 1.
 

MinOutputBufferCount

Minimum number of output streams required for processing.

MaxOutputBufferCount

Maximum number of output streams required for processing.

Note  MaxOutputBufferCount is currently limited to a value of 1.
 

Remarks

Platform Requirements

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)

Requirements

Requirement Value
Header xapo.h

See also

Structures