/******************************************************************************
	[AudioOutX.h]
		オーディオインタフェイスを定義します．

		XAudio2を利用版（開発中。v2.17）

******************************************************************************/
#ifndef AUDIO_OUT_H_INCLUDED
#define AUDIO_OUT_H_INCLUDED

#include "TypeDefs.h"

#define AOUTX_BUFFERRATE 4	//Kitao追加。バッファをいくつかに分けて持つ。細かく分けるほどバッファを小さくしても（音の遅延を改善しても）音質を保てる。３と４とで大きな違いを確認。最大63。※逆に大きくしすぎても処理が追いつかなくて駄目。４でBuffer2048が落としどころ？


BOOL
AOUTX_Init(
	Sint32		soundType,	//Kitao追加
	Uint32		bufSize,	// in samples 
	Uint32		sampleRate,
	void		(*pCallBack)(int ch, Sint16* pBuf, Sint32 nSamples)); //Kitao更新。ch(チャンネルナンバー)を追加

void
AOUTX_Play(
	BOOL		bPlay);

void
AOUTX_Deinit();

//Kitao追加
void
AOUTX_SetPlayStart();

//Kitao追加
void
AOUTX_SetFpOutputWAV(
	FILE*	fp,
	Sint32	mode);

//Kitao追加
FILE*
AOUTX_GetFpOutputWAV();

//Kitao追加
void
AOUTX_SetOutputWavFileSize(
	DWORD	size);

//Kitao追加
DWORD
AOUTX_GetOutputWavFileSize();

//Kitao追加
Sint32
AOUTX_GetOutputWavWaitFinish();

//Kitao追加
Sint32
AOUTX_GetPlay();


#endif // AUDIO_OUT_H_INCLUDED
