SpeechSynthesisUtterance

Этот перевод не завершен. Пожалуйста, помогите перевести эту статью с английского

Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

The SpeechSynthesisUtterance interface of the Web Speech API represents a speech request. It contains the content the speech service should read and information about how to read it (e.g. language, pitch and volume.)

Конструктор

SpeechSynthesisUtterance.SpeechSynthesisUtterance()
Возвращает новый экземпляр объекта SpeechSynthesisUtterance

Свойства

SpeechSynthesisUtterance еще наследует свойства из его своего родительского интерфейса EventTarget.

SpeechSynthesisUtterance.lang
Получает и устанавливает язык высказывания.
SpeechSynthesisUtterance.pitch
Получает и устанавливает высоту, на которой произносится высказывание
SpeechSynthesisUtterance.rate
Получает и устанавливает скорость, с которой будет произноситься высказывание.
SpeechSynthesisUtterance.text
Получает и устанавливает текст, который будет синтезироваться при произнесении высказывания.
SpeechSynthesisUtterance.voice
Получает и устанавливает голос, который будет использоваться для произнесения речи.
SpeechSynthesisUtterance.volume
Получает и устанавливает громкость, на котором будет произноситься высказывание.

Обработчики событий

SpeechSynthesisUtterance.onboundary
Срабатывает, когда произнесенное высказывание достигает границы слова или предложения.
SpeechSynthesisUtterance.onend
Срабатывает, когда произнесение произнесено.
SpeechSynthesisUtterance.onerror
Срабатывает, когда возникает ошибка, которая препятствует успешному произнесению высказывания.
SpeechSynthesisUtterance.onmark
Срабатывает, когда произнесенное высказывание достигает названного тега метки «SSML».
SpeechSynthesisUtterance.onpause
Срабатывает, когда высказывание приостановлено.
SpeechSynthesisUtterance.onresume
Срабатывает, когда приостановленное высказывание возобновляется.
SpeechSynthesisUtterance.onstart
Срабатывает, когда произнесение произнесено.

Examples

В нашей базовой Демо-версия синтезатора речи, мы сначала получаем ссылку на контроллер SpeechSynthesis, используя window.speechSynthesis. После определения некоторых необходимых переменных мы получаем список доступных голосов, используя SpeechSynthesis.getVoices(), и заполнить меню выбора с ними, чтобы пользователь мог выбрать, какой голос он хочет.

Внутри обработчика inputForm.onsubmit мы останавливаем отправку формы с помощью preventDefault(), используйте constructor для создания нового экземпляра высказывания, содержащего текст из текста <input>, установите voiceна голос, выбранный в элементе <select> и начните высказывание через SpeechSynthesis.speak() метод.

var synth = window.speechSynthesis;

var inputForm = document.querySelector('form');
var inputTxt = document.querySelector('input');
var voiceSelect = document.querySelector('select');

var voices = synth.getVoices();

for(i = 0; i < voices.length ; i++) {
  var option = document.createElement('option');
  option.textContent = voices[i].name + ' (' + voices[i].lang + ')';
  option.setAttribute('data-lang', voices[i].lang);
  option.setAttribute('data-name', voices[i].name);
  voiceSelect.appendChild(option);
}

inputForm.onsubmit = function(event) {
  event.preventDefault();

  var utterThis = new SpeechSynthesisUtterance(inputTxt.value);
  var selectedOption = voiceSelect.selectedOptions[0].getAttribute('data-name');
  for(i = 0; i < voices.length ; i++) {
    if(voices[i].name === selectedOption) {
      utterThis.voice = voices[i];
    }
  }
  synth.speak(utterThis);
  inputTxt.blur();
}

Specifications

Specification Status Comment
Web Speech API
Определение 'SpeechSynthesisUtterance' в этой спецификации.
Черновик  

Browser compatibility

Update compatibility data on GitHub
КомпьютерыМобильные
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidFirefox для AndroidOpera для AndroidSafari on iOSSamsung Internet
SpeechSynthesisUtterance
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка ДаFirefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
SpeechSynthesisUtterance() constructor
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка ДаFirefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
boundary event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
end event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
error event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
lang
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
mark event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onboundary
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onend
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onerror
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onmark
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onpause
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onresume
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
onstart
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
pause event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
pitch
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
rate
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
resume event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
start event
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
text
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
voice
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0
volume
Экспериментальная
Chrome Полная поддержка 33Edge Полная поддержка 14Firefox Полная поддержка 49IE Нет поддержки НетOpera Полная поддержка 21Safari Полная поддержка 7WebView Android Нет поддержки НетChrome Android Полная поддержка 33Firefox Android Полная поддержка 62
Полная поддержка 62
Нет поддержки 61 — 62
Отключено
Отключено From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Нет поддержки НетSafari iOS Полная поддержка 7Samsung Internet Android Полная поддержка 3.0

Легенда

Полная поддержка  
Полная поддержка
Нет поддержки  
Нет поддержки
Экспериментальная. Ожидаемое поведение может измениться в будущем.
Экспериментальная. Ожидаемое поведение может измениться в будущем.
Пользователь должен сам включить эту возможность.
Пользователь должен сам включить эту возможность.

See also