Julius 4.2
|
認識した入力音声をファイルに保存する. [詳細]
#include "app.h"
#include <time.h>
関数 | |
static void | timestring (char *t, int maxlen) |
システム時間からベースファイル名を作成する. | |
static void | make_record_filename (char *buf, int buflen, char *basename, char *dirname) |
ベースファイル名から実際のパス名を作成する. | |
static void | make_tmp_filename (char *buf, int buflen, char *dirname) |
一時ファイル名を作成する. | |
static void | record_sample_open (Recog *recog, void *dummy) |
録音のために一時ファイルをオープンする. | |
static void | record_sample_write (Recog *recog, SP16 *speech, int samplenum, void *dummy) |
入力音声断片をファイルに追加記録する. | |
static void | record_sample_close (Recog *recog, void *dummy) |
録音を終了する. | |
static boolean | opt_record (Jconf *jconf, char *arg[], int argnum) |
void | record_add_option () |
void | record_setup (Recog *recog, void *data) |
変数 | |
static char * | record_dirname = NULL |
static char | rectmpfilename [MAXLINELEN] |
static char | recordfilename [MAXLINELEN] |
static int | recordlen |
static FILE * | recfile_fp = NULL |
static boolean | open_error = FALSE |
認識した入力音声をファイルに保存する.
入力された音声データを1つずつファイルに保存する. ファイル名は録音時のタイムスタンプから "YYYY.MMDD.HHMMSS.wav" となる. ファイル形式は Microsoft WAVE format, 16bit, PCM (無圧縮) である.
録音はいったんメモリに確保されずに、入力と平行してファイルに直接 書き込まれる。最初は一時ファイルに記録され、録音終了後(=第1パス 終了後)に上記の形式のファイル名に変更される。
record.c で定義されています。
static void timestring | ( | char * | t, |
int | maxlen | ||
) | [static] |
システム時間からベースファイル名を作成する.
t | [out] 結果を格納する文字列バッファ |
maxlen | [in] t の最大長 |
static void make_record_filename | ( | char * | buf, |
int | buflen, | ||
char * | basename, | ||
char * | dirname | ||
) | [static] |
ベースファイル名から実際のパス名を作成する.
ディレクトリは大域変数 record_dirname であらかじめ指定されている.
buf | [out] 結果のパス名を格納するバッファへのポインタ |
buflen | [in] buf の最大長 |
filename | [in] ベースファイル名 |
static void make_tmp_filename | ( | char * | buf, |
int | buflen, | ||
char * | dirname | ||
) | [static] |