Руководство API скрипты

DictationRecognizer

класс в UnityEngine.Windows.Speech / Реализовано в: UnityEngine.CoreModule

Описание

DictationRecognizer прослушивает речевой ввод и пытается определить, какая фраза была произнесена.

Пользователи могут зарегистрироваться и прослушивать гипотезы и фразы о завершенных событиях. Методы Start() и Stop() соответственно включают и отключают распознавание диктовки. После завершения работы с распознавателем его необходимо удалить с помощью метода Dispose(), чтобы освободить используемые им ресурсы. Эти ресурсы будут освобождены автоматически во время сборки мусора за дополнительную плату, если они не будут освобождены до этого.

using UnityEditor; using UnityEngine; using UnityEngine.UI; using UnityEngine.Windows.Speech;

public class DictationScript : MonoBehaviour { [SerializeField] private Text m_Hypotheses;

[SerializeField] private Text m_Recognitions;

private DictationRecognizer m_DictationRecognizer;

void Start() { m_DictationRecognizer = new DictationRecognizer();

m_DictationRecognizer.DictationResult += (text, confidence) => { Debug.LogFormat("Dictation result: {0}", text); m_Recognitions.text += text + "\n"; };

m_DictationRecognizer.DictationHypothesis += (text) => { Debug.LogFormat("Dictation hypothesis: {0}", text); m_Hypotheses.text += text; };

m_DictationRecognizer.DictationComplete += (completionCause) => { if (completionCause != DictationCompletionCause.Complete) Debug.LogErrorFormat("Dictation completed unsuccessfully: {0}.", completionCause); };

m_DictationRecognizer.DictationError += (error, hresult) => { Debug.LogErrorFormat("Dictation error: {0}; HResult = {1}.", error, hresult); };

m_DictationRecognizer.Start(); } }

Распознаватель диктовки в настоящее время работает только в Windows 10 и требует, чтобы диктовка была разрешена в политике конфиденциальности пользователя (Settings->Privacy->Speech, рукописный ввод и ввод). Если диктовка не включена, DictationRecognizer завершится ошибкой при Start Разработчики могут справиться с этой ошибкой в зависимости от приложения, предоставив делегат DictationError и проверив SPERR_SPEECH_PRIVACY_POLICY_NOT_ACCEPTED (0x80045509).

Свойства

AutoSilenceTimeoutSeconds Продолжительность времени в секундах до завершения сеанса распознавания диктовки из-за отсутствия аудиовхода.
InitialSilenceTimeoutSeconds Продолжительность времени в секундах до завершения сеанса распознавателя диктовки из-за отсутствия аудиовхода, если в текущем сеансе не было слышно звука.
Status Указывает состояние распознавателя диктовки.

Конструкторы

DictationRecognizer Создаёт DictationRecognizer с указанной минимальной достоверностью и ограничением темы диктовки. Фразы ниже указанного минимального уровня будут игнорироваться.

Публичные Методы

Dispose Удаляет ресурсы, которые использует этот распознаватель диктовки.
Start Запускает сеанс распознавания диктовки. Распознаватель диктовки можно запустить только в том случае, если PhraseRecognitionSystem не запущена.
Stop Останавливает сеанс распознавания диктовки.

События

DictationComplete Событие, которое запускается после завершения сеанса распознавателя.
DictationError Событие, которое запускается, когда сеанс распознавателя обнаруживает ошибку.
DictationHypothesis Событие, которое срабатывает, когда распознаватель меняет свою гипотезу для текущего фрагмента.
DictationResult Событие, указывающее, что фраза была распознана с заданным уровнем достоверности.

Делегаты

DictationCompletedDelegate Делегат для события DictationComplete.
DictationErrorHandler Делегат для события DictationError.
DictationHypothesisDelegate Обратный вызов, указывающий на событие изменения гипотезы. Вы должны зарегистрироваться на мероприятии DictationHypothesis.
DictationResultDelegate Обратный вызов, указывающий, что фраза была распознана с указанным уровнем достоверности. Вы должны зарегистрироваться в событии DictationResult.
Вы можете отблагодарить автора, за перевод документации на русский язык. Донат
API скрипты 2021.3