Specify different voices for specific content on a web page

I tried to find information on writing web pages that would be accessible to the blind, and have not yet found a lot of useful information. In particular, I am looking for how to give specific instructions for screen readers in general, on how to read the contents of my pages. I know that overriding user preferences for a screen reader can be perceived as irritability, but the content that I want to make available is poetry, plays, stories, and other types of creative writing. Since there are often many different characters in one document, it would be great if I had a way to indicate different characteristics of the voice of the screen readers, so that the blind (or anyone really) able to hear is distinguished by separate speaking characters. Right now I am using a storyteller to tell a listener who says he is very unnatural and distracting.

An example of content might be:

Brenda: Hey Jimmy! What?

Jimmy: Brenda! Look look! You look like a lady and I sound like a man!

Slow Kid: Oh ... and I sound very slow ...

So, is there a way to define tags, attributes, or somehow attach a script element to elements in order to change the voice of speech on specific content on a web page? Is there a specific standard that I can work with to present spoken text in a similar way in IE and Firefox? Regarding support for native browsers, I saw several plugins for reading from the screen, but I'm curious if there is text-to-speech support built into IE or Firefox, so I do not need to install the plugin.

Update: A hacker way to do this in Firefox:

If a simpler method is found, give a better answer!

Here's something a little promising ... "speak.js" to quote:

"speak.js is an eSpeak port, an open source speech synthesizer, from C ++ to JavaScript using Emscripten."

article on talk.js on the Mozilla Dev blog .

Source on language.js' GitHub page : quoting kripken / speak.js from readme.markdown:

"Options

You can also specify some parameters with call speak () by doing

speak('hello world', { option1: value1, option2: value2 .. })

The following options are available:

 amplitude: How loud the voice will be (default: 100) pitch: The voice pitch (default: 50) speed: The speed at which to talk (words per minute) (default: 175) voice: Which voice to use (for a non-default voice, requires you to build speak.js to include the proper data. See Language Support below) (default: en/en-us) wordgap: Additional gap between words in 10 ms units (default: 0) noWorker: Do not use a web worker (see below in 'Architecture') 

for example

speak('hello world', { pitch: 100 })

will speak in a very high voice.

Note:

This only works in Firefox. Although this is not quite what I was looking for, it seems quite possible to use javascript to parse through HTML and use attributes to run the talk command with any parameters I would like. It will take a bit of work, but in the end, I can finish the bot, which may try to read the page in context !: D

+7
source share
1 answer

The only direction that I could point you to at the moment is http://www.w3.org/TR/CSS21/aural.html and http://www.w3.org/TR/css3-speech/# aural-model .

In the wild, there is no very useful resource for optimizing assistive technologies such as screen readers. But perhaps some other members more knowledgeable than me can be of great help.

+1
source

All Articles