void SDL_MixAudio(Uint8* dst, const Uint8* src, Uint32 len, int volume)
dst | ミキシングされた音声の出力先 |
src | ミキシングする音声バッファ |
len | 音声バッファのバイト長 |
volume | 0〜128の範囲, SDL_MIX_MAXVOLUMEのとき最大ボリューム |
void myAudioCallback(void *udata, Uint8 *stream, int len)
{
extern const Uint8 *mixData;
SDL_memset(stream, 0, len); // 無音にする
// 無音に対してあなたの音声データを50%のボリュームでミキシングする
SDL_MixAudio(stream, mixData, len, SDL_MIX_MAXVOLUME / 2);
}
この関数は
SDL_MixAudioFormat(dst, src, format, len, volume);
と同じである.
そして, 古いSDL_OpenAudio()関数を使った場合のみ使える.