目次 - 4.関数 - 4.3チャネル - Mix_PlayChannelTimed

Mix_PlayChannelTimed

int Mix_PlayChannelTimed(int channel, Mix_Chunk *chunk, int loops, int ticks)

channel
再生するチャネル. -1のとき予約されていない最初の空きチャネル
chunk
再生するサンプリング音声
loops
ループする回数. -1のとぎ無限. 1を渡すと2度再生される(1ループ)
ticks
再生の最大時間(ミリ秒). loopsやchunkがそれよりも短ければ, この時間より前に停止する. -1は無限を意味する

サンプリング音声やループが十分に長ければ, ticksミリ秒経過するとサンプリング音声は停止する. それ以外はMix_PlayChannelと同じである.

戻り値: サンプリング音声を再生したチャネル. 失敗のとき-1

サンプルコード

// 予約されていない最初のチャネルでサンプリング音声を0.5秒間再生する
// Mix_Chunk *sample; // 読み込み済みとする
if(Mix_PlayChannelTimed(-1, sample, -1 , 500)==-1) {
    printf("Mix_PlayChannelTimed: %s\n",Mix_GetError());
    // 致命的なエラーか, 空きチャネルがない
    // その場合は新たに別のチャネルを確保することもできる...
}

参照

Mix_PlayChannel, Mix_FadeInChannelTimed, Mix_FadeOutChannel, Mix_ReserveChannels

原文へのリンク

4.3.4 Mix_PlayChannelTimed