From 95aca4b4d8fa62815d4bd412fff1a364f842814a Mon Sep 17 00:00:00 2001 From: Ryan Johnson Date: Thu, 29 Apr 2021 16:16:42 -0700 Subject: remove retired locales (#699) --- files/id/web/api/speechsynthesis/index.html | 151 ---------------------------- 1 file changed, 151 deletions(-) delete mode 100644 files/id/web/api/speechsynthesis/index.html (limited to 'files/id/web/api/speechsynthesis/index.html') diff --git a/files/id/web/api/speechsynthesis/index.html b/files/id/web/api/speechsynthesis/index.html deleted file mode 100644 index 78a50f3f47..0000000000 --- a/files/id/web/api/speechsynthesis/index.html +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: SpeechSynthesis -slug: Web/API/SpeechSynthesis -tags: - - API - - Experimental - - Interface - - NeedsTranslation - - Reference - - SpeechSynthesis - - TopicStub - - Web Speech API - - speech - - synthesis -translation_of: Web/API/SpeechSynthesis ---- -

{{APIRef("Web Speech API")}}{{SeeCompatTable}}

- -

The SpeechSynthesis interface of the Web Speech API is the controller interface for the speech service; this can be used to retrieve information about the synthesis voices available on the device, start and pause speech, and other commands besides.

- -

Properties

- -

SpeechSynthesis also inherits properties from its parent interface, {{domxref("EventTarget")}}.

- -
-
{{domxref("SpeechSynthesis.paused")}} {{readonlyinline}}
-
A {{domxref("Boolean")}} that returns true if the SpeechSynthesis object is in a paused state.
-
{{domxref("SpeechSynthesis.pending")}} {{readonlyinline}}
-
A {{domxref("Boolean")}} that returns true if the utterance queue contains as-yet-unspoken utterances.
-
{{domxref("SpeechSynthesis.speaking")}} {{readonlyinline}}
-
A {{domxref("Boolean")}} that returns true if an utterance is currently in the process of being spoken — even if SpeechSynthesis is in a paused state.
-
- -
-
- -

Methods

- -

SpeechSynthesis also inherits methods from its parent interface, {{domxref("EventTarget")}}.

- -
-
{{domxref("SpeechSynthesis.cancel()")}}
-
Removes all utterances from the utterance queue.
-
{{domxref("SpeechSynthesis.getVoices()")}}
-
Returns a list of {{domxref("SpeechSynthesisVoice")}} objects representing all the available voices on the current device.
-
{{domxref("SpeechSynthesis.pause()")}}
-
Puts the SpeechSynthesis object into a paused state.
-
{{domxref("SpeechSynthesis.resume()")}}
-
Puts the SpeechSynthesis object into a non-paused state: resumes it if it was already paused.
-
{{domxref("SpeechSynthesis.speak()")}}
-
Adds an {{domxref("SpeechSynthesisUtterance", "utterance")}} to the utterance queue; it will be spoken when any other utterances queued before it have been spoken.
-
- -

Events

- -

Listen to this event using addEventListener() or by assigning an event listener to the oneventname property of this interface.

- -
-
voiceschanged
-
Fired when the list of {{domxref("SpeechSynthesisVoice")}} objects that would be returned by the {{domxref("SpeechSynthesis.getVoices()")}} method has changed.
- Also available via the onvoiceschanged property.
-
- -

Examples

- -

In our basic Speech synthesiser demo, we first grab a reference to the SpeechSynthesis controller using window.speechSynthesis. After defining some necessary variables, we retrieve a list of the voices available using {{domxref("SpeechSynthesis.getVoices()")}} and populate a select menu with them so the user can choose what voice they want.

- -

Inside the inputForm.onsubmit handler, we stop the form submitting with preventDefault(),  create a new {{domxref("SpeechSynthesisUtterance")}} instance containing the text from the text {{htmlelement("input")}}, set the utterance's voice to the voice selected in the {{htmlelement("select")}} element, and start the utterance speaking via the {{domxref("SpeechSynthesis.speak()")}} method.

- -
var synth = window.speechSynthesis;
-
-var inputForm = document.querySelector('form');
-var inputTxt = document.querySelector('.txt');
-var voiceSelect = document.querySelector('select');
-
-var pitch = document.querySelector('#pitch');
-var pitchValue = document.querySelector('.pitch-value');
-var rate = document.querySelector('#rate');
-var rateValue = document.querySelector('.rate-value');
-
-var voices = [];
-
-function populateVoiceList() {
-  voices = synth.getVoices();
-
-  for(i = 0; i < voices.length ; i++) {
-    var option = document.createElement('option');
-    option.textContent = voices[i].name + ' (' + voices[i].lang + ')';
-
-    if(voices[i].default) {
-      option.textContent += ' -- DEFAULT';
-    }
-
-    option.setAttribute('data-lang', voices[i].lang);
-    option.setAttribute('data-name', voices[i].name);
-    voiceSelect.appendChild(option);
-  }
-}
-
-populateVoiceList();
-if (speechSynthesis.onvoiceschanged !== undefined) {
-  speechSynthesis.onvoiceschanged = populateVoiceList;
-}
-
-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];
-    }
-  }
-  utterThis.pitch = pitch.value;
-  utterThis.rate = rate.value;
-  synth.speak(utterThis);
-
-  inputTxt.blur();
-}
- -

Specifications

- - - - - - - - - - - - - - -
SpecificationStatusComment
{{SpecName('Web Speech API', '#tts-section', 'SpeechSynthesis')}}{{Spec2('Web Speech API')}} 
- -

Browser compatibility

- -
- - -

{{Compat("api.SpeechSynthesis")}}

-
- -

See also

- - -- cgit v1.2.3-54-g00ecf