CRI ADX
Last Updated: 2024-09-25 17:41 p
|
データ構造 | |
struct | CriAtomStandardPlayerConfigTag |
struct | CriAtomAdxPlayerConfigTag |
struct | CriAtomHcaPlayerConfigTag |
struct | CriAtomHcaMxPlayerConfigTag |
struct | CriAtomWavePlayerConfigTag |
struct | CriAtomAiffPlayerConfigTag |
struct | CriAtomRawPcmPlayerConfigTag |
struct | CriAtomInstrumentPlayerConfigTag |
struct | CriAtomStreamingCacheConfigTag |
ストリーミングキャッシュ作成用コンフィグ構造体 [詳解] | |
マクロ定義 | |
#define | CRIATOMPLAYER_NO_LOOP_LIMITATION (-1) |
ループ回数制御用 [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForStandardPlayer(p_config) |
CriAtomStandardPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForAdxPlayer(p_config) |
CriAtomAdxPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForHcaPlayer(p_config) |
CriAtomHcaPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForHcaMxPlayer(p_config) |
CriAtomHcaMxPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForWavePlayer(p_config) |
CriAtomWavePlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForAiffPlayer(p_config) |
CriAtomAiffPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForRawPcmPlayer(p_config) |
CriAtomRawPcmPlayerConfigへのデフォルトパラメーターのセット [詳解] | |
#define | criAtomPlayer_SetDefaultConfigForInstrumentPlayer(p_config) |
CriAtomInstrumentPlayerConfigへデフォルトパラメーターのセット [詳解] | |
列挙型 | |
enum | CriAtomParameterIdTag { CRIATOM_PARAMETER_ID_VOLUME = 0 , CRIATOM_PARAMETER_ID_FREQUENCY_RATIO = 1 , CRIATOM_PARAMETER_ID_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF } |
パラメーターID [詳解] | |
enum | CriAtomPlayerStatusTag { CRIATOMPLAYER_STATUS_STOP = 0 , CRIATOMPLAYER_STATUS_PREP = 1 , CRIATOMPLAYER_STATUS_PLAYING = 2 , CRIATOMPLAYER_STATUS_PLAYEND = 3 , CRIATOMPLAYER_STATUS_ERROR = 4 , CRIATOMPLAYER_STATUS_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF } |
再生ステータス [詳解] | |
#define CRIATOMPLAYER_NO_LOOP_LIMITATION (-1) |
ループ回数制御用
#define criAtomPlayer_SetDefaultConfigForStandardPlayer | ( | p_config | ) |
CriAtomStandardPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | 標準プレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForAdxPlayer | ( | p_config | ) |
CriAtomAdxPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | ADXプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForHcaPlayer | ( | p_config | ) |
CriAtomHcaPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | HCAプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForHcaMxPlayer | ( | p_config | ) |
CriAtomHcaMxPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | HCA-MXプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForWavePlayer | ( | p_config | ) |
CriAtomWavePlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | WAVEプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForAiffPlayer | ( | p_config | ) |
CriAtomAiffPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | AIFFプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForRawPcmPlayer | ( | p_config | ) |
CriAtomRawPcmPlayerConfigへのデフォルトパラメーターのセット
[out] | p_config | RawPCMプレーヤー作成用コンフィグ構造体へのポインタ |
#define criAtomPlayer_SetDefaultConfigForInstrumentPlayer | ( | p_config | ) |
CriAtomInstrumentPlayerConfigへデフォルトパラメーターのセット
[out] | p_config | インストゥルメントプレーヤー作成用コンフィグ構造体へのポインタ |
typedef enum CriAtomParameterIdTag CriAtomParameterId |
パラメーターID
typedef struct CriAtomStandardPlayerConfigTag CriAtomStandardPlayerConfig |
標準プレーヤー作成用コンフィグ構造体
typedef struct CriAtomAdxPlayerConfigTag CriAtomAdxPlayerConfig |
ADXプレーヤー作成用コンフィグ構造体
typedef struct CriAtomHcaPlayerConfigTag CriAtomHcaPlayerConfig |
HCAプレーヤー作成用コンフィグ構造体
typedef struct CriAtomHcaMxPlayerConfigTag CriAtomHcaMxPlayerConfig |
HCA-MXプレーヤー作成用コンフィグ構造体
typedef struct CriAtomWavePlayerConfigTag CriAtomWavePlayerConfig |
WAVEプレーヤー作成用コンフィグ構造体
typedef struct CriAtomAiffPlayerConfigTag CriAtomAiffPlayerConfig |
AIFFプレーヤー作成用コンフィグ構造体
typedef struct CriAtomRawPcmPlayerConfigTag CriAtomRawPcmPlayerConfig |
RawPCMプレーヤー作成用コンフィグ構造体
typedef struct CriAtomInstrumentPlayerConfigTag CriAtomInstrumentPlayerConfig |
インストゥルメントプレーヤー作成用コンフィグ構造体
typedef enum CriAtomPlayerStatusTag CriAtomPlayerStatus |
再生ステータス
Atomプレーヤー作成直後の状態は、停止状態( CRIATOMPLAYER_STATUS_STOP )です。
criAtomPlayer_SetData 関数等でデータをセットし、 criAtomPlayer_Start 関数を 実行すると、再生準備状態( CRIATOMPLAYER_STATUS_PREP )に遷移し、再生準備を始めます。
データが充分供給され、再生準備が整うと、ステータスは再生中( CRIATOMPLAYER_STATUS_PLAYING ) に変わり、音声の出力が開始されます。
セットされたデータを全て再生し終えた時点で、ステータスは再生完了 ( CRIATOMPLAYER_STATUS_PLAYEND )に変わります。
typedef struct CriAtomPlayerTag* CriAtomPlayerHn |
Atomプレーヤーハンドル
typedef void( * CriAtomPlayerDataRequestCbFunc) (void *obj, CriAtomPlayerHn player) |
データ要求コールバック関数
[in] | obj | ユーザ指定オブジェクト |
[in] | player | Atomプレーヤーハンドル |
typedef void( * CriAtomPlayerStatusChangeCbFunc) (void *obj, CriAtomPlayerHn player) |
ステータス変更コールバック関数
[in] | obj | ユーザ指定オブジェクト |
[in] | player | Atomプレーヤーハンドル |
typedef void( * CriAtomPlayerParameterChangeCbFunc) (void *obj, CriAtomPlayerHn player, CriAtomParameterId id, CriFloat32 value) |
パラメーター変更コールバック関数
[in] | obj | ユーザ指定オブジェクト |
[in] | player | Atomプレーヤーハンドル |
[in] | id | パラメーターID |
[in] | value | パラメーター値 |
typedef void( * CriAtomPlayerFilterCbFunc) (void *obj, CriAtomPcmFormat format, CriSint32 num_channels, CriSint32 num_samples, void *data[]) |
波形フィルターコールバック関数
[in] | obj | ユーザ指定オブジェクト |
[in] | format | PCMの形式 |
[in] | num_channels | チャンネル数 |
[in] | num_samples | サンプル数 |
[in,out] | data | PCMデータのチャンネル配列 |
(デコード時点ではクリッピングが行われていないため、 CRIATOM_PCM_FORMAT_FLOAT32 時は上記範囲をわずかに超えた値が出る可能性があります。)
typedef void( * CriAtomPlayerLoadRequestCbFunc) (void *obj, CriFsBinderHn binder, const CriChar8 *path, CriSint64 offset, CriSint64 length) |
ロード要求コールバック関数
[in] | obj | ユーザ指定オブジェクト |
[in] | binder | ファイルロード先バインダー |
[in] | path | ファイルパス |
[in] | offset | ロード開始位置 |
[in] | length | ロード要求サイズ |
typedef struct CriAtomStreamingCacheConfigTag CriAtomStreamingCacheConfig |
ストリーミングキャッシュ作成用コンフィグ構造体
再生ステータス
Atomプレーヤー作成直後の状態は、停止状態( CRIATOMPLAYER_STATUS_STOP )です。
criAtomPlayer_SetData 関数等でデータをセットし、 criAtomPlayer_Start 関数を 実行すると、再生準備状態( CRIATOMPLAYER_STATUS_PREP )に遷移し、再生準備を始めます。
データが充分供給され、再生準備が整うと、ステータスは再生中( CRIATOMPLAYER_STATUS_PLAYING ) に変わり、音声の出力が開始されます。
セットされたデータを全て再生し終えた時点で、ステータスは再生完了 ( CRIATOMPLAYER_STATUS_PLAYEND )に変わります。
列挙値 | |
---|---|
CRIATOMPLAYER_STATUS_STOP | 停止中 |
CRIATOMPLAYER_STATUS_PREP | 再生準備中 |
CRIATOMPLAYER_STATUS_PLAYING | 再生中 |
CRIATOMPLAYER_STATUS_PLAYEND | 再生完了 |
CRIATOMPLAYER_STATUS_ERROR | エラーが発生 |
CriSint32 criAtomPlayer_CalculateWorkSizeForStandardPlayer | ( | const CriAtomStandardPlayerConfig * | config | ) |
標準プレーヤー作成用ワーク領域サイズの計算
[in] | config | 標準プレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateStandardPlayer | ( | const CriAtomStandardPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
標準プレーヤーの作成
[in] | config | 標準プレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
具体的なコードは以下のとおりです。
※ライブラリ初期化時にメモリ確保/解放関数を登録済みの場合、標準プレーヤー作成時 に再度関数を登録する必要はありません。
【Fixed Memory方式による標準プレーヤーの作成】
Fixed Memory方式を用いる場合、標準プレーヤーの作成/破棄の手順は以下のようになります。
具体的なコードは以下のとおりです。
criAtomPlayer_CreateStandardPlayer 関数を実行すると、Atomプレーヤーが作成され、 プレーヤーを制御するためのハンドル( CriAtomPlayerHn )が返されます。
データのセット、再生の開始、ステータスの取得等、Atomプレーヤーに対して 行う操作は、全てハンドルに対して行います。
作成されたAtomプレーヤーハンドルを使用して音声データを再生する手順は以下のとおりです。
CriSint32 criAtomPlayer_CalculateWorkSizeForAdxPlayer | ( | const CriAtomAdxPlayerConfig * | config | ) |
ADXプレーヤー作成用ワーク領域サイズの計算
[in] | config | ADXプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateAdxPlayer | ( | const CriAtomAdxPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
ADXプレーヤーの作成
[in] | config | ADXプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
具体的なコードは以下のとおりです。
※ライブラリ初期化時にメモリ確保/解放関数を登録済みの場合、ADXプレーヤー作成時 に再度関数を登録する必要はありません。
【Fixed Memory方式によるADXプレーヤーの作成】
Fixed Memory方式を用いる場合、ADXプレーヤーの作成/破棄の手順は以下のようになります。
具体的なコードは以下のとおりです。
criAtomPlayer_CreateAdxPlayer 関数を実行すると、Atomプレーヤーが作成され、 プレーヤーを制御するためのハンドル( CriAtomPlayerHn )が返されます。
データやデコーダーのセット、再生の開始、ステータスの取得等、Atomプレーヤーに対して 行う操作は、全てハンドルに対して行います。
作成されたAtomプレーヤーハンドルを使用して音声データを再生する手順は以下のとおりです。
CriSint32 criAtomPlayer_CalculateWorkSizeForHcaPlayer | ( | const CriAtomHcaPlayerConfig * | config | ) |
HCAプレーヤー作成用ワーク領域サイズの計算
[in] | config | HCAプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateHcaPlayer | ( | const CriAtomHcaPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
HCAプレーヤーの作成
[in] | config | HCAプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
CriSint32 criAtomPlayer_CalculateWorkSizeForHcaMxPlayer | ( | const CriAtomHcaMxPlayerConfig * | config | ) |
HCA-MXプレーヤー作成用ワーク領域サイズの計算
[in] | config | HCA-MXプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateHcaMxPlayer | ( | const CriAtomHcaMxPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
HCA-MXプレーヤーの作成
[in] | config | HCA-MXプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
CriSint32 criAtomPlayer_CalculateWorkSizeForWavePlayer | ( | const CriAtomWavePlayerConfig * | config | ) |
WAVEプレーヤー作成用ワーク領域サイズの計算
[in] | config | WAVEプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateWavePlayer | ( | const CriAtomWavePlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
WAVEプレーヤーの作成
[in] | config | WAVEプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
CriSint32 criAtomPlayer_CalculateWorkSizeForAiffPlayer | ( | const CriAtomAiffPlayerConfig * | config | ) |
AIFFプレーヤー作成用ワーク領域サイズの計算
[in] | config | AIFFプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateAiffPlayer | ( | const CriAtomAiffPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
AIFFプレーヤーの作成
[in] | config | AIFFプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
CriSint32 criAtomPlayer_CalculateWorkSizeForRawPcmPlayer | ( | const CriAtomRawPcmPlayerConfig * | config | ) |
RawPCMプレーヤー作成用ワーク領域サイズの計算
[in] | config | RawPCMプレーヤー作成用コンフィグ構造体 |
0以上 | 正常に処理が完了 |
-1 | エラーが発生 |
CriAtomPlayerHn criAtomPlayer_CreateRawPcmPlayer | ( | const CriAtomRawPcmPlayerConfig * | config, |
void * | work, | ||
CriSint32 | work_size | ||
) |
RawPCMプレーヤーの作成
[in] | config | RawPCMプレーヤー作成用コンフィグ構造体 |
[in] | work | ワーク領域 |
[in] | work_size | ワーク領域サイズ |
void criAtomPlayer_Destroy | ( | CriAtomPlayerHn | player | ) |
Atomプレーヤーの破棄
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_SetData | ( | CriAtomPlayerHn | player, |
void * | buffer, | ||
CriSint32 | buffer_size | ||
) |
音声データのセット(オンメモリデータの指定)
[in] | player | Atomプレーヤーハンドル |
[in] | buffer | バッファーアドレス |
[in] | buffer_size | バッファーサイズ |
void criAtomPlayer_SetFile | ( | CriAtomPlayerHn | player, |
CriFsBinderHn | binder, | ||
const CriChar8 * | path | ||
) |
音声データのセット(ファイルの指定)
[in] | player | Atomプレーヤーハンドル |
[in] | binder | バインダーハンドル |
[in] | path | ファイルパス |
void criAtomPlayer_SetContentId | ( | CriAtomPlayerHn | player, |
CriFsBinderHn | binder, | ||
CriSint32 | id | ||
) |
音声データのセット(CPKコンテンツIDの指定)
[in] | player | Atomプレーヤーハンドル |
[in] | binder | バインダーハンドル |
[in] | id | コンテンツID |
void criAtomPlayer_SetWaveId | ( | CriAtomPlayerHn | player, |
CriAtomAwbHn | awb, | ||
CriSint32 | id | ||
) |
音声データのセット(音声データIDの指定)
[in] | player | Atomプレーヤーハンドル |
[in] | awb | AWBハンドル |
[in] | id | 波形データID |
void criAtomPlayer_SetPreviousDataAgain | ( | CriAtomPlayerHn | player | ) |
同一音声データの再セット
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_DeferCallback | ( | CriAtomPlayerHn | player | ) |
コールバック関数の再実行要求
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_Start | ( | CriAtomPlayerHn | player | ) |
再生の開始
[in] | player | Atomプレーヤーハンドル |
Atomプレーヤーを作成した時点では、Atomプレーヤーのステータスは停止状態 ( CRIATOMPLAYER_STATUS_STOP )です。
再生する音声データをセット後、本関数を実行することで、Atomプレーヤーのステータスが 準備状態( CRIATOMPLAYER_STATUS_PREP )に変更されます。
(CRIATOMPLAYER_STATUS_PREP は、データ供給やデコードの開始を待っている状態です。)
再生の開始に充分なデータが供給された時点で、Atomプレーヤーはステータスを 再生状態( CRIATOMPLAYER_STATUS_PLAYING )に変更し、音声の出力を開始します。
セットされたデータを全て再生し終えると、Atomプレーヤーはステータスを再生終了状態 ( CRIATOMPLAYER_STATUS_PLAYEND )に変更します。
尚、再生中にエラーが発生した場合には、Atomプレーヤーはステータスをエラー状態 ( CRIATOMPLAYER_STATUS_ERROR )に変更します。
Atomプレーヤーのステータスをチェックし、ステータスに応じて処理を切り替えることで、 音声の再生状態に連動したプログラムを作成することが可能です。
例えば、音声の再生完了を待って処理を進めたい場合には、以下のようなコードになります。
void criAtomPlayer_Stop | ( | CriAtomPlayerHn | player | ) |
再生の停止
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_Pause | ( | CriAtomPlayerHn | player, |
CriBool | flag | ||
) |
再生のポーズ/ポーズ解除
[in] | player | Atomプレーヤーハンドル |
[in] | flag | 動作フラグ(CRI_TRUE = ポーズ、CRI_FALSE = ポーズ解除) |
【音声出力の一時停止/一時停止解除について】 再生中のAtomプレーヤーに対してポーズを行うと、その時点で音声の出力を中断します。
ポーズされたAtomプレーヤーに対してポーズ解除を行うと、ポーズ時に中断された箇所から 再生が再開されます。
【ストリーミング再生の頭出しについて】 ポーズ処理は再生開始前のAtomプレーヤーに対しても有効です。
再生開始前のAtomプレーヤーに対してポーズをかけた場合、ポーズされたAtomプレーヤーに criAtomPlayer_Start 関数で再生指示しても、音声の出力は行われません。
しかし、再生準備は行われるため、データが充分に供給されていれば、ステータスは CRIATOMPLAYER_STATUS_PLAYING まで遷移します。
ステータスが CRIATOMPLAYER_STATUS_PLAYING の状態でポーズされているAtomプレーヤー については、ポーズ解除を行ったタイミングで発音を開始させることが可能です。
そのため、以下の処理手順を踏むことで、ストリーミング再生の発音タイミングを 他のアクションに同期させることが可能です。
具体的なコードは以下のとおりです。
CriBool criAtomPlayer_IsPaused | ( | CriAtomPlayerHn | player | ) |
ポーズされているかどうかのチェック
[in] | player | Atomプレーヤーハンドル |
CriAtomPlayerStatus criAtomPlayer_GetStatus | ( | CriAtomPlayerHn | player | ) |
ステータスの取得
[in] | player | Atomプレーヤーハンドル |
Atomプレーヤーを作成した時点では、Atomプレーヤーのステータスは停止状態 ( CRIATOMPLAYER_STATUS_STOP )です。
再生する音声データをセット後、::criAtomPlayer_Start 関数を実行することで、 Atomプレーヤーのステータスが準備状態( CRIATOMPLAYER_STATUS_PREP )に変更されます。
( CRIATOMPLAYER_STATUS_PREP は、データ供給やデコードの開始を待っている状態です。)
再生の開始に充分なデータが供給された時点で、Atomプレーヤーはステータスを 再生状態( CRIATOMPLAYER_STATUS_PLAYING )に変更し、音声の出力を開始します。
セットされたデータを全て再生し終えると、Atomプレーヤーはステータスを再生終了状態 ( CRIATOMPLAYER_STATUS_PLAYEND )に変更します。
尚、再生中にエラーが発生した場合には、Atomプレーヤーはステータスをエラー状態 ( CRIATOMPLAYER_STATUS_ERROR )に変更します。
Atomプレーヤーのステータスをチェックし、ステータスに応じて処理を切り替えることで、 音声の再生状態に連動したプログラムを作成することが可能です。
例えば、音声の再生完了を待って処理を進めたい場合には、以下のようなコードになります。
CriSint32 criAtomPlayer_GetNumChannels | ( | CriAtomPlayerHn | player | ) |
チャンネル数の取得
[in] | player | Atomプレーヤーハンドル |
CriBool criAtomPlayer_GetNumPlayedSamples | ( | CriAtomPlayerHn | player, |
CriSint64 * | num_played, | ||
CriSint32 * | sampling_rate | ||
) |
再生済みサンプル数の取得
[in] | player | Atomプレーヤーハンドル |
[out] | num_played | 再生済みサンプル数(サンプル数単位) |
[out] | sampling_rate | サンプリングレート(Hz単位) |
CriBool criAtomPlayer_GetNumRenderedSamples | ( | CriAtomPlayerHn | player, |
CriSint64 * | num_rendered, | ||
CriSint32 * | sampling_rate | ||
) |
サウンドバッファへの書き込みサンプル数の取得
[in] | player | Atomプレーヤハンドル |
[out] | num_rendered | 書き込み済みサンプル数(サンプル数単位) |
[out] | sampling_rate | サンプリングレート(Hz単位) |
CriSint64 criAtomPlayer_GetDecodedDataSize | ( | CriAtomPlayerHn | player | ) |
デコードデータサイズの取得
[in] | player | Atomプレーヤーハンドル |
CriSint64 criAtomPlayer_GetNumDecodedSamples | ( | CriAtomPlayerHn | player | ) |
デコードサンプル数の取得
[in] | player | Atomプレーヤーハンドル |
CriSint64 criAtomPlayer_GetTime | ( | CriAtomPlayerHn | player | ) |
再生時刻の取得
[in] | player | Atomプレーヤーハンドル |
CriBool criAtomPlayer_GetFormatInfo | ( | CriAtomPlayerHn | player, |
CriAtomFormatInfo * | info | ||
) |
再生音声のフォーマット情報の取得
[in] | player | Atomプレーヤーハンドル |
[out] | info | フォーマット情報 |
CriSint32 criAtomPlayer_GetInputBufferRemainSize | ( | CriAtomPlayerHn | player | ) |
入力バッファー内データ残量の取得
[in] | player | Atomプレーヤーハンドル |
CriSint32 criAtomPlayer_GetOutputBufferRemainSamples | ( | CriAtomPlayerHn | player | ) |
出力バッファー内データ残量の取得
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_SetStartTime | ( | CriAtomPlayerHn | player, |
CriSint64 | start_time_ms | ||
) |
再生開始位置の指定
[in] | player | Atomプレーヤーハンドル |
[in] | start_time_ms | 再生開始位置(ミリ秒指定) |
void criAtomPlayer_SetVolume | ( | CriAtomPlayerHn | player, |
CriFloat32 | vol | ||
) |
ボリュームの指定
[in] | player | Atomプレーヤーハンドル |
[in] | vol | ボリューム値 |
例えば、本関数に0.5fを、 criAtomPlayer_SetChannelVolume 関数にも0.5fを設定した場合、 出力音声のボリュームは原音を0.25f倍したボリュームで出力されます。
(0.5f×0.5f=0.25fの演算が行われます。)
本関数に1.0fを超えるボリューム値を設定した場合でも、 音声が元の波形データよりも大きな音量で再生されるかどうかは、 プラットフォームや音声圧縮コーデックの種別によって異なります。
そのため、マルチプラットフォームタイトルでボリュームを調整する場合には、 1.0fを超えるボリューム値を使用しないことをおすすめします。
(1.0fを超えるボリューム値を指定した場合、同じ波形データを再生した場合でも、 機種ごとに異なる音量で出力される可能性があります。)
また、音量を上げることが可能な機種であっても、 ハードウェアで出力可能な音量には上限があるため、 音割れによるノイズが発生する可能性があります。
CriFloat32 criAtomPlayer_GetVolume | ( | CriAtomPlayerHn | player | ) |
ボリュームの指定
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_SetChannelVolume | ( | CriAtomPlayerHn | player, |
CriSint32 | ch, | ||
CriFloat32 | vol | ||
) |
チャンネル単位のボリューム指定
[in] | player | Atomプレーヤーハンドル |
[in] | ch | チャンネル番号 |
[in] | vol | ボリューム値(0.0f〜1.0f) |
void criAtomPlayer_SetSendLevel | ( | CriAtomPlayerHn | player, |
CriSint32 | ch, | ||
CriAtomSpeakerId | spk, | ||
CriFloat32 | level | ||
) |
センドレベルの設定
[in] | player | Atomプレーヤーハンドル |
[in] | ch | チャンネル番号 |
[in] | spk | スピーカーID |
[in] | level | ボリューム値(0.0f〜1.0f) |
void criAtomPlayer_ResetSendLevel | ( | CriAtomPlayerHn | player | ) |
センドレベルのリセット
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_SetPanAdx1Compatible | ( | CriAtomPlayerHn | player, |
CriSint32 | ch, | ||
CriFloat32 | pan | ||
) |
パンの設定
[in] | player | Atomプレーヤーハンドル |
[in] | ch | チャンネル番号 |
[in] | pan | パン設定値(-1.0f〜1.0f) |
void criAtomPlayer_ResetPan | ( | CriAtomPlayerHn | player | ) |
パンのリセット
[in] | player | Atomプレーヤーハンドル |
void criAtomPlayer_SetFrequencyRatio | ( | CriAtomPlayerHn | player, |
CriFloat32 | ratio | ||
) |
周波数調整比の設定
[in] | player | Atomプレーヤーハンドル |
[in] | ratio | 周波数調整比 |
void criAtomPlayer_SetMaxFrequencyRatio | ( | CriAtomPlayerHn | player, |
CriFloat32 | ratio | ||
) |
最大周波数調整比の設定
[in] | player | Atomプレーヤーハンドル |
[in] | ratio | 最大周波数調整比 |
void criAtomPlayer_LimitLoopCount | ( | CriAtomPlayerHn | player, |
CriSint32 | count | ||
) |
ループ回数の制限
[in] | player | Atomプレーヤーハンドル |
[in] | count | ループ制限回数 |
本関数でループ回数を制限できるのは、ADXコーデックとHCAコーデックのみです。
プラットフォーム依存の音声コーデックに対して本関数を実行しないでください。
(再生が終了しない、ノイズが発生する等の問題が発生します。)
void criAtomPlayer_SetHcaMxMixerId | ( | CriAtomPlayerHn | player, |
CriSint32 | mixer_id | ||
) |
HCA-MXデコード先ミキサIDの指定
[in] | player | Atomプレーヤーハンドル |
[in] | mixer_id | ミキサID |
void criAtomPlayer_SetAsrRackId | ( | CriAtomPlayerHn | player, |
CriSint32 | rack_id | ||
) |
ASRラックIDの指定
[in] | player | Atomプレーヤーハンドル |
[in] | rack_id | ラックID |
void criAtomPlayer_SetRawPcmFormat | ( | CriAtomPlayerHn | player, |
CriAtomPcmFormat | pcm_format, | ||
CriSint32 | num_channels, | ||
CriSint32 | sampling_rate | ||
) |
RawPCMフォーマットの指定
[in] | player | Atomプレーヤーハンドル |
[in] | pcm_format | RawPCMのデータフォーマット |
[in] | num_channels | チャンネル数 |
[in] | sampling_rate | サンプリングレート |
void criAtomPlayer_SetDataRequestCallback | ( | CriAtomPlayerHn | player, |
CriAtomPlayerDataRequestCbFunc | func, | ||
void * | obj | ||
) |
データ要求コールバック関数の登録
[in] | player | Atomプレーヤーハンドル |
[in] | func | データ要求コールバック関数 |
[in] | obj | ユーザ指定オブジェクト |
パラメーターが異なる波形を連結しようとした場合、 意図しない速度で音声データが再生されたり、 エラーコールバックが発生する等の問題が発生します。
コールバック関数内でループ付きの波形データをセットした場合でも、 ループ再生は行われません。
(ループポイントが無視され、再生が終了します。)
コールバック関数内でAtomプレーヤーを破棄しないでください。
コールバックを抜けた後も、しばらくの間はサーバー処理内で当該ハンドルのリソース が参照されるため、アクセス違反等の重大な問題が発生する可能性があります。
コールバック関数は1つしか登録できません。
登録操作を複数回行った場合、既に登録済みのコールバック関数が、 後から登録したコールバック関数により上書きされてしまいます。
funcにNULLを指定することで登録済み関数の登録解除が行えます。
void criAtomPlayer_SetStatusChangeCallback | ( | CriAtomPlayerHn | player, |
CriAtomPlayerStatusChangeCbFunc | func, | ||
void * | obj | ||
) |
ステータス変更コールバック関数の登録
[in] | player | Atomプレーヤーハンドル |
[in] | func | ステータス変更コールバック関数 |
[in] | obj | ユーザ指定オブジェクト |
void criAtomPlayer_SetParameterChangeCallback | ( | CriAtomPlayerHn | player, |
CriAtomPlayerParameterChangeCbFunc | func, | ||
void * | obj | ||
) |
パラメーター変更コールバック関数の登録
[in] | player | Atomプレーヤーハンドル |
[in] | func | パラメーター変更コールバック関数 |
[in] | obj | ユーザ指定オブジェクト |
void criAtomPlayer_SetFilterCallback | ( | CriAtomPlayerHn | player, |
CriAtomPlayerFilterCbFunc | func, | ||
void * | obj | ||
) |
波形フィルターコールバック関数の登録
[in] | player | Atomプレーヤーハンドル |
[in] | func | 波形フィルターコールバック関数 |
[in] | obj | ユーザ指定オブジェクト |
void criAtomPlayer_SetLoadRequestCallback | ( | CriAtomPlayerHn | player, |
CriAtomPlayerLoadRequestCbFunc | func, | ||
void * | obj | ||
) |
ロード要求コールバック関数の登録
[in] | player | Atomプレーヤーハンドル |
[in] | func | ロード要求コールバック関数 |
[in] | obj | ユーザ指定オブジェクト |
void criAtomPlayer_SetHcaFormat | ( | CriAtomPlayerHn | player, |
CriSint32 | num_channels, | ||
CriSint32 | sampling_rate, | ||
CriSint32 | bitrate | ||
) |
HCAフォーマットの指定
[in] | player | Atomプレーヤー |
[in] | num_channels | チャンネル数 |
[in] | sampling_rate | サンプリング周波数 |
[in] | bitrate | ビットレート |