Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7678)

Unified Diff: chrome/common/extensions/docs/static/experimental.ttsEngine.html

Issue 7282048: Update TTS extension API docs to reflect latest changes. Note that this (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/static/experimental.ttsEngine.html
===================================================================
--- chrome/common/extensions/docs/static/experimental.ttsEngine.html (revision 92678)
+++ chrome/common/extensions/docs/static/experimental.ttsEngine.html (working copy)
@@ -2,7 +2,7 @@
Use the <code>chrome.experimental.ttsEngine</code> module to
implement a text-to-speech (TTS) engine using an extension. If your
extension registers using this API, it will receive events containing
-the intended utterance and other parameters when any extension or packaged
+an utterance to be spoken and other parameters when any extension or packaged
app uses the
<a href="experimental.tts.html">experimental.tts</a>
module to generate speech. Your extension can then use any available
@@ -64,8 +64,8 @@
<p>The <code>voice_name</code> parameter is required. The name should be
descriptive enough that it identifies the name of the voice and the
engine used. In the unlikely event that two extensions register voices
-with the same name, a client can manually specify the extension id it
-wants to do the synthesis.</p>
+with the same name, a client can specify the ID of the extension that
+should do the synthesis.</p>
<p>The <code>gender</code> parameter is optional. If your voice corresponds
to a male or female voice, you can use this parameter to help clients
@@ -83,30 +83,34 @@
<p>Finally, the <code>event_types</code> parameter is required if the engine can
send events to update the client on the progress of speech synthesis.
At a minimum, supporting the <code>'end'</code> event type to indicate
-when speech is finished is highly recommend, otherwise it's impossible
-for Chrome to schedule queued utterances.</p>
+when speech is finished is highly recommended, otherwise Chrome cannot
+schedule queued utterances.</p>
-<p class="note">If your TTS engine does not support the <code>'end'</code>
-event type, Chrome will pass the <code>enqueue</code> option to
-onSpeak, so that your engine can implement its own queuing. However, this is
-discouraged because it means that users cannot queue utterances that get
-sent to different speech engines.</p>
+<p class="note">
+<strong>Note:</strong> If your TTS engine does not support
+the <code>'end'</code> event type, Chrome cannot queue utterances
+because it has no way of knowing when your utterance has finished. To
+help mitigate this, Chrome passes an additional boolean <code>enqueue</code>
+option to your engine's onSpeak handler, giving you the option of
+implementing your own queueing. This is discouraged because then
+clients are unable to queue utterances that should get spoken by different
+speech engines.</p>
-<p>The possible event types you can send correspond to the event types that
-the <code>speak()</code> method receives:</p>
+<p>The possible event types that you can send correspond to the event types
+that the <code>speak()</code> method receives:</p>
<ul>
- <li><code>'start'</code>: the engine has started speaking the utterance.
- <li><code>'word'</code>: a word boundary was reached. Use
+ <li><code>'start'</code>: The engine has started speaking the utterance.
+ <li><code>'word'</code>: A word boundary was reached. Use
<code>event.charIndex</code> to determine the current speech
position.
- <li><code>'sentence'</code>: a sentence boundary was reached. Use
+ <li><code>'sentence'</code>: A sentence boundary was reached. Use
<code>event.charIndex</code> to determine the current speech
position.
- <li><code>'marker'</code>: an SSML marker was reached. Use
+ <li><code>'marker'</code>: An SSML marker was reached. Use
<code>event.charIndex</code> to determine the current speech
position.
- <li><code>'end'</code>: the engine has finished speaking the utterance.
+ <li><code>'end'</code>: The engine has finished speaking the utterance.
<li><code>'error'</code>: An engine-specific error occurred and
this utterance cannot be spoken.
Pass more information in <code>event.errorMessage</code>.
@@ -115,11 +119,12 @@
<p>The <code>'interrupted'</code> and <code>'cancelled'</code> events are
not sent by the speech engine; they are generated automatically by Chrome.</p>
-<p>The information about your extensions's voices from your manifest
-will be returned to any client that calls <code>getVoices</code>, assuming
-you've also registered speech event listeners as described below.</p>
+<p>Text-to-speech clients can get the voice information from your
+extension's manifest by calling
+<a href="experimental.tts.html#method-getVoices">getVoices()</a>,
+assuming you've registered speech event listeners as described below.</p>
-<h2 id="handling_speech_events">Handling Speech Events</h2>
+<h2 id="handling_speech_events">Handling speech events</h2>
<p>To generate speech at the request of clients, your extension must
register listeners for both <code>onSpeak</code> and <code>onStop</code>,
@@ -140,7 +145,9 @@
chrome.experimental.ttsEngine.onSpeak.addListener(speakListener);
chrome.experimental.ttsEngine.onStop.addListener(stopListener);</pre>
-<p class="warning">If an extension does not register listeners for both
+<p class="warning">
+<b>Important:</b>
+If your extension does not register listeners for both
<code>onSpeak</code> and <code>onStop</code>, it will not intercept any
speech calls, regardless of what is in the manifest.</p>
@@ -149,4 +156,4 @@
parameters in its manifest and has registered listeners
for <code>onSpeak</code> and <code>onStop</code>. In other words,
there's no way for an extension to receive a speech request and
-dynamically decide whether to handle it or not.</p>
+dynamically decide whether to handle it.</p>
« no previous file with comments | « chrome/common/extensions/docs/static/experimental.tts.html ('k') | chrome/renderer/resources/extension_process_bindings.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698