SpeechSynthesizer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет доступ к функциям установленного модуля синтеза речи.
public ref class SpeechSynthesizer sealed : IDisposable
public sealed class SpeechSynthesizer : IDisposable
type SpeechSynthesizer = class
interface IDisposable
Public NotInheritable Class SpeechSynthesizer
Implements IDisposable
- Наследование
-
SpeechSynthesizer
- Реализации
Примеры
Следующий пример является частью консольного приложения, которое инициализирует SpeechSynthesizer объект и произносит строку.
using System;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
SpeechSynthesizer synth = new SpeechSynthesizer();
// Configure the audio output.
synth.SetOutputToDefaultAudioDevice();
// Speak a string.
synth.Speak("This example demonstrates a basic use of Speech Synthesizer");
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Комментарии
При создании нового SpeechSynthesizer объекта используется системный голос по умолчанию. Чтобы настроить SpeechSynthesizer для использования одного из установленных голосов синтеза речи (преобразования текста в речь), используйте SelectVoice метод или SelectVoiceByHints . Чтобы получить сведения об установленных голосах, используйте GetInstalledVoices метод и VoiceInfo класс .
Этот класс также обеспечивает контроль над следующими аспектами синтеза речи:
Чтобы настроить выходные SpeechSynthesizer данные для объекта , используйте SetOutputToAudioStreamметоды , SetOutputToDefaultAudioDevice, SetOutputToNullи SetOutputToWaveFile .
Для создания речи используйте Speakметод , SpeakAsync, SpeakSsmlили SpeakSsmlAsync . может SpeechSynthesizer создавать речь из текста, Prompt объекта или PromptBuilder или из языка разметки синтеза речи (SSML) версии 1.0.
Чтобы приостановить и возобновить синтез речи, используйте методы Pause и Resume .
Чтобы добавить или удалить лексиконы, используйте методы AddLexicon и RemoveLexicon . Может SpeechSynthesizer использовать один или несколько лексиконов для управления произношением слов.
Чтобы изменить доставку выходных данных речи, используйте Rate свойства и Volume .
Вызывает SpeechSynthesizer события при обнаружении определенных функций в запросах: (BookmarkReached, PhonemeReached, VisemeReachedи SpeakProgress). Он также вызывает события, которые сообщают о начале (SpeakStarted) и конце (SpeakCompleted) операций речи и об изменении голоса речи (VoiceChange).
Примечание
Всегда вызывайте метод Dispose перед освобождением последней ссылки на класс SpeechSynthesizer. В противном случае используемые им ресурсы не будут освобождены до тех пор, пока сборщик мусора не вызовет для объекта SpeechSynthesizer метод Finalize.
Конструкторы
SpeechSynthesizer() |
Инициализирует новый экземпляр класса SpeechSynthesizer. |
Свойства
Rate |
Получает или задает скорость произношения объекта SpeechSynthesizer. |
State |
Получает текущее состояние произношения объекта SpeechSynthesizer. |
Voice |
Получает сведения о текущем голосе объекта SpeechSynthesizer. |
Volume |
Получает или задает выходной объем объекта SpeechSynthesizer. |
Методы
AddLexicon(Uri, String) |
Добавляет лексикон в объект SpeechSynthesizer. |
Dispose() |
Удаляет объект SpeechSynthesizer и освобождает ресурсы, используемые во время сеанса. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Finalize() |
Является резервным вариантом очистки ресурсов в событии на тот случай, если метод Dispose() не будет вызван. |
GetCurrentlySpokenPrompt() |
Получает запрос, который указывает SpeechSynthesizer. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetInstalledVoices() |
Возвращает все установленные голоса синтеза речи (текст в речь). |
GetInstalledVoices(CultureInfo) |
Возвращает все установленные голоса синтеза речи (преобразования текста в речь), которые поддерживают определенный языковой стандарт. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
Pause() |
Приостанавливает объект SpeechSynthesizer. |
RemoveLexicon(Uri) |
Удаляет лексикон из объекта SpeechSynthesizer. |
Resume() |
Возобновляет объект SpeechSynthesizer после того, как он был приостановлен. |
SelectVoice(String) |
Выберите конкретный голос по имени. |
SelectVoiceByHints(VoiceGender) |
Выбирает голос с определенным полом. |
SelectVoiceByHints(VoiceGender, VoiceAge) |
Выбирает голос с конкретным полом и возрастом. |
SelectVoiceByHints(VoiceGender, VoiceAge, Int32) |
Выбирает голос с определенными полом и возрастом, в зависимости от позиции, в которой упорядочиваются голоса. |
SelectVoiceByHints(VoiceGender, VoiceAge, Int32, CultureInfo) |
Выбирает голос с определенными полом, возрастом и Языковым стандартом, в зависимости от позиции, в которой упорядочиваются голоса. |
SetOutputToAudioStream(Stream, SpeechAudioFormatInfo) |
Настраивает объект SpeechSynthesizer для добавления выходных данных в аудиопоток. |
SetOutputToDefaultAudioDevice() |
Настраивает объект SpeechSynthesizer для отправки выходных данных в аудиоустройство по умолчанию. |
SetOutputToNull() |
Настраивает объект SpeechSynthesizer, чтобы не отправлять выходные данные из операций синтеза в устройство, файл или поток. |
SetOutputToWaveFile(String) |
Настраивает объект SpeechSynthesizer для добавления выходных данных в файл, содержащий данные в формате WAV. |
SetOutputToWaveFile(String, SpeechAudioFormatInfo) |
Настраивает объект SpeechSynthesizer для добавления выходных данных в файл с аудиоданными определенного формата. |
SetOutputToWaveStream(Stream) |
Настраивает объект SpeechSynthesizer для добавления выходных данных в поток содержащий данные в формате WAV. |
Speak(Prompt) |
Синхронно произносит содержимое объекта Prompt. |
Speak(PromptBuilder) |
Синхронно произносит содержимое объекта PromptBuilder. |
Speak(String) |
Синхронно произносит содержимое строки. |
SpeakAsync(Prompt) |
Асинхронно указывает содержимое объекта Prompt. |
SpeakAsync(PromptBuilder) |
Асинхронно указывает содержимое объекта PromptBuilder. |
SpeakAsync(String) |
Асинхронно указывает содержимое строки. |
SpeakAsyncCancel(Prompt) |
Отменяет асинхронную операцию синтеза для запроса в очереди. |
SpeakAsyncCancelAll() |
Отменяет все асинхронные операции синтеза речи, в очереди. |
SpeakSsml(String) |
Синхронно произносит String, содержащий разметку SSML. |
SpeakSsmlAsync(String) |
Асинхронно сообщает String, содержащий разметку SSML. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
BookmarkReached |
Возникает, когда SpeechSynthesizer встречает закладку в запросе. |
PhonemeReached |
Вызывается по достижении фонемы. |
SpeakCompleted |
Возникает, когда SpeechSynthesizer завершает воспроизводить запрос. |
SpeakProgress |
Возникает после того, как SpeechSynthesizer сообщает каждое отдельное слово запроса. |
SpeakStarted |
Возникает, когда SpeechSynthesizer начинает воспроизводить запрос. |
StateChanged |
Возникает, когда меняется состояние SpeechSynthesizer. |
VisemeReached |
Вызывается по достижении виземы. |
VoiceChange |
Возникает, когда меняется голос SpeechSynthesizer. |