mixCreateGroup function mixer

Pointer<MixGroup> mixCreateGroup(
  1. Pointer<MixMixer> mixer
)

Create a mixing group.

Tracks are assigned to a mixing group (or if unassigned, they live in a mixer's internal default group). All tracks in a group are mixed together and the app can access this mixed data before it is mixed with all other groups to produce the final output.

This can be a useful feature, but is completely optional; apps can ignore mixing groups entirely and still have a full experience with SDL_mixer.

After creating a group, assign tracks to it with MIX_SetTrackGroup(). Use MIX_SetGroupPostMixCallback() to access the group's mixed data.

A mixing group can be destroyed with MIX_DestroyGroup() when no longer needed. Destroying the mixer will also destroy all its still-existing mixing groups.

\param mixer the mixer on which to create a mixing group. \returns a newly-created mixing group, or NULL on error; call SDL_GetError() for more information.

\threadsafety It is safe to call this function from any thread.

\since This function is available since SDL_mixer 3.0.0.

\sa MIX_DestroyGroup \sa MIX_SetTrackGroup \sa MIX_SetGroupPostMixCallback

extern SDL_DECLSPEC MIX_Group * SDLCALL MIX_CreateGroup(MIX_Mixer *mixer)

Implementation

Pointer<MixGroup> mixCreateGroup(Pointer<MixMixer> mixer) {
  final mixCreateGroupLookupFunction = _libMixer
      .lookupFunction<
        Pointer<MixGroup> Function(Pointer<MixMixer> mixer),
        Pointer<MixGroup> Function(Pointer<MixMixer> mixer)
      >('MIX_CreateGroup');
  return mixCreateGroupLookupFunction(mixer);
}