/* 44KHzのモノラルデータを1ストリームだけ再生する場合 */
#define WKSIZE ADXT_CALC_WORK(1, ADXT_PLY_STM, 1, 44100)
char *work[WKSIZE]; /* 作業領域 */
ADXT adxt; /* ADXTハンドル */
long stat; /* 動作状態 */
adxt = ADXT_Create(1, work, WKSIZE); /* ADXTハンドルの生成 */
ADXT_StartAfs(adxt, pat_id, 0); /* 再生開始 */
for (;;) {
/* 音が発生している間、アニメーション */
stat = ADXT_GetStat(adxt);
if ( stat == ADXT_STAT_PLAYING && stat == ADXT_STAT_DECEND )
user_animate_obj();
/* 再生が終了したら、次の音声を再生 */
if ( stat == ADXT_STAT_PLAYEND && stat == ADXT_STAT_STOP )
ADXT_StartAfs(adxt, pat_id, 1);
}
※ 再生終了は、状態が PLAYEND または STOP になったときとして判断してください。
GDリードエラーが発生すると状態はSTOPになります。