Text-to-speech browser extension button
- Easy option: add Talkie to Chrome in the Chrome Web Store.
- Developer option: use the source code directly.
- Select desired text on any web page.
- Click the Talkie button in your browser bar
You can also select the text, then right click on it, and choose Talkie in the menu. This way also works in PDF-files and some special types of pages in Chrome.
A convenient option is to use the Talkie shortcut key:
- ⌘+Shift+A on macOS
- Ctrl+Shift+A on Windows, Linux, Chrome OS
- If the key does not work, please check that it is not already in use by another extension.
How to check or change the Talkie shortcut key
- In Chrome, click *Extensions* in the *Window* menu.
At the bottom of the extensions list, click *Keyboard shortcuts* in the lower right corner.
From the *Keyboard Shortcuts for Extensions and Apps* window you can check or change keyboard shortcuts for all Chrome extensions and apps. This way you also can verify that there are no shortcut key collisions between extensions.
You can also reach the extensions page directly with [`chrome://extensions/`](chrome://extensions/) and the keyboard shortcut configuration with [`chrome://extensions/configureCommands`](chrome://extensions/configureCommands), but you might have to copy-paste the address manually.
- Free but your donations are highly appreciated!
- Lets you listen to the selected text on any part of a page – short snippets or entire news articles. Just highlight what you want to hear read aloud and hit play.
- Automatically detects the text language per-page, and chooses a voice in the same language to match it.
- Privacy aware – no unnecessary tracking or external services.
Web Speech API
Uses your browser's built-in [Web Speech API for text-to-speech (TTS)](https://www.w3.org/community/speech-api/) known as [Speech Synthesis](https://dvcs.w3.org/hg/speech-api/raw-file/9a0075d25326/speechapi.html#tts-section).
- As the Web Speech API is implemented by your browser, your browser selection and settings may affect Talkie.
- All text and speech is processed internally by your browser. While ultimately depending on your specific browser, processing is expected to be done on your own machine and not use a server.
- Sound is only produced, never recorded.
Not all languages are supported; consult your browser's voice documentation.
The language detection is done in four steps, where the first valid value is chosen. If no language was detected, a notice is spoken (in English).
- Your browser's text language detection for the selection, using word and sentence analysis.
- The first available `lang="..."` attribute from the selected text's parent HTML elements.
- The `lang="..."` attribute from the HTML root element of the current page (or frame).
- Your browser's page primary language detection.
While the Web Speech API can use more than one voice per language (currently over 20 for `en-US` in Google Chrome version 55), as well as modify speech rate and pitch, these kinds of options have not been implemented. I am *considering* to develop it as a paid feature for those who install the extension through the Chrome Web Store.
The voices for each language are provided by your browser. For this reason the list may differ depending on your browser, browser version, operating system, and any other installed extensions/software.
You can see the list of languages/voices available in your specific browser, as well as speak out sample text, in the Talkie options. This is a good start in figuring out why a certain language might not be read out loud as expected.
In case you have no voices for TTS installed at all, try installing [US English Female Text-to-speech (by Google)](https://chrome.google.com/webstore/detail/us-english-female-text-to/pkidpnnapnfgjhfhkpmjpbckkbaodldb). This should enable at least US English websites to be spoken by Talkie.
Example list of voices available in Google Chrome version 55
The total number of voices is 83.
- ar-SA: Tarik
- cs-CZ: Zuzana
- da-DK: Sara
- de-DE: Anna, Google Deutsch
- el-GR: Melina
- en: Fiona
- en-AU: Karen
- en-GB: Daniel, Google UK English Female, Google UK English Male
- en-IE: Moira
- en-IN: Veena
- en-US: Agnes, Albert, Alex, Bad News, Bahh, Bells, Boing, Bruce, Bubbles, Cellos, Deranged, Fred, Good News, Google US English, Hysterical, Junior, Kathy, Pipe Organ, Princess, Ralph, Samantha, Trinoids, Vicki, Victoria, Whisper, Zarvox
- en-ZA: Tessa
- es-AR: Diego
- es-ES: Google español, Monica
- es-MX: Paulina
- es-US: Google español de Estados Unidos
- fi-FI: Satu
- fr-CA: Amelie
- fr-FR: Google français, Thomas
- he-IL: Carmit
- hi-IN: Google हिन्दी, Lekha
- hu-HU: Mariska
- id-ID: Damayanti, Google Bahasa Indonesia
- it-IT: Alice, Google italiano
- ja-JP: Google 日本語, Kyoko
- ko-KR: Google 한국의, Yuna
- nb-NO: Nora
- nl-BE: Ellen
- nl-NL: Google Nederlands, Xander
- pl-PL: Google polski, Zosia
- pt-BR: Google português do Brasil, Luciana
- pt-PT: Joana
- ro-RO: Ioana
- ru-RU: Google русский, Milena
- sk-SK: Laura
- sv-SE: Alva
- th-TH: Kanya
- tr-TR: Yelda
- zh-CN: Google 普通话（中国大陆）, Ting-Ting
- zh-HK: Google 粤語（香港）, Sin-ji
- zh-TW: Google 國語（臺灣）, Mei-Jia
- Thanks to Liron Tocker for the fancy icons and promotional graphics: