Julius 4.2
マクロ定義 | 関数
libjulius/src/recogmain.c

認識メイン関数 [詳細]

#include <julius/julius.h>
#include <signal.h>

ソースコードを見る。

マクロ定義

#define GLOBAL_VARIABLE_DEFINE
 Actually make global vars in global.h.

関数

SentenceAlignresult_align_new ()
 アラインメント結果の格納場所を確保
void result_align_free (SentenceAlign *a)
 アラインメント結果の格納場所を確保
void result_sentence_malloc (RecogProcess *r, int num)
 認識結果の格納場所を確保する.
void result_sentence_free (RecogProcess *r)
 認識結果の格納場所を解放する.
void clear_result (RecogProcess *r)
 認識結果の格納場所を全てクリアする.
int adin_cut_callback_store_buffer (SP16 *now, int len, Recog *recog)
 検出された音をバッファに保存する adin_go() コールバック
static int callback_check_in_adin (Recog *recog)
 音声入力中に定期的に実行されるコールバック.
int j_open_stream (Recog *recog, char *file_or_dev_name)
 音声入力ストリームを開く
int j_close_stream (Recog *recog)
 音声入力ストリームを閉じる.認識のメインループは閉じられた後終了する.
static void result_error (Recog *recog, int status)
 エラーによる認識終了時の処理.
static int j_recognize_stream_core (Recog *recog)
 音声認識の実行.
int j_recognize_stream (Recog *recog)
 入力ストリームの認識を行う

説明

認識メイン関数

作者:
Akinobu Lee
日付:
Wed Aug 8 14:53:53 2007
Revision:
1.17

recogmain.c で定義されています。


関数

SentenceAlign* result_align_new ( )

アラインメント結果の格納場所を確保

戻り値:
確保された領域へのポインタ

recogmain.c210 行で定義されています。

参照元 do_alignment_all().

関数の呼び出しグラフ:

呼出しグラフ:

void result_align_free ( SentenceAlign a)

アラインメント結果の格納場所を確保

引数:
a[i/o] 解放されるアラインメントデータ

recogmain.c242 行で定義されています。

参照元 result_sentence_free().

呼出しグラフ:

void result_sentence_malloc ( RecogProcess r,
int  num 
)

認識結果の格納場所を確保する.

引数:
r[out] recognition process instance
num[in] number of sentences to be output

recogmain.c270 行で定義されています。

参照元 find_1pass_result_word(), と j_recognize_stream_core().

関数の呼び出しグラフ:

呼出しグラフ:

void result_sentence_free ( RecogProcess r)

認識結果の格納場所を解放する.

引数:
r[i/o] recognition process instance

recogmain.c292 行で定義されています。

参照元 clear_result().

関数の呼び出しグラフ:

呼出しグラフ:

void clear_result ( RecogProcess r)

認識結果の格納場所を全てクリアする.

引数:
r[in] recognition process instance.

recogmain.c324 行で定義されています。

参照元 j_recognize_stream_core().

関数の呼び出しグラフ:

呼出しグラフ:

int adin_cut_callback_store_buffer ( SP16 now,
int  len,
Recog recog 
)

検出された音をバッファに保存する adin_go() コールバック

この関数は,検出された音声入力を順次 recog->speech に記録して いく. バッファ処理モード(=非リアルタイムモード)で認識を行なう ときに用いられる.

引数:
now[in] 検出された音声波形データの断片
len[in] now の長さ(サンプル数)
recog[i/o] エンジンインスタンス
戻り値:
エラー時 -1 (adin_go は即時中断する),通常時 0 (adin_go は 続行する),区間終了要求時 1 (adin_go は現在の音声区間を閉じる).

recogmain.c385 行で定義されています。

参照元 j_recognize_stream_core(), と RealTimePipeLine().

static int callback_check_in_adin ( Recog recog) [static]

音声入力中に定期的に実行されるコールバック.

この関数は,adin_go() にて音声入力待ち,あるいは音声認識中に 定期的に繰り返し呼び出される関数である. ユーザ定義のコールバック (CALLBACK_POLL) の呼び出し,および中断判定を行う.

引数:
recog[in] エンジンインスタンス
戻り値:
通常時 0, 即時中断を要求時 -2, 認識中止の要求時は -1 を返す.

recogmain.c443 行で定義されています。

参照元 j_recognize_stream_core().

static void result_error ( Recog recog,
int  status 
) [static]

エラーによる認識終了時の処理.

引数:
recog[in] engine instance
status[in] error status to be set

recogmain.c633 行で定義されています。

参照元 j_recognize_stream_core().

static int j_recognize_stream_core ( Recog recog) [static]

音声認識の実行.

この関数は入力ストリームが終わるまで音声認識を繰り返す. 必要であれば入力待ちを行って区間を検出し,音声認識を行い,結果を 出力してふたたび入力待ちに戻る.

入力ストリームを終わりまで認識するか,エラーが生じたときに終了する.

あるいは,認識処理中に,j_request_pause() や j_request_terminate() が アプリから呼ばれた場合,認識処理の切れ目で終了する.

引数:
recog[i/o] engine instance
戻り値:
1 when stopped by application request, 0 when reached end of stream, or -1 when an error occured. Note that the input stream can still continues when 1 is returned.

recogmain.c693 行で定義されています。

参照元 j_recognize_stream().