bool MIX_SetTrackOutputChannelMap(MIX_Track *track, const int *chmap, int count);
| MIX_Group * | mixer | 変更するミキサー |
| const int * | chmap | 新しいチャネルマップ. NULLのときデフォルトに戻す |
| int | count | チャネルの数 |
チャネルマップは任意で, ほとんどの場合は必要なく, SDLが求める順序でデータを渡せばよい.
出力チャネルマップはトラックのデータを, 変換の後, ミキサーグループのミックスの前に入れ替える. これはステレオチャネルを逆にしたい場合などに有用になりうる.
配列の各項目は出力チャネルを表していて, チャネルはその値に再マップされる.
ステレオの左右を入れ替えるには, 配列を { 1, 0 } のようにする.
複数のチャネルを同一のチャネルに再マップすることも可能で, その場合は { 1, 1 } のようにすると, ステレオの両チャネルが右チャネルにマップされる.
チャネルマップに有効なチャネルではなく-1を設定すると, そのチャネルはミュートされ無音になる.
チャネルマップでチャネルの数を変更することはできない. 録音またはミュートを設定するのみである.
オーディオストリームはデフォルトでは再マップが適用されていない. チャネルマップにNULLを渡すことができ, 再マップを無効にすることができる.
SDL_mixerはチャネルマップをコピーする. 呼び出し側は, この関数の呼び出し後に配列を保存する必要はない.
この関数はどのスレッドからも安全に呼べる.