SpeechSynthesisUtterance: свойство rate
Базовая Широко доступна
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2018 года.
Свойство rate интерфейса SpeechSynthesisUtterance получает и устанавливает скорость воспроизведения произношения.
Если не задано, используется значение по умолчанию 1.
Значение
Число с плавающей точкой, представляющее значение скорости. Оно может изменяться от 0,1 (минимальное) до 10 (максимальное), при этом 1 — это скорость по умолчанию для текущей платформы или голоса, которая соответствует нормальной скорости речи. Другие значения действуют как процентное отношение к этому, например, 2 — вдвое быстрее, 0,5 — вдвое медленнее и т. д.
Некоторые движки синтеза речи или голоса могут ограничивать минимальное и максимальное значение скорости. Если используется SSML, это значение будет переопределено тегами prosody в разметке.
Примеры
Настройка скорости воспроизведения
В этом примере мы можем настроить скорость воспроизведения с помощью ползунка, а затем воспроизвести произношение кнопкой «Воспроизвести».
HTML
<p id="text">It was a dark and stormy night.</p> <div id="rate-control"> <label for="rate">Rate:</label> <input type="range" min="0.5" max="2" value="1" step="0.1" id="rate" /> </div> <button id="play">Play</button>
CSS
body {
font-family: sans-serif;
}
#rate-control {
display: flex;
align-items: center;
gap: 1rem;
margin: 1rem 0;
}
JavaScript
const synth = window.speechSynthesis;
const text = document.querySelector("#text");
const play = document.querySelector("#play");
const rate = document.querySelector("#rate");
function speak() {
if (synth.speaking) {
synth.cancel();
}
const utterThis = new SpeechSynthesisUtterance(text.textContent);
utterThis.addEventListener("error", () => {
console.error("SpeechSynthesisUtterance error");
});
utterThis.rate = rate.value;
synth.speak(utterThis);
}
play.addEventListener("click", speak);
Вывод
Спецификации
| Спецификация |
|---|
| Web Speech API # dom-speechsynthesisutterance-rate |
Совместимость браузеров
| Десктопные | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
rate |
33 | 14 | 49 | 21 | 7 | 33 | 62 | Нет | 7 | 3.0 | Нет |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesisUtterance/rate