AITalk®5 SDK ライブラリリファレンス  6.2.0
resampling_encoder.h
[詳解]
1 // -------------------------------------------------------------------
2 // AITalk(R) SDK AudioEncoder ResamplingEncoder API [http://www.ai-j.jp]
3 // -------------------------------------------------------------------
4 
6 
12 #ifndef AITALK_SDK_SRC_INCLUDE_AITALK_SDK_AUDIO_ENCODER_RESAMPLING_ENCODER_H_
13 #define AITALK_SDK_SRC_INCLUDE_AITALK_SDK_AUDIO_ENCODER_RESAMPLING_ENCODER_H_
14 
21 #include <stddef.h>
22 #include <stdint.h>
23 
25 #include "aitalk-sdk/common.h"
26 
27 AITALK_BEGIN_EXTERN_C
28 
30 
34 
38  const size_t current_rate;
40  const size_t conversion_rate;
44  void *userdata;
46  size_t callback_size;
48  size_t range;
50  size_t depth;
51 };
52 
54 
73 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
74 AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoderConfig_new(AITalk_AudioEncoder_ResamplingEncoderConfig **ptrptr, const size_t current_rate, const size_t conversion_rate, AITalk_AudioEncoder_EncodedCallback callback, void *userdata);
75 
77 
83 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
85 
87 
97 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
99 
101 
107 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
109 
111 
124 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
126 
128 
136 AITALK_SDK_IMPORT_EXPORT_ATTRIBUTE
138 
139 AITALK_END_EXTERN_C
140  // addtogroup AITalk_SDK_AudioEncoder_ResamplingEncoder
142  // addtogroup AITalk_SDK_AudioEncoder
144 
145 #endif // AITALK_SDK_SRC_INCLUDE_AITALK_SDK_AUDIO_ENCODER_RESAMPLING_ENCODER_H_
AITalk_AudioEncoder_ResamplingEncoderConfig
ResamplingEncoder の設定用クラス
Definition: resampling_encoder.h:36
AITalkReturnCode
int32_t AITalkReturnCode
AITalk SDK の返却値種別 (AITalkReturnCodeEnum) の型
Definition: return_code.h:169
AITalk_AudioEncoder_ResamplingEncoder
struct AITalk_AudioEncoder_ResamplingEncoder AITalk_AudioEncoder_ResamplingEncoder
ResamplingEncoder クラス
Definition: resampling_encoder.h:33
AITalk_AudioEncoder_ResamplingEncoder_delete
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoder_delete(AITalk_AudioEncoder_ResamplingEncoder *ptr)
ResamplingEncoder クラスのインスタンスを削除する。
AITalk_AudioEncoder_ResamplingEncoderConfig::conversion_rate
const size_t conversion_rate
目的のサンプリングレート
Definition: resampling_encoder.h:40
AITalk_AudioEncoder_ResamplingEncoderConfig::callback
AITalk_AudioEncoder_EncodedCallback callback
データ取得用のコールバック関数
Definition: resampling_encoder.h:42
AITalk_AudioEncoder_EncodedCallback
AITalkReturnCode(* AITalk_AudioEncoder_EncodedCallback)(void *userdata, AITalk_AudioEncoder_EncoderEventId id, void *body)
音声エンコード処理のコールバック関数の型
Definition: type.h:27
AITalk_AudioEncoder_ResamplingEncoder_new
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoder_new(AITalk_AudioEncoder_ResamplingEncoder **ptrptr, const AITalk_AudioEncoder_ResamplingEncoderConfig *config)
ResamplingEncoder クラスのインスタンスを生成する。
AITalk_AudioEncoder_ResamplingEncoder_endData
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoder_endData(AITalk_AudioEncoder_ResamplingEncoder *ptr)
追加した raw データの終端を通知する。
AITalk_AudioEncoder_ResamplingEncoderConfig::current_rate
const size_t current_rate
元信号のサンプリングレート
Definition: resampling_encoder.h:38
AITalk_AudioEncoder_ResamplingEncoderConfig_new
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoderConfig_new(AITalk_AudioEncoder_ResamplingEncoderConfig **ptrptr, const size_t current_rate, const size_t conversion_rate, AITalk_AudioEncoder_EncodedCallback callback, void *userdata)
ResamplingEncoder 設定用クラスのインスタンスを生成する。(指定できない値は初期値が設定される)
AITalk_AudioEncoder_ResamplingEncoderConfig::userdata
void * userdata
コールバック関数の引数として渡される任意データ
Definition: resampling_encoder.h:44
AITalk_AudioEncoder_ResamplingEncoderConfig_delete
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoderConfig_delete(AITalk_AudioEncoder_ResamplingEncoderConfig *ptr)
ResamplingEncoder 設定用クラスのインスタンスを削除する。
AITalk_AudioEncoder_ResamplingEncoderConfig::range
size_t range
フィルター係数の幅。大きくすると歪みが小さくなりますが、処理が遅く、メモリ使用量が大きくなります。初期値は 512。
Definition: resampling_encoder.h:48
common.h
AITalk SDK ライブラリの「共通定義」
type.h
AITalk SDK 音声エンコードライブラリの共通の型定義
AITalk_AudioEncoder_ResamplingEncoder_addData
AITalkReturnCode AITalk_AudioEncoder_ResamplingEncoder_addData(AITalk_AudioEncoder_ResamplingEncoder *ptr, const char *buf, const size_t size)
リサンプリングしたい raw データを追加する。
AITalk_AudioEncoder_ResamplingEncoderConfig::callback_size
size_t callback_size
コールバックされるサンプル数。初期値は 131072。
Definition: resampling_encoder.h:46
AITalk_AudioEncoder_ResamplingEncoderConfig::depth
size_t depth
サンプルのビット深度 (bits)。初期値は 16。
Definition: resampling_encoder.h:50