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

Mix_PlayChannel

int Mix_PlayChannel(int channel, Mix_Chunk *chunk, int loops)

channel
再生するチャネル. -1のとき予約されていない最初の空きチャネル
chunk
再生するサンプリング音声
loops
ループする回数. -1のとぎ無限. 1を渡すと2度再生される(1ループ)

channelでchunkを再生する, channelが-1ならば最初の予約されていない空きチャネルで再生する. サンプリング音声は, 停止, フェードアウト, 再生中のループ回数より少ない回数の設定, ミキサーを閉じるなどがない限り, loop+1回再生される.

メモ: この関数はMix_PlayChannelTimedをtickを-1として呼んでいる.

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

サンプルコード

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

参照

Mix_PlayChannel, Mix_FadeInChannelTimed, Mix_FadeOutChannel, Mix_ReserveChannels

原文へのリンク

4.3.3 Mix_PlayChannel