Запуск сценария или внешней программы распознавания речи Юлиуса

Я пытаюсь использовать Юлиуса на Ubuntu. Через пару часов я наконец-то добрался до работы.

По сути, единственное, что мне нужно, это запускать скрипт, когда он распознает определенное слово (например, "компьютер"). И это главная проблема. Какой лучший способ сделать это?

Также кажется, что я не могу запустить Юлиуса в "тихом" режиме

$ julius -quiet -input mic -C julian.jconf 2>/dev/null 

по-прежнему выводит слишком много информации:

                   ..........
          reject short input = off

----------------------- System Information end -----------------------

    *************************************************************
    * NOTICE: The first input may not be recognized, since      *
    *         no initial CMN parameter is available on startup. *
    * for MFCC01*
    *************************************************************

Stat: захват аудио на частоте 16000 Гц

Stat: adin_alsa: задержка установлена ​​на 32 мсек (чанк = 512 байт)

Ошибка: adin_alsa: невозможно получить информацию о pcm из контроля карты

Предупреждение: adin_alsa: пропустить вывод подробной информации об аудиоустройстве

STAT: AD-in тема создана

Предупреждение: полоса: образец 0-27 имеет нулевое значение, лишена

pass1_best: DOWarning: strip: образец 192-444 имеет нулевое значение, лишенный

pass1_best: ИГРАТЬ

Предложение 1: ИГРАТЬ

pass1_best:

Предложение 1: ИГРАТЬ

pass1_best: Предупреждение: полоса: образец 406-436 имеет нулевое значение, раздет

 ....

и так далее.

Какие-либо предложения?

1 ответ

Обычно мы будем вызывать Julius из скрипта, считывая вывод Julius в переменную, где мы можем скрыть все и извлечь только то, что требуется, используя подстроки и нарезку. Таким образом, вы можете создать так называемый "менеджер диалогов", используя любое приложение, подходящее для ваших целей, например, PHP, Julia, Python и т. Д., Предпринимая действия в зависимости от того, что, по мнению Юлиуса, слышно от switch или же if .. then .. else состав.

Простой способ сделать это - использовать бесконечный цикл, который завершается только по команде, такой как "ВЫХОД КОМПЬЮТЕРА" или подобной.

julius вариант -nostrip полезно, если вы получаете много nostrip предупреждения.

Если у вас есть опыт работы с julius бежать очень полезно julius в режиме сервера (описано в документации [несколько ссылок доступно на https://github.com/julius-speech/julius ] вместе с примером приложения), что позволяет вам контролировать julius более эффективно без перезагрузки между событиями распознавания. К тому же julius отправит ответы в формате XML, чтобы вы могли надежно прочитать вывод с помощью проверенного средства чтения XML в диспетчере диалогов.

Другие вопросы по тегам