目次 - SDL_mixer 3.0 - MIX_SetTrackRawCallback

MIX_SetTrackRawCallback

トラックがオーディオのデコードを開始するとき呼ばれるコールバックを設定する

ヘッダ

SDL3_mixer/SDL_mixer.h

構文

bool MIX_SetTrackRawCallback(MIX_Track *track, MIX_TrackMixCallback cb, void *userdata);

引数

MIX_Group *groupコールバックを割り付けるミキシンググループ
MIX_TrackMixCallbackcbトラックがミックスされたとき呼ばれる関数. NULLも可
void *userdata私的な利用のためにコールバックに渡される不透明ポインタ

戻り値

(bool) 成功のとき真, 失敗のとき偽を戻す. SDL_GetError()を呼んで詳細を知ることができる.

詳細

トラックがミックスするための追加のデータが必要になると, 入力(MIX_AudioSDL_AudioStreamなど)からプルする. 入力はMP3のような圧縮ファイルの形式の場合があり, そこから少し多めにデータが展開される.

トラックが処理すべきPCMデータを得ると, 入力された無編集のPCMデータの変更が行われる前にコールバックが呼ばれる. これでアプリケーションはゲイン, 3D位置設定, フェードなどの編集が行われる前のデータを見ることができる. このコールバックでデータを編集することもでき, ミキサーはこのデータが入力から来たかのように処理を続ける.

トラックにはそれぞれ別の変換後コールバックを設定することができる.

コールバックにNULLを渡してもよい. これはグループのコールバックを無効にする.

スレッドセーフ

この関数はどのスレッドからも安全に呼べる.

バージョン

SDL_image 3.0.0以降

関連項目

SDL Wikiへのリンク

SDL3_mixer/MIX_SetTrackRawCallback