# サウンド(SND, SNDEX) API機能一覧

##

### 初期化

SND_Init |  | サウンドを初期化します。

### ARM7コマンド処理

SND_FlushCommand |  | 予約済みコマンドを発行します。
SND_RecvCommandReply |  | コマンド処理応答を受信します。
SND_WaitForCommandProc |  | コマンド処理が完了するまで待ちます。
SND_WaitForFreeCommand |  | 空きコマンドができるまで待ちます。
SND_GetCurrentCommandTag |  | 現在のコマンドタグを取得します。
SND_IsFinishedCommandTag |  | コマンド処理が完了したかを調べます。
SND_CountFreeCommand |  | 空きコマンド数を取得します。
SND_CountReservedCommand |  | 予約済みコマンド数を取得します。
SND_CountWaitingCommand |  | 処理完了待ちコマンド数を取得します。

### シーケンスコマンド

SND_StartSeq |  | シーケンスを再生します。
SND_PrepareSeq |  | シーケンスの再生準備を行います。
SND_StartPreparedSeq |  | 再生準備を行ったシーケンスを再生します。
SND_StopSeq |  | シーケンスを停止します。
SND_PauseSeq |  | シーケンスを一時停止または再開します。
SND_SetPlayerVolume |  | プレイヤーのボリュームを変更します。
SND_SetPlayerTempoRatio |  | プレイヤーのテンポを変更します。
SND_SetPlayerChannelPriority |  | プレイヤーの発音プライオリティを変更します。
SND_SetPlayerLocalVariable |  | プレイヤーローカル変数をセットします。
SND_SetPlayerGlobalVariable |  | プレイヤーグローバル変数をセットします。
SND_SetTrackMute* |  | トラックをミュートします。
SND_SetTrackVolume |  | トラックのボリュームを変更します。
SND_SetTrackPitch |  | トラックのピッチ（音程）を変更します。
SND_SetTrackPan |  | トラックのパン（定位）を変更します。
SND_SetTrackPanRange |  | トラックのパンレンジを変更します。
SND_SetTrackModDepth |  | トラックのモジュレーションデプスを変更します。
SND_SetTrackModSpeed |  | トラックのモジュレーションスピードを変更します。
SND_SetTrackAllocatableChannel |  | トラックの確保可能なチャンネルを変更します。

### チャンネルコマンド

SND_LockChannel |  | チャンネルを直接操作できるようにロックをかけます。
SND_UnlockChannel |  | チャンネルのロックを解除します。
SND_StopUnlockedChannel |  | ロックしていないチャンネルを停止します。
SND_SetupChannelPcm |  | PCM再生用にチャンネルをセットアップします。
SND_SetupChannelPsg |  | PSG矩形波再生用にチャンネルをセットアップします。
SND_SetupChannelNoise |  | ホワイトノイズ再生用にチャンネルをセットアップします。
SND_SetChannelVolume |  | チャンネルボリュームを変更します。
SND_SetChannelTimer |  | チャンネルタイマーを変更します。
SND_SetChannelPan |  | チャンネルパンを変更します。

### キャプチャコマンド

SND_SetupCapture |  | キャプチャをセットアップします。

### アラームコマンド

SND_SetupAlarm |  | サウンドアラームをセットアップします。

### タイマーコマンド

SND_StartTimer |  | タイマーをスタートします。
SND_StopTimer |  | タイマーをストップします。

### グローバル設定コマンド

SND_SetMasterVolume |  | マスターボリュームを変更します。
SND_SetMasterPan |  | マスターパンを設定します。
SND_ResetMasterPan |  | マスターパンを無効にします。
SND_SetOutputSelector |  | 出力セレクタを変更します。

### データ無効化コマンド

SND_InvalidateSeqData |  | シーケンスデータを無効化します。
SND_InvalidateBankData |  | バンクデータを無効化します。
SND_InvalidateWaveData |  | 波形データを無効化します。

### ドライバ情報コマンド

SND_ReadDriverInfo |  | サウンドドライバ情報を取得します。

### バンク

SND_AssignWaveArc |  | バンクに波形アーカイブを割り付けます。
SND_DestroyBank |  | バンクを破棄します。
SND_DestroyWaveArc |  | 波形アーカイブを破棄します。
SND_ReadInstData |  | バンクからインストデータを読みとります。
SND_WriteInstData |  | バンクのインストデータを更新します。
SND_GetFirstInstDataPos |  | インストデータ走査のための位置情報を取得します。
SND_GetNextInstData |  | インストデータを順番に取得します。
SND_GetWaveDataCount |  | 波形アーカイブ中の波形データの個数を取得します。
SND_GetWaveDataAddress |  | 波形アーカイブ中の波形データのアドレスを取得します。
SND_SetWaveDataAddress |  | 波形アーカイブ中の波形データのアドレスを更新します。
SNDInstData |  | インストデータ構造体です。
SNDWaveData |  | 波形データ構造体です。

### 情報取得

SND_GetPlayerStatus |  | プレイヤーがアクティブかどうかを取得します。
SND_GetChannelStatus |  | チャンネルがアクティブかどうかを取得します。
SND_GetCaptureStatus |  | サウンドキャプチャがアクティブかどうかを取得します。
SND_GetPlayerLocalVariable |  | シーケンスローカル変数を取得します。
SND_GetPlayerGlobalVariable |  | シーケンスグローバル変数を取得します。
SND_GetPlayerTickCounter |  | シーケンスティックカウンタを取得します。
SND_ReadChannelInfo |  | チャンネル情報を取得します。
SND_ReadPlayerInfo |  | プレイヤー情報を取得します。
SND_ReadTrackInfo |  | トラック情報を取得します。
SNDChannelInfo |  | チャンネル情報構造体です。
SNDPlayerInfo |  | プレイヤー情報構造体です。
SNDTrackInfo |  | トラック情報構造体です。

### ユーティリティ

SND_CalcDecibel |  | デシベル値を計算します。
SND_CalcDecibelSquare |  | ２乗スケールに対するデシベル値を計算します。
SND_CalcTimer |  | ピッチ変換後のタイマー値を計算します。
SND_CalcChannelVolume |  | チャンネルボリューム値を計算します。

### 拡張機能（SNDEX）

SNDEX_Init |  | サウンド拡張機能を初期化します。
SNDEX_IsConnectedHeadphoneAsync |  | ヘッドホンの接続状態を非同期的に取得します。
SNDEX_IsConnectedHeadphone |  | ヘッドホンの接続状態を同期的に取得します。
SNDEX_GetMuteAsync |  | 消音状態を非同期的に取得します。
SNDEX_GetMute |  | 消音状態を同期的に取得します。
SNDEX_GetI2SFrequencyAsync |  | I2S周波数を非同期的に取得します。
SNDEX_GetI2SFrequency |  | I2S周波数を同期的に取得します。
SNDEX_GetDSPMixRateAsync |  | 音声出力のDSP合成比を非同期的に取得します。
SNDEX_GetDSPMixRate |  | 音声出力のDSP合成比を同期的に取得します。
SNDEX_GetVolumeAsync |  | スピーカー音量を非同期的に取得します。
SNDEX_GetVolume |  | スピーカー音量を同期的に取得します。
SNDEX_GetCurrentVolumeAsync |  | 本関数実行時の本体のスピーカー音量を非同期的に取得します。
SNDEX_GetCurrentVolume |  | 本関数実行時の本体のスピーカー音量を同期的に取得します。
SNDEX_SetMuteAsync |  | 消音設定を非同期的に変更します。
SNDEX_SetMute |  | 消音設定を同期的に変更します。
SNDEX_SetI2SFrequencyAsync |  | I2S周波数を非同期的に変更します。
SNDEX_SetI2SFrequency |  | I2S周波数を同期的に変更します。
SNDEX_SetIirFilter |  | IIR フィルタを同期的に設定します。
SNDEX_SetIirFilterAsync |  | IIR フィルタを非同期的に設定します。
SNDEX_SetDSPMixRateAsync |  | 音声出力のDSP合成比を非同期的に変更します。
SNDEX_SetDSPMixRate |  | 音声出力のDSP合成比を同期的に変更します。
SNDEX_SetVolumeAsync |  | スピーカー音量を非同期的に変更します。
SNDEX_SetVolume |  | スピーカー音量を同期的に変更します。
SNDEX_SetIgnoreHWVolume |  | 本関数実行時のスピーカー音量を保存し、指定した音量へ同期的に変更します。
SNDEX_ResetIgnoreHWVolume |  | スピーカー音量を `SNDEX_SetIgnoreHWVolume()` 実行時に保存していた値へ同期的に変更します。
SNDEX_SetVolumeSwitchCallback |  | TWL本体の音量スイッチ押下時に通知を受け取るコールバック関数を設定します。
SNDEXHeadphone |  | ヘッドホンの接続状態を示す列挙型です。
SNDEXIirFilterParam |  | IIR フィルタを設定するためのパラメータをまとめた構造体です。
SNDEXIirFilterTarget |  | IIR フィルタをかける対象を表す列挙型です。
SNDEXMute |  | 消音設定種別を示す列挙型です。
SNDEXFrequency |  | I2S動作周波数を示す列挙型です。
SNDEXCallback |  | サウンド拡張機能に関する非同期関数共通のコールバック関数の型です。