mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
Add a flag to the speech API that allows an engine to set whether it received results or not.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@77831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -28,8 +28,9 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/* Speech structure flags */
|
||||
#define AST_SPEECH_QUIET (1 << 0) /* Quiet down output... they are talking */
|
||||
#define AST_SPEECH_SPOKE (1 << 1) /* Speaker did not speak */
|
||||
#define AST_SPEECH_QUIET (1 << 0) /* Quiet down output... they are talking */
|
||||
#define AST_SPEECH_SPOKE (1 << 1) /* Speaker did not speak */
|
||||
#define AST_SPEECH_HAVE_RESULTS (1 << 2) /* Results are present */
|
||||
|
||||
/* Speech structure states - in order of expected change */
|
||||
#define AST_SPEECH_STATE_NOT_READY 0 /* Not ready to accept audio */
|
||||
|
@@ -120,7 +120,7 @@ struct ast_speech_result *ast_speech_results_get(struct ast_speech *speech)
|
||||
{
|
||||
struct ast_speech_result *result = NULL;
|
||||
|
||||
if (speech->engine->get != NULL) {
|
||||
if (speech->engine->get != NULL && ast_test_flag(speech, AST_SPEECH_HAVE_RESULTS)) {
|
||||
result = speech->engine->get(speech);
|
||||
}
|
||||
|
||||
@@ -160,6 +160,7 @@ void ast_speech_start(struct ast_speech *speech)
|
||||
/* Clear any flags that may affect things */
|
||||
ast_clear_flag(speech, AST_SPEECH_SPOKE);
|
||||
ast_clear_flag(speech, AST_SPEECH_QUIET);
|
||||
ast_clear_flag(speech, AST_SPEECH_HAVE_RESULTS);
|
||||
|
||||
/* If results are on the structure, free them since we are starting again */
|
||||
if (speech->results != NULL) {
|
||||
|
Reference in New Issue
Block a user