AM_CONDITIONAL([HAVE_AMQP], [false])
])
+PKG_CHECK_MODULES([SPHINXBASE], [sphinxbase >= 5],[
+ AM_CONDITIONAL([HAVE_SPHINXBASE],[true])],[
+ AC_MSG_RESULT([no]); AM_CONDITIONAL([HAVE_SPHINXBASE],[false])])
+
+PKG_CHECK_MODULES([POCKETSPHINX], [pocketsphinx >= 5],[
+ AM_CONDITIONAL([HAVE_POCKETSPHINX],[true])],[
+ AC_MSG_RESULT([no]); AM_CONDITIONAL([HAVE_POCKETSPHINX],[false])])
+
PKG_CHECK_MODULES([H2O], [libh2o-evloop >= 0.11.0],[
AM_CONDITIONAL([HAVE_H2O],[true])],[
AC_MSG_RESULT([no]); AM_CONDITIONAL([HAVE_H2O],[false])])
mod_LTLIBRARIES = mod_pocketsphinx.la
mod_pocketsphinx_la_SOURCES = mod_pocketsphinx.c
+mod_pocketsphinx_la_LDFLAGS = -avoid-version -module -no-undefined -shared
+if HAVE_POCKETSPHINX
+mod_pocketsphinx_la_CFLAGS = $(AM_CFLAGS) $(SPHINXBASE_CFLAGS) $(POCKETSPHINX_CFLAGS)
+mod_pocketsphinx_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(POCKETSPHINX_LDFLAGS) $(SPHINXBASE_LDFLAGS)
+else
mod_pocketsphinx_la_CFLAGS = $(AM_CFLAGS) -I$(SPHINXBASE_DIR)/include -I$(POCKETSPHINX_DIR)/include
mod_pocketsphinx_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(POCKETSPHINX_LA) $(SPHINXBASE_LA) $(SPHINXBASE_LA2)
-mod_pocketsphinx_la_LDFLAGS = -avoid-version -module -no-undefined -shared
BUILT_SOURCES=$(POCKETSPHINX_LA) $(SPHINXBASE_LA) $(SPHINXBASE_LA2)
+endif
$(SPHINXBASE_DIR):
$(GETLIB) $(SPHINXBASE).tar.gz
dictionary:
@install -m0644 $(POCKETSPHINX_DIR)/model/lm/en_US/cmu07a.dic $(DESTDIR)$(grammardir)/default.dic
+if HAVE_POCKETSPHINX
+install-data-local: $(POCKETSPHINX_DIR) $(DESTDIR)$(grammardir)/model $(DESTDIR)$(grammardir)/model/communicator dictionary
+else
install-data-local: $(DESTDIR)$(grammardir)/model $(DESTDIR)$(grammardir)/model/communicator dictionary
-
+endif
}
switch_mutex_unlock(ps->flag_mutex);
- ps_start_utt(ps->ps, NULL);
+ ps_start_utt(ps->ps);
ps->silence_time = switch_micro_time_now();
switch_clear_flag(ps, PSFLAG_START_OF_SPEECH);
switch_clear_flag(ps, PSFLAG_NOINPUT_TIMEOUT);
char const *hyp;
switch_mutex_lock(ps->flag_mutex);
- if ((hyp = ps_get_hyp(ps->ps, &ps->score, &ps->uttid))) {
+ if ((hyp = ps_get_hyp(ps->ps, &ps->score))) {
if (!zstr(hyp)) {
ps_end_utt(ps->ps);
switch_clear_flag(ps, PSFLAG_READY);
- if ((hyp = ps_get_hyp(ps->ps, &ps->score, &ps->uttid))) {
+ if ((hyp = ps_get_hyp(ps->ps, &ps->score))) {
if (zstr(hyp)) {
if (!switch_test_flag(ps, PSFLAG_SPEECH_TIMEOUT)) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Lost the text, never mind....\n");
- ps_start_utt(ps->ps, NULL);
+ ps_start_utt(ps->ps);
switch_set_flag(ps, PSFLAG_READY);
}
} else {
/* get match and confidence */
int32_t conf;
- conf = ps_get_prob(ps->ps, &ps->uttid);
+ conf = ps_get_prob(ps->ps);
ps->confidence = (conf + 20000) / 200;
if (!switch_test_flag(ps, PSFLAG_READY)) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Manually Resuming\n");
- if (ps_start_utt(ps->ps, NULL)) {
+ if (ps_start_utt(ps->ps)) {
status = SWITCH_STATUS_GENERR;
} else {
switch_set_flag(ps, PSFLAG_READY);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Auto Resuming\n");
switch_set_flag(ps, PSFLAG_READY);
- ps_start_utt(ps->ps, NULL);
+ ps_start_utt(ps->ps);
}
status = SWITCH_STATUS_SUCCESS;