bool MIX_StopTrack(MIX_Track *track, Sint64 fade_out_frames);
| MIX_Track * | track | 停止させるトラック |
| Sint64 | fade_out_frames | 停止の前の無音になるまでのフェードのサンプルフレーム数. 0のとき即座に停止する |
fade_out_ms > 0 の場合, ミキシングはすぐには停止せず, 停止の前に無音に向かってフェードする.
サンプルフレームはトラックに割り付けられた入力に固有のものであり, サンプル単位で正確にミキシングできる.
トラックのサンプル数はMIX_TrackMSToFrames()でミリ秒に変換できる.
フェードアウト中にトラックが通常通り終了した場合, オーディオはそこで停止する. フェードがオーディオの残りよりも長くても, 短く調整されない.
トラックが完全にフェードアウトして停止すると, 設定されていればMIX_TrackStoppedCallbackが呼ばれる. このコールバックでトラックへの新しい入力の割り当てや, トラックの再開始を行ってもよい.
既に停止したトラックを停止させようとしてもよい. その場合は何も起こらず, 真を戻す.
この関数はどのスレッドからも安全に呼べる.