Szybka pomoc

Ściągawka z Web Speech Synthesis API

Szybki przewodnik referencyjny po interfejsie Web Speech API w przeglądarce: SpeechSynthesisUtterance, tempo mowy, wysokość tonu, wybór głosu i zdarzenia.

· Opublikowano

Interfejs speechSynthesis w ramach Web Speech API umożliwia aplikacjom internetowym generowanie syntetycznego głosu z tekstu.

Podstawowa synteza mowy

const msg = new SpeechSynthesisUtterance('Witaj świecie!');
window.speechSynthesis.speak(msg);

Dostosowywanie właściwości mowy i zdarzeń

const msg = new SpeechSynthesisUtterance('Witamy w naszej aplikacji');

msg.rate = 1.0;   // Tempo mowy: 0.1 do 10 (domyślnie 1)
msg.pitch = 1.2;  // Wysokość tonu: 0 do 2 (domyślnie 1)
msg.volume = 1.0; // Głośność: 0 do 1 (domyślnie 1)
msg.lang = 'en-US';

// Nasłuchiwanie zdarzeń
msg.onstart = () => console.log('Rozpoczęto odtwarzanie mowy');
msg.onend = () => console.log('Zakończono odtwarzanie mowy');
msg.onerror = (e) => console.error('Błąd syntezy mowy:', e);

window.speechSynthesis.speak(msg);

Wybór zainstalowanych głosów

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;
  }
};

Kontrola odtwarzania

window.speechSynthesis.pause();   // Wstrzymaj odtwarzanie mowy
window.speechSynthesis.resume();  // Wznów wstrzymane odtwarzanie
window.speechSynthesis.cancel();  // Anuluj i wyczyść kolejkę mowy

Źródła i dokumentacja

Powiązane tematy