Sebastian Skuse

UI & UX designer
Accessibility expert
Developer

ATBar

ATBar is a project to create an Accessibility Toolbar which would run in any browser, on any Operating System.
The Toolbar provides common Accessibility functions such as increasing the text size, changing the font and line spacing and pre-made high-visibility page styles, as well as more advanced functions such as a Dictionary, Spell Checker and a Text-to-Speech system.

Currently, there is no unified plugin framework between browsers, and some browsers have no plugin framework at all. We decided to use JavaScript – as this was the common language supported between all the browsers – and create a bookmarklet which could also be used with User Scripts and Greasemonkey.
We were also able to use the same code, without any modification, to allow embedding the toolbar in webpages. This allows people to use the Toolbar on sites that have embedded it, without the user having to install it.

How did you get Text-to-Speech working using a Bookmarklet?

A large technical hurdle that we had to overcome was to get Text-to-Speech working without access to the user’s machine. Because JavaScript runs inside the browser, doing processing on the user’s machine was not possible.

To overcome this, the system encodes all the information contained in the page (or selected text, if the user has chosen this option), and sends it over to a server using a form of JSONP.
Once all the data has arrived at the server it is decoded, reconstructed, and passed through a custom algorithm separating sentences or semantically relevant parts of sentences optimised for encoding. These are then all passed through Festival one at a time, with the first of these having a high priority on the server.
While this is taking place, the server has already sent a response to the client, telling it an ETA for the first piece of audio, the future location of all the audio files and runtime information. The ToolBar then loads this information into JWPlayer and waits for the ETA to occur and then starts playing.

Because of the way this has been built, it means that almost all pages will take ~4 seconds until the user gets the start of the audio stream. The aforementioned algorithm optimises the audio so that the gaps that occur while switching audio files simply sound like pauses at the end of sentences, commas or semi-colons to the user, providing a seemingly seamless stream of audio.

Do you have any information on usage?

We’ve recently installed a new statistics module in the Toolbar. Information from this is still too new to be able to pull out any major trends yet, but here is some of the information we have collated so far.

  • The toolbar is in use in at least 100 .ac.uk institutions on a regular basis.
  • We’ve had uses from high-profile .gov.uk, .gov institutions.
  • We’re averaging about 7000 uses per day of the Lite/Embedded version (we cannot chart full installations).
  • The most popular type of site for a Embedded copy is a Moodle install.

If you want more detailed stats please feel free to contact me.

Where now?

We’ve actually got some interesting ideas for Version 2 that we’d love to put into practice making the whole system a lot more flexible and the basis of it multi-purpose. More information on that soon (I hope)!

Comments are closed.