#include <iris_sp/snd/snd.h>
#define SND_CAPTURE_LEN_MAX 0xffff
void
SND_SetupCapture
(
SNDCapture capture,
void* buffer_p,
u32 length,
SNDCapFormat format,
BOOL repeat,
SNDCapIn in,
SNDCapOut out| capture | キャプチャ0または1を選択します。 |
| buffer_p | キャプチャバッファのポインタです。4バイトアライメントされていなければなりません。 メインメモリを指していても構いません。 |
| length | キャプチャバッファの長さです。ワード単位です。最大 0xffff の範囲です。0xffffはSND_CAPTURE_LEN_MAXとして定義されています。 |
| format | キャプチャフォーマットを選択します。 |
| repeat | 繰り返しキャプチャするか選択します。 |
| in | キャプチャの入力元を選択します。 |
| out | サウンド1または、サウンド3の出力先を選択します。captureが、キャプチャ0 の時はサウンド1、キャプチャ1のときは サウンド3の設定を行います。 |
なし。
キャプチャの設定を行います。
キャプチャを開始させるには、SND_StartCapture を使います。
キャプチャのサンプリングレートは、サウンド1またはサウンド3のタイマーに依存しますので、 あわせて設定しておく必要があります。
| SNDCapture | 説明 |
|---|---|
| SND_CAPTURE_0 | キャプチャ0 |
| SND_CAPTURE_1 | キャプチャ1 |
| SNDCapFormat | 説明 |
|---|---|
| SND_CAPFORMAT_PCM16 | 16ビット PCM |
| SND_CAPFORMAT_PCM8 | 8ビット PCM |
| SNDCapIn | 説明 |
|---|---|
| SND_CAPIN_MIXER_L | 左ミキサー出力をキャプチャ(キャプチャ0の時のみ) |
| SND_CAPIN_MIXER_R | 右ミキサー出力をキャプチャ(キャプチャ1の時のみ) |
| SND_CAPIN_SOUND0 | サウンド0出力をキャプチャ(キャプチャ0の時のみ) |
| SND_CAPIN_SOUND2 | サウンド2出力をキャプチャ(キャプチャ1の時のみ) |
| SNDCapIn | 説明 |
|---|---|
| SND_CAPOUT_NORMAL | 通常出力に出す |
| SND_CAPOUT_SOUND0_MIX | サウンド0にミキシングする(キャプチャ0の時のみ) |
| SND_CAPOUT_SOUND2_MIX | サウンド2にミキシングする(キャプチャ1の時のみ) |
typedef enum
{
SND_CAPTURE_0,
SND_CAPTURE_1
} SNDCapture;
typedef enum
{
SND_CAPFORMAT_PCM16,
SND_CAPFORMAT_PCM8
}
SNDCapFormat;
typedef enum
{
SND_CAPIN_MIXER,
SND_CAPIN_SOUND,
SND_CAPIN_MIXER_L = SND_CAPIN_MIXER,
SND_CAPIN_MIXER_R = SND_CAPIN_MIXER,
SND_CAPIN_SOUND0 = SND_CAPIN_SOUND,
SND_CAPIN_SOUND2 = SND_CAPIN_SOUND
}
SNDCapIn;
typedef enum
{
SND_CAPOUT_NORMAL,
SND_CAPOUT_SOUND_MIX,
SND_CAPOUT_SOUND0_MIX = SND_CAPOUT_SOUND_MIX,
SND_CAPOUT_SOUND2_MIX = SND_CAPOUT_SOUND_MIX
}
SNDCapOut;
2004/01/19 初版