ailiaVoiceFFI class
Written for the FFI article
Constructors
- ailiaVoiceFFI(DynamicLibrary dynamicLibrary)
-
The symbols are looked up in
dynamicLibrary
. -
ailiaVoiceFFI.fromLookup(Pointer<
T> lookup(String symbolName)) -
The symbols are looked up with
lookup
.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
ailiaAudioComplexNorm(
Pointer< Void> dst, Pointer<Void> src, int src_n, double power) → int -
~japanese
@brief 複素数のノルムを算出します
@param dst 出力データのポインタ、float 型、要素数 src_n
@param src 入力データのポインタ、float 型、外側から src_n, 2(実部、虚部) 順のメモリレイアウト
@param src_n 入力データの要素数
@param power 累乗値( > 0.0 )、1.0で複素数絶対値に相当
@return
成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
@details
入力データのノルムを算出します
src_cmp = src
0
+ src1
i において tmp_dst = pow(src0
,2.0) + pow(src1
,2.0) dst0
= pow(tmp_dst,0.5*power); -
ailiaAudioConvertPowerToDB(
Pointer< Void> dst, Pointer<Void> src, int src_n, double top_db) → int - ~japanese @brief 非負の入力値をデシベルスケールに変換します。 @param dst 出力データポインタ、float 型、長さ src_n @param src 入力データポインタ、float 型、要素数 src_n @param src_n 計算対象の要素数 @param top_db 出力の最大値から出力下限の閾値までを定める値 (>= 0.0)、負数の場合は処理は閾値を設定しない @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details librosa.power_to_dbと互換性があります。
-
ailiaAudioConvertToMel(
Pointer< Void> dst, Pointer<Void> src, Pointer<Void> fb_mtrx, int freq_n, int frame_n, int mel_n) → int - ~japanese @brief 実数STFT結果をメル尺度に変換する @param dst 出力データのポインタ、float 型、外側から mel_n, frame_n 順のメモリレイアウト @param src 入力データのポインタ、float 型、外側から freq_n, frame_n 順のメモリレイアウト @param fb_mtrx メルフィルタバンク、float 型、外側から mel_n, freq_n 順のメモリレイアウト @param freq_n 周波数のインデックス数 @param frame_n 入力データの時間フレームの数 @param mel_n メル周波数のインデックス数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 入力された実数スペクトログラムをメル尺度に変換します fb_mtrxには ailiaAudioGetFBMatrix() で取得した係数を与える事が出来ます
-
ailiaAudioFFT(
Pointer< Void> dst, Pointer<Void> src, int fft_n) → int - ~japanese @brief FFTを実行します。 @param dst 出力データのポインタ、float 型、外側から fft_n, 2(実部、虚部) 順のメモリレイアウト @param src 入力データのポインタ、float 型、要素数 fft_n @param fft_n FFT点数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details FFT点数が2の累乗の場合、高速アルゴリズムで動作します。 出力データは実部と虚部の交互信号であり、長さは fft_n*2 です。
-
ailiaAudioFilterFilter(
Pointer< Void> dst, Pointer<Void> src, Pointer<Void> n_coef, Pointer<Void> d_coef, int dst_n, int src_n, int n_coef_n, int d_coef_n, int pad_type, int pad_len) → int - ~japanese @brief 信号にゼロ位相フィルタ処理を適用します @param dst 出力データのポインタ、float 型、要素数 dst_n @param src 入力データのポインタ、float 型、要素数 src_n @param n_coef フィルタ分子係数のポインタ、float 型、要素数 n_coef_n @param d_coef フィルタ分母係数のポインタ、float 型、要素数 d_coef_n @param dst_n データ出力先の確保要素数(dst_n >= src_n) @param src_n 入力データの要素数 @param n_coef_n フィルタ分子係数の要素数 @param d_coef_n フィルタ分母係数の要素数 @param pad_type 入力信号に対する両端パディング処理方法、 AILIA_AUDIO_FILTFILT_PAD_* のいずれか @param pad_len 入力信号に対する両端パディング数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details dstへの出力数はmin(dst_m,src_n)となります。 n_coef_nとd_coef_nは大きいほうを基準とし、不足分は0でパディングします。
-
ailiaAudioFixFrameLen(
Pointer< Void> dst, Pointer<Void> src, int freq_n, int dst_frame_n, int src_frame_n, double pad_data) → int - ~japanese @brief 実数スペクトログラム/メルスペクトログラムの時間フレーム数を調整します。 @param dst 出力データのポインタ、freq_n, dst_frame_n 順のメモリレイアウト @param src 入力データのポインタ、freq_n, src_frame_n 順のメモリレイアウト @param freq_n 周波数のインデックス数 @param dst_frame_n 出力データの時間フレームの数 @param src_frame_n 入力データの時間フレームの数 @param pad_data パディング(dst_frame_n > src_frame_n の場合に使用) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details dst_frame_n > src_frame_n : 不足する時間フレームのデータを pad_data のデータで埋める。 dst_frame_n <= src_frame_n : 先頭から dst_frame_n のデータのみを切り出す。
-
ailiaAudioGetFBMatrix(
Pointer< Void> dst, int freq_n, double f_min, double f_max, int mel_n, int sample_rate, int mel_norm, int mel_formula) → int - ~japanese @brief メルフィルタバンクの係数を計算します。 @param dst 出力データのポインタ、float 型、外側から mel_n, freq_n 順のメモリレイアウト @param freq_n 周波数のインデックス数 @param f_min 周波数の最小値 @param f_max 周波数の最大値 @param mel_n メル周波数のインデックス数( < freq_n) @param sample_rate サンプリング周波数 @param mel_norm 出力される係数の正規化の有無、AILIA_AUDIO_MEL_NORMALIZE_* のいずれか @param mel_formula MEL尺度の形式、AILIA_AUDIO_MEL_SCALE_FORMULA_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaAudioGetFrameLen(
Pointer< Int> frame_n, int sample_n, int fft_n, int hop_n, int center) → int - ~japanese @brief STFTで生成される時間フレーム長を取得します。 @param frame_n フレーム長出力先ポインタ @param sample_n STFTを適用するサンプル数 @param fft_n FFT点数 @param hop_n 窓のシフト数 @param center AILIA_AUDIO_STFT_CENTER_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details STFT実行前のバッファサイズの決定に使用します。 \ref AILIA_AUDIO_STFT_CENTER_NONE の場合 hop_n ずつ区切り、sample_n の前後に padding を行いません。 \ref AILIA_AUDIO_STFT_CENTER_ENABLE の場合 sample_n の前後に fft_n/2 の padding(reflect) を行います。 \ref AILIA_AUDIO_STFT_CENTER_SCIPY_DEFAULT の場合、sample_n の前後に fft_n/2 の padding(zero) を行い、hop_nの倍数になるようにpadding(zero)を行います
-
ailiaAudioGetInverseSpectrogram(
Pointer< Void> dst, Pointer<Void> src, int frame_n, int freq_n, int hop_n, int win_n, int win_type, int max_sample_n, int center, int norm_type) → int - ~japanese @brief 複素スペクトログラムから音響信号を生成します。 @param dst 出力データのポインタ、float 型、要素数 sample_n @param src 入力データのポインタ、float 型、外側から freq_n, frame_n, 2(複素数: 実部, 虚部) 順のメモリレイアウト @param frame_n 入力データの時間フレーム数 @param freq_n 周波数(fft_n/2+1) @param hop_n フレームのシフト数 @param win_n 窓関数の長さ @param win_type 窓関数の種類、AILIA_AUDIO_WIN_TYPE_* のいずれか @param max_sample_n 出力データのサンプル数の最大値 @param center 入力データ生成時の前後へのパディングの有無、AILIA_AUDIO_STFT_CENTER_* のいずれか @param norm_type 入力データ生成時の正規化処理、AILIA_AUDIO_FFT_NORMALIZE_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 時間フレームごとにIFFTを行い、最後に正規化処理を実行します。 複素スペクトログラムのみに対応しています。
-
ailiaAudioGetLinerFilterZiCoef(
Pointer< Void> dst_zi, Pointer<Void> n_coef, Pointer<Void> d_coef, int dst_n, int n_coef_n, int d_coef_n) → int - ~japanese @brief フィルタ処理用の初期遅延係数を算出します @param dst_zi 出力する初期遅延状態のポインタ、float 型、要素数 dst_n (dst_n >= max(n_coef_n,d_coef_n)-1) @param n_coef フィルタ分子係数のポインタ、float 型、要素数 n_coef_n @param d_coef フィルタ分母係数のポインタ、float 型、要素数 d_coef_n @param dst_n 出力先の確保要素数 (dst_n >= max(n_coef_n,d_coef_n)-1) @param n_coef_n フィルタ分子係数の要素数 @param d_coef_n フィルタ分母係数の要素数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 一般に、得られた係数に入力信号の先頭を乗じたものを、初期遅延状態として ailiaAudioLinerFilter() に与えます。 dst_nはmax(n_coef_n,d_coef_n)-1が必要となります。 不足の場合は、確保分だけ出力します。 超える部分は、0で埋めます。 n_coef_nとd_coef_nは大きいほうを基準とし、不足分は0でパディングします。
-
ailiaAudioGetMelSpectrogram(
Pointer< Void> dst, Pointer<Void> src, int sample_n, int sample_rate, int fft_n, int hop_n, int win_n, int win_type, int max_frame_n, int center, double power, int fft_norm_type, double f_min, double f_max, int mel_n, int mel_norm_type, int mel_formula) → int - ~japanese @brief 音響信号からメルスペクトログラムを生成します。 @param dst 出力データのポインタ、float 型、外側から mel_n, frame_n 順のメモリレイアウト @param src 入力データのポインタ、float 型、モノラル PCM データ @param sample_n 入力データのサンプル数 @param sample_rate サンプリング周波数 @param fft_n FFT点数 @param hop_n フレームのシフト数 @param win_n 1フレームに含むサンプル数 @param win_type 窓関数の種類、AILIA_AUDIO_WIN_TYPE_* のいずれか @param max_frame_n 出力データの時間フレーム数の最大値 @param center 入力データの前後へのパディングの有無、AILIA_AUDIO_STFT_CENTER_* のいずれか @param power スペクトログラムの乗数( > 0.0)1.0: 振幅スペクトログラム、2.0: パワースペクトログラム、その他: 任意の累乗値の出力に相当 @param fft_norm_type FFT後の正規化処理、AILIA_AUDIO_FFT_NORMALIZE_* のいずれか @param f_min 周波数の最小値 @param f_max 周波数の最大値 @param mel_n メル周波数のインデックス数( < freq_n) @param mel_norm_type MELスペクトログラムの正規化の有無、AILIA_AUDIO_MEL_NORMALIZE_* のいずれか @param mel_formula MEL尺度の形式、AILIA_AUDIO_MEL_SCALE_FORMULA_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 時間フレームごとにFFT(STFT)→正規化処理→累乗(振幅・パワーに変換→メルフィルタバンクの係数取得→メル尺度への変換 の順で処理を実行します。 出力データは実数の信号であり、長さはmel_n*時間フレーム長です。
-
ailiaAudioGetNonSilentPos(
Pointer< Int> dst_start_pos, Pointer<Int> dst_length, Pointer<Void> src, int sample_n, int win_n, int hop_n, double thr_db) → int - ~japanese @brief 信号の入力前後の無音域を除いた領域を検出します @param dst_start_pos 有音域の先頭サンプル位置出力先ポインタ、int 型 @param dst_length 有音域の長さ出力先ポインタ、int 型 @param src 入力データのポインタ、float 型、要素数 sample_n @param sample_n 入力データのサンプル数 @param win_n 1フレームに含むサンプル数 @param hop_n フレームのシフト数 @param thr_db 有音を判断するdB (thr_db > 0) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 全域が無音の場合、*dst_start_pos = -1,*dst_length = 0となります。
-
ailiaAudioGetResampleLen(
Pointer< Int> dst_sample_n, int dst_sample_rate, int src_sample_n, int src_sample_rate) → int - ~japanese @brief リサンプル後のサンプル数を計算します @param dst_sample_n リサンプル後サンプル数出力先ポインタ @param dst_sample_rate 変換後のサンプリングレート @param src_sample_n 入力データのサンプル数 @param src_sample_rate 入力データのサンプリングレート @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaAudioGetSampleLen(
Pointer< Int> sample_n, int frame_n, int freq_n, int hop_n, int center) → int - ~japanese @brief ISTFTで生成されるサンプル数を取得します。 @param sample_n サンプル数出力先ポインタ @param frame_n STFTデータの時間フレーム長 @param fft_n FFT点数 @param hop_n 窓のシフト数 @param center AILIA_AUDIO_STFT_CENTER_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ISTFT実行前のバッファサイズの決定に使用します。 \ref AILIA_AUDIO_STFT_CENTER_NONE の場合 前後の切り捨てを行いません。 \ref AILIA_AUDIO_STFT_CENTER_NONE 以外の場合 前後の切り捨てを行います。
-
ailiaAudioGetSpectrogram(
Pointer< Void> dst, Pointer<Void> src, int sample_n, int fft_n, int hop_n, int win_n, int win_type, int max_frame_n, int center, double power, int norm_type) → int - ~japanese @brief 音響信号からスペクトログラムを生成します。 @param dst 出力データのポインタ、float 型、外側から freq_n, frame_n, 2(複素数: 実部, 虚部) 順のメモリレイアウト @param src 入力データのポインタ、float 型、要素数 sample_n @param sample_n 入力データのサンプル数 @param fft_n FFT点数 @param hop_n フレームのシフト数 @param win_n 窓関数の長さ @param win_type 窓関数の種類、AILIA_AUDIO_WIN_TYPE_* のいずれか @param max_frame_n 出力データの時間フレーム数の最大値 @param center 入力データの前後へのパディングの有無、AILIA_AUDIO_STFT_CENTER_* のいずれか @param power スペクトログラムの乗数(>= 0.0) 0.0: 複素スペクトログラム、1.0: 振幅スペクトログラム、2.0: パワースペクトログラム、その他: 任意の累乗値の出力に相当 @param norm_type FFT後の正規化処理、AILIA_AUDIO_FFT_NORMALIZE_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 時間フレームごとにFFT→正規化処理→累乗(振幅・パワーに変換)の順で処理を実行します。 出力データは実部と虚部の交互信号であり、長さは(fft_n/2+1)時間フレーム長2です。 powerが0.0以外の場合は虚部の値を全て0.0として出力します。
-
ailiaAudioGetWindow(
Pointer< Void> dst, int window_n, int win_type) → int - ~japanese @brief 窓関数の係数を取得します。 @param dst 出力データのポインタ、float 型、要素数 window_n @param window_n 窓の長さ(サンプル数) @param win_type 窓関数の種類、AILIA_AUDIO_WIN_TYPE_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 窓関数はhann窓とhamming窓のみ対応しています。
-
ailiaAudioIFFT(
Pointer< Void> dst, Pointer<Void> src, int fft_n) → int - ~japanese @brief IFFTを実行します。 @param dst 出力データのポインタ、float 型、外側から fft_n, 2(実部、虚部) 順のメモリレイアウト @param src 入力データのポインタ、float 型、外側から fft_n, 2(実部、虚部) 順のメモリレイアウト @param fft_n FFT点数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details FFT点数が2の累乗の場合、高速アルゴリズムで動作します。 出力データは実部と虚部の交互信号であり、長さは fft_n*2 です。
-
ailiaAudioLinerFilter(
Pointer< Void> dst, Pointer<Void> src, Pointer<Void> n_coef, Pointer<Void> d_coef, Pointer<Void> zi, int dst_n, int src_n, int n_coef_n, int d_coef_n, int zi_n) → int - ~japanese @brief 信号にフィルタ処理を適用します @param dst 出力データのポインタ、float 型、要素数 dst_n @param src 入力データのポインタ、float 型、要素数 src_n @param n_coef フィルタ分子係数のポインタ、float 型、要素数 n_coef_n @param d_coef フィルタ分母係数のポインタ、float 型、要素数 d_coef_n @param zi 遅延状態のポインタ、float 型、要素数 zi_n (zi_n = max(n_coef_n,d_coef_n)-1)、nullptrを許容 @param dst_n データ出力先の確保要素数(dst_n >= src_n) @param src_n 入力データの要素数 @param n_coef_n フィルタ分子係数の要素数 @param d_coef_n フィルタ分母係数の要素数 @param zi_n 遅延状態の要素数 (zi_n >= max(n_coef_n,d_coef_n)-1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details dstへの出力数はmin(dst_m,src_n)となります。 ziへは初期遅延状態を渡します。処理後には最終遅延状態に上書きされます。 zi_nはmax(n_coef_n,d_coef_n)-1が必要となります。不足の場合、不足分は0でパディングし、最終遅延状態は返しません。 ziにnullptrを与えた場合は、初期遅延状態を0とします。最終遅延状態も返しません。zi_nは無視されます。 n_coef_nとd_coef_nは大きいほうを基準とし、不足分は0でパディングします。
-
ailiaAudioLog1p(
Pointer< Void> dst, Pointer<Void> src, int src_n) → int - ~japanese @brief 入力値を対数スケールに変換します。 @param dst 出力データポインタ、float 型、長さ src_n @param src 入力データポインタ、float 型、長さ src_n @param src_n 計算対象の要素数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details dst = log_e(1.0 + src) を計算します。
-
ailiaAudioMagPhase(
Pointer< Void> dst_mag, Pointer<Void> dst_phase, Pointer<Void> src, int freq_n, int frame_n, double power, int phase_form) → int - ~japanese @brief スペクトログラムから振幅と位相を計算します。 @param dst_mag 振幅の出力先ポインタ、外側から freq_n, frame_n 順のメモリレイアウト @param dst_phase 位相の出力先ポインタ、外側から freq_n, frame_n, 2(実部、虚部) 順のメモリレイアウト @param src 入力データのポインタ、frame_n, freq_n, 2(実部、虚部) 順のメモリレイアウト @param freq_n 周波数のインデックス数 @param frame_n 時間フレームの数 @param power 振幅スペクトルの乗数 ( > 0.0)、1.0: 振幅スペクトログラム、2.0: パワースペクトログラムに相当 @param phase_form 位相の出力形式、AILIA_AUDIO_PHASE_FORM_* のいずれか @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details librosaのデフォルト値と互換の条件: phase_form = \ref AILIA_AUDIO_PHASE_FORM_COMPLEX , power = 1.0 PyTorchのデフォルト値と互換の条件: phase_form = \ref AILIA_AUDIO_PHASE_FORM_REAL , power = 1.0 phase_formによってdst_phaseの出力が変わります。
-
ailiaAudioResample(
Pointer< Void> dst, Pointer<Void> src, int dst_sample_rate, int dst_n, int src_sample_rate, int src_n) → int - ~japanese @brief 信号をリサンプルします @param dst 出力データのポインタ、float 型、要素数 dst_n @param src 入力データのポインタ、float 型、要素数 src_n @param dst_sample_rate 変換後のサンプリングレート @param dst_n データ出力先の確保要素数(dst_n >= max_resample_n) @param src_sample_rate 入力データのサンプリングレート @param src_n 入力データの要素数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 最大出力数max_resample_nは ailiaAudioGetResampleLen() で取得できます。 dst_n < max_resample_n : 先頭からdst_nに入る部分のみ出力 dst_n >= max_resample_n : 出力要素数はmax_resample_n
-
ailiaAudioStandardize(
Pointer< Void> dst, Pointer<Void> src, int src_n) → int - ~japanese @brief 実数の信号に対して標準化を実行します。 @param dst 出力データのポインタ、float 型、要素数 src_n @param src 入力データのポインタ、float 型、要素数 src_n @param src_n 入力データの要素数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 入力データの平均0、分散1になるよう標準化を行う。 dst = (src - mean(src)) / std(src)
-
ailiaCopyBlobData(
Pointer< AILIANetwork> dst_net, int dst_blob_idx, Pointer<AILIANetwork> src_net, int src_blob_idx) → int - ~japanese @brief 指定したBlob間でデータをコピーします
-
ailiaCreate(
Pointer< Pointer< net, int env_id, int num_thread) → intAILIANetwork> > - ~japanese @brief ネットワークオブジェクトを作成します。 @param net ネットワークオブジェクトポインタへのポインタ @param env_id 計算に利用する推論実行環境のID( ailiaGetEnvironment() で取得) \ref AILIA_ENVIRONMENT_ID_AUTO にした場合は自動で選択する @param num_thread スレッド数の上限( \ref AILIA_MULTITHREAD_AUTO にした場合は自動で設定) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ネットワークオブジェクトを作成します。 推論実行環境を自動にした場合はCPUモードになり、BLASが利用できる場合はBLASを利用します。 なお、BLASを利用する場合num_threadは無視される場合があります。
-
ailiaDestroy(
Pointer< AILIANetwork> net) → void - ~japanese @brief ネットワークオブジェクトを破棄します。 @param net ネットワークオブジェクトポインタ
-
ailiaDisableLayerFusion(
Pointer< AILIANetwork> net) → int - ~japanese @brief 推論時のレイヤー統合を無効化します @param net ネットワークオブジェクトポインタ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details レイヤー統合により取得できなくなるBlobを取得する必要がある場合などに用います。 ailiaCreate() の直後に指定する必要があります。ailiaOpenを呼び出した後は変更することができません。 なお、レイヤー統合を無効化すると推論速度が低下する場合があります。
-
ailiaFinalize(
) → int - ~japanese @brief ailiaがグローバルに確保したGPUリソース等を解放します @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返します。 @details ailiaCreate() で作成したインスタンス全てを ailiaDestroy() で解放した状態で呼び出す必要があります。 それ以外の状態で呼び出された場合 #ref AILIA_STATUS_INVALID_STATE を返します。 Windows 環境の場合、DllMain 等からこの API を呼び出すとデッドロックする可能性があります。
-
ailiaFindBlobIndexByName(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> blob_idx, Pointer<Char> name) → int - ~japanese @brief 推論時の内部データ(Blob)のインデックスを名前で探し取得します。 @param net ネットワークオブジェクトポインタ @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @param name 検索するBlob名 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、ailiaOpenStreamXXX呼び出し時は入出力Blobのみが検索可能です。中間Blobを検索する場合ailiaOpneWeightXXXを呼び出す必要があります。
-
ailiaFindBlobNameByIndex(
Pointer< AILIANetwork> net, Pointer<Char> buffer, int buffer_size, int blob_idx) → int - ~japanese @brief 推論時の内部データ(Blob)の名前をインデックスで探し取得します。 @param net ネットワークオブジェクトポインタ @param buffer Blob名の出力先バッファ @param buffer_size バッファのサイズ(終端null文字分を含む) @param blob_idx 検索するblobのインデックス @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、ailiaOpenStreamXXX呼び出し時は入出力Blobのみが検索可能です。中間Blobを検索する場合ailiaOpneWeightXXXを呼び出す必要があります。
-
ailiaGetBlobCount(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> blob_count) → int - ~japanese @brief 推論時の内部データ(Blob)の数を取得します。 @param net ネットワークオブジェクトポインタ @param blob_count blobの数の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、ailiaOpenStreamXXX呼び出し時は入出力Blobのみが列挙され、ailiaOpneWeightXXX呼び出し時に中間Blobの列挙が行われます。 そのためailiaOpenStreamXXX呼び出し直後とailiaOpneWeightXXX呼び出し直後で返答する数が変わる場合があります。
-
ailiaGetBlobData(
Pointer< AILIANetwork> net, Pointer<Void> dest, int dest_size, int blob_idx) → int - ~japanese @brief 推論時の内部データ(Blob)を取得します。 @param net ネットワークオブジェクトポインタ @param dest 推論結果の書き出し先バッファにX,Y,Z,Wの順でnumeric型で格納 @param dest_size 推論結果の書き出し先バッファのbyte数 @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaPredict() または ailiaUpdate() を一度も実行していない場合は \ref AILIA_STATUS_INVALID_STATE が返ります。
-
ailiaGetBlobDataType(
Pointer< AILIANetwork> net, Pointer<Int> type, int blob_idx) → int - ~japanese @brief 推論時の内部データ(Blob)の型を取得します。 @param net ネットワークオブジェクトポインタ @param type データ型の書き出し先バッファ。値は AILIA_DATATYPE_XXX で定義されています。 @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetBlobDim(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> dim, int blob_idx) → int - ~japanese @brief 推論時の内部データ(Blob)の次元を取得します。 @param net ネットワークオブジェクトポインタ @param dim blobの次元の格納先 @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、それ以外のエラーの場合はエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetBlobIndexByInputIndex(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> blob_idx, int input_blob_idx) → int - ~japanese @brief 入力データ(Blob)のインデックスを取得します @param net ネットワークオブジェクトポインタ @param blob_idx blobのインデックス(0~ ailiaGetBlobCount() -1) @param input_blob_idx 入力blob内でのインデックス(0~ ailiaGetInputBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、ailiaOpenStreamXXX呼び出し時に列挙されたinput_blob_idx及びblob_idxは保持されるためailiaOpneWeightXXX呼び出し後も同じ値が返ることが保証されます。
-
ailiaGetBlobIndexByOutputIndex(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> blob_idx, int output_blob_idx) → int - ~japanese @brief 出力データ(Blob)のインデックスを取得します @param net ネットワークオブジェクトポインタ @param blob_idx blobのインデックス(0~ ailiaGetBlobCount() -1) @param output_blob_idx 出力blob内でのインデックス(0~ ailiaGetOutputBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。
-
ailiaGetBlobNameLengthByIndex(
Pointer< AILIANetwork> net, int blob_idx, Pointer<UnsignedInt> buffer_size) → int - ~japanese @brief 内部データ(Blob)の名前の出力に必要なバッファのサイズを取得します。 @param net ネットワークオブジェクトポインタ @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @param buffer_size Blob名の出力に必要なバッファのサイズ(終端null文字分を含む) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、ailiaOpenStreamXXX呼び出し時は入出力Blobのみが検索可能です。中間Blobを検索する場合ailiaOpneWeightXXXを呼び出す必要があります。
-
ailiaGetBlobShape(
Pointer< AILIANetwork> net, Pointer<AILIAShape> shape, int blob_idx, int version) → int - ~japanese @brief 推論時の内部データ(Blob)の形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape データの形状情報の格納先 @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @param version AILIA_SHAPE_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、5次元以上の場合 \ref AILIA_STATUS_NDIMENSION_SHAPE 、 それ以外のエラーの場合はエラーコードを返す。 @details 形状が5次元以上の場合は ailiaGetBlobDim() 、 ailiaGetBlobShapeND() を利用してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetBlobShapeND(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> shape, int dim, int blob_idx) → int - ~japanese @brief 推論時の内部データ(Blob)の形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape blobの各次元の大きさの格納先配列(dim-1, dim-2, ... ,1, 0順で格納) @param dim shapeの次元 @param blob_idx blobのインデックス (0~ ailiaGetBlobCount() -1) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、それ以外のエラーの場合はエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetEnvironment(
Pointer< Pointer< env, int env_idx, int version) → intAILIAEnvironment> > - ~japanese @brief 計算環境の一覧を取得します @param env 計算環境情報の格納先(AILIANetworkインスタンスを破棄するまで有効) @param env_idx 計算環境情報のインデックス(0~ ailiaGetEnvironmentCount() -1) @param version AILIA_ENVIRONMENT_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaGetEnvironmentCount(
Pointer< UnsignedInt> env_count) → int - ~japanese @brief 利用可能な計算環境(CPU, GPU)の数を取得します @param env_count 計算環境情報の数の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaGetErrorDetail(
Pointer< AILIANetwork> net) → Pointer<Char> - ~japanese @brief エラーの詳細を返します @param net ネットワークオブジェクトポインタ @return エラー詳細 @details 返値は解放する必要はありません。 文字列の有効期間は次にailiaのAPIを呼ぶまでです。 モデルが暗号化されている場合は空文字を返します。
-
ailiaGetInputBlobCount(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> input_blob_count) → int - ~japanese @brief 入力データ(Blob)の数を取得します。 @param net ネットワークオブジェクトポインタ @param input_blob_count 入力blobの数の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。 なお、入力Blobの列挙はailiaOpenStreamXXX呼び出し時に行われますが変更可能な重み(input付きinitialzier)の列挙はailiaOpneWeightXXX呼び出し時に行われます。 そのためailiaOpenStreamXXX呼び出し直後とailiaOpneWeightXXX呼び出し直後で返答する数が変わる場合があります。
-
ailiaGetInputDim(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> dim) → int - ~japanese @brief 推論時の入力データの次元を取得します。 @param net ネットワークオブジェクトポインタ @param dim 入力データの次元の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、それ以外のエラーの場合はエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetInputShape(
Pointer< AILIANetwork> net, Pointer<AILIAShape> shape, int version) → int - ~japanese @brief 推論時の入力データの形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの形状情報 @param version AILIA_SHAPE_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、5次元以上の場合 \ref AILIA_STATUS_NDIMENSION_SHAPE 、 形状の一部が未確定の場合 \ref AILIA_STATUS_UNSETTLED_SHAPE 、それ以外のエラーの場合はエラーコードを返す。 @details 形状が5次元以上の場合は ailiaGetInputDim() 、 ailiaGetInputShapeND() を利用してください。 形状の一部が未確定の場合、該当する次元の値は0となり、それ以外の次元の値は有効な値が格納されます。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetInputShapeND(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> shape, int dim) → int - ~japanese @brief 推論時の入力データの形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの各次元の大きさの格納先配列(dim-1, dim-2, ... ,1, 0順で格納) @param dim shapeの次元 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、形状の一部が未確定の場合 \ref AILIA_STATUS_UNSETTLED_SHAPE 、 それ以外のエラーの場合はエラーコードを返す。 @details 形状の一部が未確定の場合、該当する次元の値は0となり、それ以外の次元の値は有効な値が格納されます。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetOutputBlobCount(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> output_blob_count) → int - ~japanese @brief 出力データ(Blob)の数を取得します。 @param net ネットワークオブジェクトポインタ @param output_blob_count 出力blobの数の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenStreamXXX呼び出し後より利用可能です。
-
ailiaGetOutputDim(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> dim) → int - ~japanese @brief 推論時の出力データの次元を取得します。 @param net ネットワークオブジェクトポインタ @param dim 出力データの次元の格納先 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、それ以外のエラーの場合はエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetOutputShape(
Pointer< AILIANetwork> net, Pointer<AILIAShape> shape, int version) → int - ~japanese @brief 推論時の出力データの形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape 出力データの形状情報 @param version AILIA_SHAPE_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、5次元以上の場合 \ref AILIA_STATUS_NDIMENSION_SHAPE 、 それ以外のエラーの場合エラーコードを返す。 形状が5次元以上の場合は ailiaGetOutputDim() 、 ailiaGetOutputShapeND() を利用してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetOutputShapeND(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> shape, int dim) → int - ~japanese @brief 推論時の出力データの形状を取得します。 @param net ネットワークオブジェクトポインタ @param shape 出力データの各次元の大きさの格納先配列(dim-1, dim-2, ... ,1, 0順で格納) @param dim shapeの次元 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、それ以外のエラーの場合はエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetSelectedEnvironment(
Pointer< AILIANetwork> net, Pointer<Pointer< env, int version) → intAILIAEnvironment> > - ~japanese @brief 選択された計算環境を取得します @param net ネットワークオブジェクトポインタ @param env 計算環境情報の格納先(AILIANetworkインスタンスを破棄するまで有効) @param version AILIA_ENVIRONMENT_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaGetStatusString(
int status_code) → Pointer< Char> - ~japanese @brief ステータスコードに対応する文字列を返します。 @param status_code ステータスコード @return ステータスコードに対応する文字列。 @details 返値は解放する必要はありません。 返された文字列は ailia のライブラリ(ailia.dll, libailia.so 等)をアンロードするまで有効です。 AILIANetwork のインスタンスがある場合は ailiaGetErrorDetail() でエラーの詳細を取得できます。
-
ailiaGetSummaryLength(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> buffer_size) → int - ~japanese @brief ネットワークSummary用に必要なバッファのサイズを取得します。 @param net ネットワークオブジェクトポインタ @param buffer_size バッファのサイズの格納先(終端null文字分を含む) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaGetVersion(
) → Pointer< Char> - ~japanese @brief ライブラリバージョンを取得します @return バージョン番号 @details 返値は解放する必要はありません。
-
ailiaOpenStreamEx(
Pointer< AILIANetwork> net, Pointer<Void> fopen_args, ailiaFileCallback callback, int version) → int - ~japanese @brief ネットワークオブジェクトを初期化します。(ユーザ定義ファイルアクセスコールバック) @param net ネットワークオブジェクトポインタ @param fopen_args \ref AILIA_USER_API_FOPEN に通知される引数ポインタ @param callback ユーザ定義ファイルアクセスコールバック関数構造体 @param version ファイルアクセスコールバック関数構造体のバージョン( \ref AILIA_FILE_CALLBACK_VERSION ) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ファイルから読み込み、ネットワークオブジェクトを初期化します。
-
ailiaOpenStreamFileA(
Pointer< AILIANetwork> net, Pointer<Char> path) → int - ~japanese @brief ネットワークオブジェクトを初期化します。(ファイルから読み込み) @param net ネットワークオブジェクトポインタ @param path prototxtファイルのパス名(MBSC or UTF16) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ファイルから読み込み、ネットワークオブジェクトを初期化します。
-
ailiaOpenStreamFileW(
Pointer< AILIANetwork> net, Pointer<WChar> path) → int -
ailiaOpenStreamMem(
Pointer< AILIANetwork> net, Pointer<Void> buf, int buf_size) → int - ~japanese @brief ネットワークオブジェクトを初期化します。(メモリから読み込み) @param net ネットワークオブジェクトポインタ @param buf prototxtファイルのデータへのポインタ @param buf_size prototxtファイルのデータサイズ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details メモリから読み込み、ネットワークオブジェクトを初期化します。
-
ailiaOpenWeightEx(
Pointer< AILIANetwork> net, Pointer<Void> fopen_args, ailiaFileCallback callback, int version) → int - ~japanese @brief ネットワークオブジェクトに重み係数を読み込みます。(ユーザ定義ファイルアクセスコールバック) @param net ネットワークオブジェクトポインタ @param fopen_args \ref AILIA_USER_API_FOPEN に通知される引数ポインタ @param callback ユーザ定義ファイルアクセスコールバック関数構造体 @param version ファイルアクセスコールバック関数構造体のバージョン( \ref AILIA_FILE_CALLBACK_VERSION ) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ファイルからネットワークオブジェクトに重み係数を読み込みます。
-
ailiaOpenWeightFileA(
Pointer< AILIANetwork> net, Pointer<Char> path) → int - ~japanese @brief ネットワークオブジェクトに重み係数を読み込みます。(ファイルから読み込み) @param net ネットワークオブジェクトポインタ @param path protobuf/onnxファイルのパス名(MBSC or UTF16) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ファイルからネットワークオブジェクトに重み係数を読み込みます。
-
ailiaOpenWeightFileW(
Pointer< AILIANetwork> net, Pointer<WChar> path) → int -
ailiaOpenWeightMem(
Pointer< AILIANetwork> net, Pointer<Void> buf, int buf_size) → int - ~japanese @brief ネットワークオブジェクトに重み係数を読み込みます。(メモリから読み込み) @param net ネットワークオブジェクトポインタ @param buf protobuf/onnxファイルのデータへのポインタ @param buf_size protobuf/onnxファイルのデータサイズ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details メモリからネットワークオブジェクトに重み係数を読み込みます。
-
ailiaPredict(
Pointer< AILIANetwork> net, Pointer<Void> dest, int dest_size, Pointer<Void> src, int src_size) → int - ~japanese @brief 推論を行い推論結果を取得します。 @param net ネットワークオブジェクトポインタ @param dest 推論結果の書き出し先バッファにX,Y,Z,Wの順でnumeric型で格納 サイズはネットファイルのoutputSizeとなる @param dest_size 推論結果の書き出し先バッファのbyte数 @param src 推論データ X,Y,Z,Wの順でnumeric型で格納 サイズはネットファイルのinputSizeとなる @param src_size 推論データのbyte数 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetInputBlobData(
Pointer< AILIANetwork> net, Pointer<Void> src, int src_size, int blob_idx) → int - ~japanese @brief 指定したBlobに入力データを与えます。 @param net ネットワークオブジェクトポインタ @param src 推論データ X,Y,Z,Wの順でnumeric型で格納 @param src_size 推論データのbyte数 @param blob_idx 入力するblobのインデックス @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 複数入力があるネットワークなどで入力を指定する場合に用います。 blob_idxで入力レイヤーのblob以外のものを指定した場合、 \ref AILIA_STATUS_INVALID_ARGUMENT が返ります。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetInputBlobShape(
Pointer< AILIANetwork> net, Pointer<AILIAShape> shape, int blob_idx, int version) → int - ~japanese @brief 指定したBlobの形状を変更します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの形状情報 @param blob_idx 変更するblobのインデックス @param version AILIA_SHAPE_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 複数入力があるネットワークなどで入力形状を変更する場合に用います。 blob_idxは入力レイヤーのblob以外のものを指定した場合 \ref AILIA_STATUS_INVALID_ARGUMENT が返ります。 その他の注意点は ailiaSetInputShape() の解説を参照してください。 入力形状のランクが5次元以上の場合は ailiaSetInputBlobShapeND() を利用してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetInputBlobShapeND(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> shape, int dim, int blob_idx) → int - ~japanese @brief 指定したBlobの形状を変更します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの各次元の大きさの配列(dim-1, dim-2, ... ,1, 0) @param dim shapeの次元 @param blob_idx 変更するblobのインデックス @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 複数入力があるネットワークなどで入力形状を変更する場合に用います。 blob_idxは入力レイヤーのblob以外のものを指定した場合 \ref AILIA_STATUS_INVALID_ARGUMENT が返ります。 その他の注意点は ailiaSetInputShapeND() の解説を参照してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetInputShape(
Pointer< AILIANetwork> net, Pointer<AILIAShape> shape, int version) → int - ~japanese @brief 推論時の入力データの形状を変更します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの形状情報 @param version AILIA_SHAPE_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details prototxtで定義されている入力形状を変更します。 prototxtに記述されているランクと同じにする必要があります。 なお、重み係数の形状が入力形状に依存しているなどによりエラーが返る場合があります。 prototxtで定義されているランクが4次元未満の場合は未使用の要素に1を設定する必要があります。 prototxtで定義されているランクが5次元以上の場合は ailiaSetInputShapeND() を利用してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetInputShapeND(
Pointer< AILIANetwork> net, Pointer<UnsignedInt> shape, int dim) → int - ~japanese @brief 推論時の入力データの形状を変更します。 @param net ネットワークオブジェクトポインタ @param shape 入力データの各次元の大きさの配列(dim-1, dim-2, ... ,1, 0) @param dim shapeの次元 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details prototxtで定義されている入力形状を変更します。 prototxtに記述されているランクと同じにする必要があります。 なお、重み係数の形状が入力形状に依存しているなどによりエラーが返る場合があります。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaSetMemoryMode(
Pointer< AILIANetwork> net, int mode) → int - ~japanese @brief 推論時のメモリの使用方針を設定します @param net ネットワークオブジェクトポインタ @param mode メモリモード(論理和で複数指定可) AILIA_MEMORY_XXX (デフォルト: \ref AILIA_MEMORY_REDUCE_CONSTANT ) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details メモリの使用方針を変更します。 \ref AILIA_MEMORY_NO_OPTIMIZATION 以外を指定した場合は、 推論時に確保する中間バッファーを開放するため、推論時のメモリ使用量を削減することができます。 ailiaCreate() の直後に指定する必要があります。ailiaOpenを呼び出した後は変更することができません。 なお、中間バッファーを開放するように指定した場合、該当するBlobに対し、 ailiaGetBlobData() を呼び出すと \ref AILIA_STATUS_DATA_HIDDEN エラーが返ります。
-
ailiaSetProfileMode(
Pointer< AILIANetwork> net, int mode) → int - ~japanese @brief プロファイルモードをセットします @param net ネットワークオブジェクトポインタ @param mode プロファイルモード @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details プロファイルモードを指定します。デフォルトは無効です。 ailiaOpenStreamXXXを呼び出したあとに呼び出してください。 プロファイルモードを有効にした場合、 ailiaSummary() の出力にプロファイル結果が追加されます。
-
ailiaSetTemporaryCachePathA(
Pointer< Char> cache_dir) → int - ~japanese @brief 一時キャッシュディレクトリを指定します @param cache_dir 一時キャッシュディレクトリ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 指定したキャッシュディレクトリは推論実行環境毎に最適化したマシンコードを生成して保存するためにシステムが利用します。 ailia の実行開始時に一度だけ呼び出してください。二回目以降の呼び出しに対しては無視して成功を返します。 複数スレッドから呼び出された場合も内部で排他制御しているので特に問題は発生しません。 Vulkan のシェーダーキャッシュ機能など、この API を呼ぶまで利用できないものがあります。 cache_dirにはContext.getCacheDir()で取得したファイルパスを指定してください。
-
ailiaSetTemporaryCachePathW(
Pointer< WChar> cache_dir) → int -
ailiaSummary(
Pointer< AILIANetwork> net, Pointer<Char> buffer, int buffer_size) → int - ~japanese @brief 各Blobの名前と形状を表示します。 @param net ネットワークオブジェクトポインタ @param buffer Summaryの出力先 @param buffer_size 出力バッファのサイズ(終端null文字分を含む)。 ailiaGetSummaryLength() で取得した値を設定してください。 @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaUpdate(
Pointer< AILIANetwork> net) → int - ~japanese @brief 事前に指定した入力データで推論を行います。 @param net ネットワークオブジェクトポインタ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaSetInputBlobData() を用いて入力を与えた場合などに用います。 推論結果は ailiaGetBlobData() で取得してください。 このAPIはailiaOpenWeighXXX呼び出し後より利用可能です。
-
ailiaVoiceCreate(
Pointer< Pointer< net, int env_id, int num_thread, int memory_mode, int flags, AILIAVoiceApiCallback callback, int version) → intAILIAVoice> > - ~japanese @brief ボイスオブジェクトを作成します。 @param net ボイスオブジェクトポインタへのポインタ @param env_id 計算に利用する推論実行環境のID( ailiaGetEnvironment() で取得) \ref AILIA_ENVIRONMENT_ID_AUTO にした場合は自動で選択する @param num_thread スレッド数の上限( \ref AILIA_MULTITHREAD_AUTO にした場合は自動で設定) @param memory_mode メモリモード(AILIA_MEMORY_MODE_*) @param flag AILIA_VOICE_FLAG_*の論理和 @param api_callback ailiaのAPIへのコールバック @param version AILIA_VOICE_API_CALLBACK_VERSION @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ボイスオブジェクトを作成します。
-
ailiaVoiceDestroy(
Pointer< AILIAVoice> net) → void - ~japanese @brief ボイスオブジェクトを破棄します。 @param net ボイスオブジェクトポインタ
-
ailiaVoiceExtractFullContext(
Pointer< AILIAVoice> net, Pointer<Char> utf8) → int - ~japanese @brief ExtractFullContextを行います。 @param net ボイスオブジェクトポインタ @param text テキスト(UTF8) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 認識した結果はailiaVoiceGetFeaturesAPIで取得します。
-
ailiaVoiceGetErrorDetail(
Pointer< AILIAVoice> net) → Pointer<Char> - ~japanese @brief エラーの詳細を返します @param net ネットワークオブジェクトポインタ @return エラー詳細 @details 返値は解放する必要はありません。 文字列の有効期間は次にailiaVoiceのAPIを呼ぶまでです。
-
ailiaVoiceGetFeatureLength(
Pointer< AILIAVoice> net, Pointer<UnsignedInt> len) → int - ~japanese @brief フィーチャーの長さを取得します。(NULL文字含む) @param net ボイスオブジェクトポインタ @param len フィーチャーの長さ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceGetFeatures(
Pointer< AILIAVoice> net, Pointer<Char> features, int len) → int - ~japanese @brief フィーチャーを取得します。 @param net ボイスオブジェクトポインタ @param features フィーチャー(UTF8) @param len フィーチャーの長さ @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaVoiceGraphemeToPhoneme() もしくは ailiaVoiceExtractFullContext() を一度も実行していない場合は \ref AILIA_STATUS_INVALID_STATE が返ります。
-
ailiaVoiceGetWave(
Pointer< AILIAVoice> net, Pointer<Float> buf, int buf_size) → int - ~japanese @brief 波形を取得します。 @param net ボイスオブジェクトポインタ @param buf PCM波形 (0 - 1で正規化) @param buf_size バッファサイズ(byte単位) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaVoiceInference() を一度も実行していない場合は \ref AILIA_STATUS_INVALID_STATE が返ります。
-
ailiaVoiceGetWaveInfo(
Pointer< AILIAVoice> net, Pointer<UnsignedInt> samples, Pointer<UnsignedInt> channels, Pointer<UnsignedInt> sampling_rate) → int - ~japanese @brief 波形の情報を取得します。 @param net ボイスオブジェクトポインタ @param samples サンプル数(チャンネル単位) @param channels チャンネル数 @param sampling_rate サンプリングレート @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceGraphemeToPhoneme(
Pointer< AILIAVoice> net, Pointer<Char> utf8, int g2p_type) → int - ~japanese @brief G2Pを行います。 @param net ボイスオブジェクトポインタ @param text テキスト(UTF8) @param g2p_type AILIA_VOICE_G2P_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 認識した結果はailiaVoiceGetFeatures APIで取得します。
-
ailiaVoiceInference(
Pointer< AILIAVoice> net, Pointer<Char> utf8) → int - ~japanese @brief 推論を行います。 @param net ボイスオブジェクトポインタ @param text テキスト(UTF8) @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details 音声合成した結果はailiaVoiceGetWave APIで取得します。
-
ailiaVoiceOpenDictionaryFileA(
Pointer< AILIAVoice> net, Pointer<Char> dictionary_path, int dictionary_type) → int - ~japanese @brief 辞書を指定します。(MBSC) @param net ネットワークオブジェクトポインタ @param dictionary_path 辞書フォルダのパス名(MBSC) @param dictionary_type AILIA_VOICE_DICTIONARY_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceOpenDictionaryFileW(
Pointer< AILIAVoice> net, Pointer<WChar> dictionary_path, int dictionary_type) → int - ~japanese @brief 辞書を指定します。(UTF16) @param net ネットワークオブジェクトポインタ @param dictionary_path 辞書フォルダのパス名(UTF16) @param dictionary_type AILIA_VOICE_DICTIONARY_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceOpenModelFileA(
Pointer< AILIAVoice> net, Pointer<Char> encoder, Pointer<Char> decoder1, Pointer<Char> decoder2, Pointer<Char> wave, Pointer<Char> ssl, int model_type, int cleaner_type) → int - ~japanese @brief モデルを指定します。(MBSC) @param net ネットワークオブジェクトポインタ @param encoder_path onnxファイルのパス名(MBSC) @param decoder1_path onnxファイルのパス名(MBSC) @param decoder2_path onnxファイルのパス名(MBSC) @param wave_path onnxファイルのパス名(MBSC) @param ssl_path onnxファイルのパス名(MBSC) @param model_type AILIA_VOICE_MODEL_TYPE_* @param cleaner_type AILIA_VOICE_CLEANER_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceOpenModelFileW(
Pointer< AILIAVoice> net, Pointer<WChar> encoder, Pointer<WChar> decoder1, Pointer<WChar> decoder2, Pointer<WChar> wave, Pointer<WChar> ssl, int model_type, int cleaner_type) → int - ~japanese @brief モデルを指定します。(UTF16) @param net ネットワークオブジェクトポインタ @param encoder onnxファイルのパス名(UTF16) @param decoder1 onnxファイルのパス名(UTF16) @param decoder2 onnxファイルのパス名(UTF16) @param wave onnxファイルのパス名(UTF16) @param ssl onnxファイルのパス名(UTF16) @param model_type AILIA_VOICE_MODEL_TYPE_* @param cleaner_type AILIA_VOICE_CLEANER_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。
-
ailiaVoiceSetReference(
Pointer< AILIAVoice> net, Pointer<Float> buf, int buf_size, int channels, int sampling_rate, Pointer<Char> features) → int - ~japanese @brief 0ショット音声合成のリファレンスとなる波形とテキストを設定します。 @param net ボイスオブジェクトポインタ @param buf PCM波形 (0 - 1で正規化) @param buf_size バッファサイズ(byte単位) @param channels チャンネル数 @param sampling_rate サンプリングレート @param features フィーチャー(UTF8)
-
ailiaVoiceSetUserDictionaryFileA(
Pointer< AILIAVoice> net, Pointer<Char> dictionary_path, int dictionary_type) → int - ~japanese @brief ユーザ辞書を指定します。(MBSC) @param net ネットワークオブジェクトポインタ @param dictionary_path ユーザ辞書ファイルのパス名(MBSC) @param dictionary_type AILIA_VOICE_DICTIONARY_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaVoiceOpenDictionaryFileAの前に呼び出す必要があります。
-
ailiaVoiceSetUserDictionaryFileW(
Pointer< AILIAVoice> net, Pointer<WChar> dictionary_path, int dictionary_type) → int - ~japanese @brief ユーザ辞書を指定します。(UTF16) @param net ネットワークオブジェクトポインタ @param dictionary_path ユーザ辞書ファイルのパス名(UTF16) @param dictionary_type AILIA_VOICE_DICTIONARY_TYPE_* @return 成功した場合は \ref AILIA_STATUS_SUCCESS 、そうでなければエラーコードを返す。 @details ailiaVoiceOpenDictionaryFileWの前に呼び出す必要があります。
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited