Событие закладки синтеза речи .NET не вызывается, когда нет звукового драйвера - PullRequest
0 голосов
/ 03 декабря 2018

Я обнаружил, что если звуковой драйвер отключен на ПК, событие BookmarkReached не вызывается.Как ни странно, событие SpeakCompleted вызывается как бы то ни было.Похоже, ошибка Windows.Я знаю, что если звуковой драйвер отключен, вы не услышите речь, но есть некоторые действия, которые происходят во время определенных речевых закладок, и это не работает.Может быть, мой вариант - обнаружить отсутствие звуковых драйверов и поставить подсказку, но это мое последнее средство.Есть идеи?

        synth.SpeakAsync(builder);

        eventHandlerSpeechCompleted = new EventHandler<SpeakCompletedEventArgs>(synth_SpeakCompleted);
        eventHandlerBookmarkReached = new EventHandler<BookmarkReachedEventArgs>(synth_BookmarkReached);
        synth.BookmarkReached += eventHandlerBookmarkReached;
        synth.SpeakCompleted += eventHandlerSpeechCompleted;
        this.speechCompletedAction = speechCompletedAction;
...