Interfața speechSynthesis din cadrul Web Speech API permite aplicațiilor web să genereze voce sintetică din text.
Sinteză vocală de bază
const msg = new SpeechSynthesisUtterance('Salut, lume!');
window.speechSynthesis.speak(msg);
Personalizarea proprietăților vocale și evenimentelor
const msg = new SpeechSynthesisUtterance('Bun venit în aplicația noastră');
msg.rate = 1.0; // Viteză: 0.1 până la 10 (implicit 1)
msg.pitch = 1.2; // Tonalitate: 0 până la 2 (implicit 1)
msg.volume = 1.0; // Volum: 0 până la 1 (implicit 1)
msg.lang = 'en-US';
// Ascultători de evenimente
msg.onstart = () => console.log('Redarea vocală a început');
msg.onend = () => console.log('Redarea vocală s-a finalizat');
msg.onerror = (e) => console.error('Eroare vocală:', e);
window.speechSynthesis.speak(msg);
Selectarea vocilor instalate
window.speechSynthesis.onvoiceschanged = () => {
const voices = window.speechSynthesis.getVoices();
const selectedVoice = voices.find(v => v.lang === 'en-US' && v.name.includes('Google'));
if (selectedVoice) {
msg.voice = selectedVoice;
}
};
Comenzi de control
window.speechSynthesis.pause(); // Pune redarea pe pauză
window.speechSynthesis.resume(); // Reia redarea întreruptă
window.speechSynthesis.cancel(); // Anulează și golește coada de redare vocală