SpeechSynthesisUtterance.voice
The voice
property of the SpeechSynthesisUtterance
(en-US) interface gets and sets the voice that will be used to speak the utterance.
This should be set to one of the SpeechSynthesisVoice
(en-US) objects returned by SpeechSynthesis.getVoices()
. If not set by the time the utterance is spoken, the voice used will be the most suitable default voice available for the utterance's lang
(en-US) setting.
Syntax
var myVoice = speechSynthesisUtteranceInstance.voice; speechSynthesisUtteranceInstance.voice = speechSynthesisVoiceInstance;
Value
A SpeechSynthesisVoice
(en-US) object.
Examples
js
var synth = window.speechSynthesis;
var inputForm = document.querySelector('form');
var inputTxt = document.querySelector('input');
var voiceSelect = document.querySelector('select');
var voices = synth.getVoices();
...
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 |
---|
Web Speech API # dom-speechsynthesisutterance-voice |
Browser compatibility
BCD tables only load in the browser