Errata E11 (EventHandler onvoiceschanged) and E12 (SpeechSynthesisErrorEvent).
--- a/speechapi-errata.html Tue Sep 24 08:59:00 2013 -0700
+++ b/speechapi-errata.html Thu Oct 17 16:57:41 2013 -0700
@@ -9,7 +9,7 @@
<h1 align="center">Errata in the Web Speech API Specification</h1>
<dl>
<dt>This document last updated:</a></dt>
- <dd>September 24, 2013</dd>
+ <dd>October 17, 2013</dd>
<dt>This document records known errors in the document:</a></dt>
<dd><a href="http://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html">
http://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html</a>
@@ -93,5 +93,77 @@
(For example, two frames may have the same origin and each will contain a SpeechSynthesis object.)</ul>
</dd>
</dl>
+ <dl>
+ <dt>E11 2013-10-17 (Important):</dt>
+ <dd>Section 5.2 IDL: "<b>attribute EventHandler onvoiceschanged;</b>" is added to "interface SpeechSynthesis : EventTarget".
+ </dd>
+ <dd>Section 5.2.2 getVoices method: append at the end of the definition:
+ <ul>If there are no voices available, or if the the list of available voices is not yet known
+ (for example: server-side synthesis where the list is determined asynchronously),
+ then this method MUST return a SpeechSynthesisVoiceList of length zero.</ul>
+ </dd>
+ <dd>New "Section 5.2.2.1 SpeechSynthesis Events" is created and contains:
+ <ul>voiceschanged: Fired when the contents of the SpeechSynthesisVoiceList, that the getVoices method will return, have changed.
+ Examples include: server-side synthesis where the list is determined asynchronously, or when client-side voices are installed/uninstalled.</ul>
+ </dd>
+ </dl>
+ <dl>
+ <dt>E12 2013-10-17 (Important):</dt>
+ <dd>Section 5.2 IDL: Add the following:
+ <pre>
+ interface SpeechSynthesisErrorEvent extends SpeechSynthesisEvent {
+ enum ErrorCode {
+ "canceled",
+ "interrupted",
+ "audio-busy",
+ "audio-hardware",
+ "network",
+ "synthesis-unavailable",
+ "synthesis-failed",
+ "language-unavailable",
+ "voice-unavailable",
+ "text-too-long",
+ "invalid-argument",
+ };
+
+ readonly attribute ErrorCode error;
+ };
+ </pre>
+ </dd>
+ <dd>Section 5.2.4 SpeechSynthesisUtterance Events: change first sentence to:
+ <ul>Each of these events MUST use the SpeechSynthesisEvent interface, except the error event which MUST use the SpeechSynthesisErrorEvent interface.</ul>
+ </dd>
+ <dd>New "Section 5.2.5.1 SpeechSynthesisErrorEvent Attributes" is added and contains:
+ <ul>error attribute
+ <ul>The errorCode is an enumeration indicating what has gone wrong. The values are:
+ <ul>"canceled"
+ A cancel method call caused the SpeechSynthesisUtterance to be removed from the queue before it had begun being spoken.</ul>
+ <ul>"interrupted"
+ A cancel method call caused the SpeechSynthesisUtterance to be interrupted after it has begun being spoken and before it completed.</ul>
+ <ul>"audio-busy"
+ The operation cannot be completed at this time because the user-agent cannot access the audio output device.
+ (For example, the user may need to correct this by closing another application.)</ul>
+ <ul>"audio-hardware"
+ The operation cannot be completed at this time because the user-agent cannot identify an audio output device.
+ (For example, the user may need to connect a speaker or configure system settings.)</ul>
+ <ul>"network"
+ The operation cannot be completed at this time because some required network communication failed.</ul>
+ <ul>"synthesis-unavailable"
+ The operation cannot be completed at this time because no synthesis engine is available.
+ (For example, the user may need to install or configure a synthesis engine.)</ul>
+ <ul>"synthesis-failed"
+ The operation failed because synthesis engine had an error.</ul>
+ <ul>"language-unavailable"
+ No appropriate voice is available for the language designated in SpeechSynthesisUtterance lang.</ul>
+ <ul>"voice-unavailable"
+ The voice designated in SpeechSynthesisUtterance voiceURI is not available.</ul>
+ <ul>"text-too-long"
+ The contents of the SpeechSynthesisUtterance text attribute is too long to synthesize.</ul>
+ <ul>"invalid-argument"
+ The contents of the SpeechSynthesisUtterance rate, pitch or volume attribute is not supported by synthesizer.</ul>
+ </ul>
+ </ul>
+ </dd>
+ </dl>
</body>
</html>