Microsoft DirectX 9.0


The AssignPChannelBlock method assigns a block of 16 performance channels to the performance and maps them to a port and a channel group. This method is valid only for performances that do not use audiopaths; that is, performances initialized by using IDirectMusicPerformance8::Init.


HRESULT AssignPChannelBlock(
  DWORD dwBlockNum,
  IDirectMusicPort* pPort,
  DWORD dwGroup



Block number, in which 0 represents channels 0 through 15, 1 represents channels 16 through 31, and so on.


IDirectMusicPort8 interface pointer of the port to which the channels are assigned.


Channel group on the port. Must be 1 or greater.

Return Values

If the method succeeds, the return value is S_OK or S_FALSE (see Remarks).

If it fails, the method can return one of the error values shown in the following table.

Return code


This method must be called when a port has been added to a performance, except when the default port has been added by passing NULL to IDirectMusicPerformance8::AddPort.

The method returns S_FALSE if dwGroup is out of the range of the port. The channels have been assigned, but the port cannot play this group.

The method returns E_INVALIDARG if the port has not been added to the performance through a call to the IDirectMusicPerformance8::AddPort method.


  Header: Declared in dmusici.h.

See Also