Issue metadata
Sign in to add a comment
|
Chrome OS only supports ~10 text-to-speech languages out of the box |
||||||||||||||||||||||||
Issue descriptionChrome OS only includes 10 text-to-speech languages from Google's speech engine in the OOBE. While there are additional first-party and third-party voices that can be downloaded later, we don't have any way for a blind user who speaks Swedish, for example, to use their Chromebook out of the box. The solution here is to include Espeak (or Espeak NG), a small, lightweight, low-quality speech engine that supports over a hundred human languages. It's only around ~5 MB. It makes sense to include that and maybe even take away some of the less commonly used Google speech engine voices by default.
,
Jul 11
,
Aug 3
Patches: https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/1158797 https://chromium-review.googlesource.com/c/chromium/src/+/1158795
,
Aug 17
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/a694a44a737d966b3f721b710860ed623ef30017 commit a694a44a737d966b3f721b710860ed623ef30017 Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Fri Aug 17 04:25:15 2018 Add eSpeak-NG ebuild. BUG= chromium:862710 TEST=Manually verified files install in correct location; won't work until Chrome change lands after this one. Change-Id: I5be3b04ed3a0efd6f06a7d3a9f422149da72cb22 Reviewed-on: https://chromium-review.googlesource.com/1158797 Commit-Ready: Dominic Mazzoni <dmazzoni@chromium.org> Tested-by: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [add] https://crrev.com/a694a44a737d966b3f721b710860ed623ef30017/app-accessibility/espeak-ng/Manifest [add] https://crrev.com/a694a44a737d966b3f721b710860ed623ef30017/app-accessibility/espeak-ng/espeak-ng-1.49.3.1.ebuild
,
Sep 7
will this happen in chromeos 70 dev? no espeak in canary canary is now on 71
,
Sep 14
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c996527a66944e7e4498c3c112e62e407e2e5e99 commit c996527a66944e7e4498c3c112e62e407e2e5e99 Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Fri Sep 14 03:13:59 2018 Refactor TTS engine extension API code First, splits TtsExtensionEngine out of tts_engine_extension_api and renames it TtsEngineDelegateImpl, since it implements the TtsEngineDelegate interface. Basically there were two separate things in one source file, so I split it into two. Then, this change makes TtsEngineDelegateImpl into a BrowserContext-keyed service with a factory, so that we can have one instance per BrowserContext. This will be handy for future changes because I'd like to cache the vector of VoiceData per-BrowserContext. For now, this is just a pure refactoring. There should be no functional changes. Bug: 862710 Change-Id: I34d92b244a1c5c684c2505ac0076a2f818e85b1a Reviewed-on: https://chromium-review.googlesource.com/1220687 Reviewed-by: David Tseng <dtseng@chromium.org> Reviewed-by: Demetrios Papadopoulos <dpapad@chromium.org> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Cr-Commit-Position: refs/heads/master@{#591278} [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/BUILD.gn [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/chrome_content_browser_client.cc [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_delegate_factory_impl.cc [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_delegate_factory_impl.h [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_delegate_impl.cc [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_delegate_impl.h [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_extension_api.cc [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_extension_api.h [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_extension_observer.cc [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/extension_api/tts_engine_extension_observer.h [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_chromeos.cc [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_controller.h [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_controller_impl.cc [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_controller_impl.h [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_engine_delegate.cc [add] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/speech/tts_engine_delegate.h [modify] https://crrev.com/c996527a66944e7e4498c3c112e62e407e2e5e99/chrome/browser/ui/webui/settings/tts_handler.cc
,
Sep 14
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/52218b819bafa8c4247a2d333e296d1c8db5b503 commit 52218b819bafa8c4247a2d333e296d1c8db5b503 Author: Daniel Bratell <bratell@opera.com> Date: Fri Sep 14 13:45:21 2018 Remove unused object field that broke some builds It's not allowed to have unused object fields but the compiler can't always know if a field is unused. In jumbo builds it will know more so sometimes those detect cases that normal compilation won't see. In this case a field only used in ChromeOS builds. In file included from gen/chrome/browser/browser_jumbo_1.cc:80: In file included from ./../../chrome/browser/chrome_content_browser_client.cc:428: In file included from ../../chrome/browser/speech/extension_api/tts_engine_delegate_factory_impl.h:10: ../../chrome/browser/speech/extension_api/tts_engine_delegate_impl.h:35:28: error: private field 'browser_context_' is not used [-Werror,-Wunused-private-field] content::BrowserContext* browser_context_; ^ TBR=dmazzoni@chromium.org Bug: 862710 Change-Id: I4eca7b940ad49fb44ec61ec513ba54db55f4914c Reviewed-on: https://chromium-review.googlesource.com/1225759 Commit-Queue: Daniel Bratell <bratell@opera.com> Reviewed-by: Daniel Bratell <bratell@opera.com> Reviewed-by: Jinho Bang <jinho.bang@samsung.com> Cr-Commit-Position: refs/heads/master@{#591337} [modify] https://crrev.com/52218b819bafa8c4247a2d333e296d1c8db5b503/chrome/browser/speech/extension_api/tts_engine_delegate_impl.cc [modify] https://crrev.com/52218b819bafa8c4247a2d333e296d1c8db5b503/chrome/browser/speech/extension_api/tts_engine_delegate_impl.h
,
Oct 17
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e7f02dfb37f73d8e8b5b810bab3f84ef9cca34d9 commit e7f02dfb37f73d8e8b5b810bab3f84ef9cca34d9 Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Wed Oct 17 01:45:50 2018 Update eSpeak-NG to 1.49.3.2 No changes to underlying eSpeak library, only the Chrome extension wrapper. Switches from ScriptProcessorNode to AudioWorkletNode for better performance, and fixes initialization of the default language. BUG= chromium:862710 TEST=Manually loaded new extension and ran TTS Debug app Change-Id: I83e30282f99462dca194d4e5beffbdc29cccba58 Reviewed-on: https://chromium-review.googlesource.com/1283630 Commit-Ready: Dominic Mazzoni <dmazzoni@chromium.org> Tested-by: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [rename] https://crrev.com/e7f02dfb37f73d8e8b5b810bab3f84ef9cca34d9/app-accessibility/espeak-ng/espeak-ng-1.49.3.2.ebuild [modify] https://crrev.com/e7f02dfb37f73d8e8b5b810bab3f84ef9cca34d9/app-accessibility/espeak-ng/Manifest
,
Oct 23
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5e903374c8b55366cca498cfe902a0432739ed06 commit 5e903374c8b55366cca498cfe902a0432739ed06 Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Tue Oct 23 04:57:25 2018 Add Espeak component extension support behind a flag See bug for more context; the Espeak extension provides a lower-quality speech engine that supports many more languages, enabling us to support virtually all world languages out-of-the-box on Chrome OS without requiring a separate download. This new engine must be in a separate component extension due to having a different license. This patch puts the extension load behind a flag, --enable-experimental-accessibility-features, because it needs some more polish before we launch it to all users. Bug: 862710 TBR=michaelpg@chromium.org Change-Id: Ia4d010fa5ff217928a3a66d17543bd4990d24c10 Reviewed-on: https://chromium-review.googlesource.com/c/1247038 Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Devlin <rdevlin.cronin@chromium.org> Cr-Commit-Position: refs/heads/master@{#601852} [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/browser/extensions/component_extensions_whitelist/whitelist.cc [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/browser/extensions/component_loader.cc [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/browser/extensions/component_loader.h [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/browser/speech/extension_api/tts_engine_extension_api.cc [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/browser/ui/webui/settings/tts_handler.cc [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/common/extensions/extension_constants.cc [modify] https://crrev.com/5e903374c8b55366cca498cfe902a0432739ed06/chrome/common/extensions/extension_constants.h
,
Oct 23
in wich canary will the flag come? På 23 oktober 2018 6:58:44 fm bugdro… via monorail <monorail+v2.3275348242@chromium.org> skrev:
,
Oct 24
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/4209e7e1caff4e853aee736c02507cb4ff3dc6ee commit 4209e7e1caff4e853aee736c02507cb4ff3dc6ee Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Wed Oct 24 20:03:18 2018 Add dependency on espeak BUG= chromium:862710 TEST=Manual Change-Id: I26f0abcc030d8e300bdb6e1f184522647a5b0387 Reviewed-on: https://chromium-review.googlesource.com/1297053 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Tested-by: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [modify] https://crrev.com/4209e7e1caff4e853aee736c02507cb4ff3dc6ee/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild
,
Oct 26
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb commit fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Fri Oct 26 18:33:12 2018 Add documentation on updating eSpeak-NG for Chrome OS. Also, address documentation feedback from a previous change: http://crrev.com/c/1195658 Bug: 862710 TBR=katie@chromium.org NOTRY=true Change-Id: I19f8456ab13719973f5c83c4b849574b92fc2ac4 Reviewed-on: https://chromium-review.googlesource.com/c/1302573 Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Cr-Commit-Position: refs/heads/master@{#603152} [modify] https://crrev.com/fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb/docs/accessibility.md [add] https://crrev.com/fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb/docs/accessibility/espeak.md [modify] https://crrev.com/fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb/docs/accessibility/patts.md [modify] https://crrev.com/fd246a0897b1cc82ad5cfa9a85242ffcc7542fbb/docs/accessibility/perf.md
,
Oct 26
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bd411c249def413d9558a22cb8cec144b4479b93 commit bd411c249def413d9558a22cb8cec144b4479b93 Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Fri Oct 26 19:26:56 2018 Address feedback in eSpeak-NG documentation. TBR=katie@chromium.org NOTRY=true Bug: 862710 Change-Id: I6d49841747cdd900570f97e128b647dc15060d04 Reviewed-on: https://chromium-review.googlesource.com/c/1302674 Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Cr-Commit-Position: refs/heads/master@{#603166} [modify] https://crrev.com/bd411c249def413d9558a22cb8cec144b4479b93/docs/accessibility/espeak.md
,
Dec 3
,
Dec 3
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/45b6eae187851aebfe310806029857e15d68a47c commit 45b6eae187851aebfe310806029857e15d68a47c Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Mon Dec 03 23:54:03 2018 Remove flag from espeak Bug: 862710 Change-Id: I84432cae10fb11134023dd68da86995855fa809f Reviewed-on: https://chromium-review.googlesource.com/c/1351088 Reviewed-by: Devlin <rdevlin.cronin@chromium.org> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Cr-Commit-Position: refs/heads/master@{#613331} [modify] https://crrev.com/45b6eae187851aebfe310806029857e15d68a47c/chrome/browser/extensions/component_loader.cc
,
Dec 4
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/ce4397f019f70e0abb357e21a7b3e45c48da7fad commit ce4397f019f70e0abb357e21a7b3e45c48da7fad Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Tue Dec 04 04:32:01 2018 Update espeak-ng engine to reduce set of langs enabled. Update to this revision, which reduces the set of languages enabled by default to just ones that are also supported by Chrome OS UI and aren't already covered by Google's TTS engine. https://chromium.googlesource.com/chromiumos/third_party/espeak-ng/+/283e31834 BUG= chromium:862710 TEST=manual Change-Id: Ie4d89db161383e59b00379847cac976c4dd7be00 Reviewed-on: https://chromium-review.googlesource.com/1351842 Commit-Ready: Dominic Mazzoni <dmazzoni@chromium.org> Tested-by: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [modify] https://crrev.com/ce4397f019f70e0abb357e21a7b3e45c48da7fad/app-accessibility/espeak-ng/Manifest [rename] https://crrev.com/ce4397f019f70e0abb357e21a7b3e45c48da7fad/app-accessibility/espeak-ng/espeak-ng-1.49.3.3.ebuild
,
Dec 4
so swedish will be removed? På 4 december 2018 5:37:01 fm bugdro… via monorail <monorail+v2.3275348242@chromium.org> skrev:
,
Dec 17
Swedish is unaffected. eSpeak supports Swedish and it will be enabled by default. Marking bug as fixed because it's feature-complete, we're just waiting on the launch bug now: crbug.com/911286 |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by dmazz...@chromium.org
, Jul 11