New text-to-speech options in Amazon Kindle App

eBooks have always been a problem for blind screenreader users. Legal eBooks are kept heavily protected to stop you copying or sharing them, which means it’s hard for assistive technology to get into them and read them back. Governments have been lobbied to clamp down on file-sharing sites where you can get eBooks that read easily. And anything complex in layout, like a textbook, usually has shoddy text-to-speech support.

There are ways to do it, like using iBooks on iPad or getting books from Bookshare and other organisations. But that’s not every book, and that means an additional process that sighted users don’t have to follow.

Good news, then, that Amazon has updated its Kindle Apps. This lets you get text-to-speech to read out loads more books, and you can still change the content (colour, font size) to make it easier to read if you have some sight. This includes Amazon Kindle for Windows PC.

All taken from this great write-up at the CALL Scotland blog, which I recommend you go read: Giving your Kindle App a voice.

BBC iPlayer Radio 9.3.2

A small update to BBC iPlayer Radio. I’ve been having some reports that the program is having problems connecting to the Internet. I can’t replicate the problems here, sadly. But I’ve made the error message provide more information, so hopefully I’ll be able to get to the bottom of it!

A couple of other little bugfixes, including a fix for Windows 7 machines without .Net 4, and removing some Windows Firewall code that I now realise is redundant (and who knows, might be causing the connection problems!)

  • BBC iPlayer Radio 9.3.2 Installer

BBC iPlayer TV 7.5.0

I’ve updated BBC iPlayer TV to 7.5.0. For 7.3 and 7.4 I was using a JavaScript interface, but the new “Have you got a BBC TV Licence?” dialogue and other changes appears to have broken it (again!)

I’ve therefore gone to using the venerable Microsoft Active Accessibility (MSAA) interface to hunt down and press the correct buttons on the iPlayer page. This is a bit slow, and you’ve lost the mechanism for pause or skipping. I could put that in another time, but for now it works, and that’s the main thing. You’ve also sadly lost the switching interface, but I suspect no-one was using it!

Making your (Windows) computer easier to use with a sight problem

This is a set of suggestions and tips for helping you or someone you know with problems with sight to use their Windows computer. It’s probably most useful for a technically-minded person looking to help someone with sight loss but still some vision. Age-related sight loss, for example. If you are completely blind you will need a screenreader and more specialist training.

The focus is on changing Windows settings and free and low-cost software. It’s basically the things I would do if I was round your house trying to get your PC set up to be useful for you.

I’m assuming you’re on Windows 10, which has better accessibility features than previous versions. Windows 8 is just about as good, and Windows 7 is okay, but earlier than that and you really should upgrade.

I start, though, with a couple of hardware suggestions.

Get a big TV or monitor

If you have an HDMI output from your computer (most computers do nowadays) you can plug it into a big television or a big monitor to give you a bigger brighter display. A relatively inexpensive 22″ TV will work fine. You can try plugging your TV in to see how it works!

Get a high-visibility physical keyboard

You can buy keyboards with bright big yellow-on-black keys. This will help you find all the key combinations you’re going to be using. For example, from the RNIB Shop:

Black-on-yellow keys and big letters and numbers make this keyboard easier to see and use.

Now on to changing your Windows settings.

Change your display scaling and/or screen resolution

This is surprisingly tricky because there are two settings in Windows that interact.

You can change the screen scaling or DPI (dots per inch). This is in “Start”, “Settings”, “System”, “Display”, “Change the size of text, apps and other items”. Drag the slider left to make things smaller and right to make them bigger.

The Settings, Display dialog that lets you change text size. The slider makes text and anything else on the screen bigger and smaller.

You’ll have to sign out and sign in to see the full effects. You might not be able to drag the slider to make things bigger if you have a low-resolution screen: see “Get a big TV or monitor” above or read on.

Changing the screen scaling or DPI used to work very badly: lots of applications would not display correctly, with overlapping text and missing buttons. Nowadays things work much better. Note that older Windows machines (e.g. Windows 7) won’t let you scale much here so you’re better off with Windows 10.

The alternative to changing the screen scaling or DPI is to change the screen resolution. This is a cruder option, but means every application continues to display correctly. It won’t look pretty to people with good vision, but you probably don’t care about that. This is in “Start”, “Settings”, “System”, “Display”, scroll to the bottom and follow the “Advanced display settings” link, and change the value in the “Resolution” box. The smaller the resolution – the lower the numbers – the bigger everything will get. ScreenResolutionSettingsWindows10

Again, sign out and in to check the full effects.

Finally, things get trickier if you have multiple monitors – like a really big screen plugged into your laptop. You may find some resolutions or scaling levels are unavailable. You could try restricting Windows’ output to just the big monitor you want to use by pressing the Windows key and P together to bring up the Project options, then selecting “Second screen only”. There is more complexity over choosing monitors that I won’t go into here, but “Display” is where you’ll find settings if you look.

Whichever way you do it, some things won’t fit on the screen if you make everything really big. Not much you can do about that.

Make the mouse pointer bigger

“Start”, “Control Panel”, “Hardware and Sound”, and under “Devices and Printers” you’ll see a link for “Mouse”. Go to the “Pointers” tab and select the drop-down in the “Schema” section. There you will find several schemes labelled “extra-large” that make the mouse pointer bigger and easier to see.

Combobox "Scheme" lets you select a different mouse cursor size. Choose "Extra-large"

Switch to a High-Contrast Theme

These make Windows use more contrasting colours for things like window edges and title bars so you can see them more clearly. You can also make the colour scheme yellow or white on black, which might be easier on your eyes.

You can find the High-Contrast themes in “Start”, “Control Panel”, “Appearance and Personalisation”, “Personalisation”. Under “Change the visuals and sounds on your computer” you’ll find four themes labelled “High Contrast”. Pick one of those to try it.

Click/select one of the themes and you get the results instantly.

You will find that signing out and signing in again is needed for the full effect of the themes to be observed.

Make some text in Windows bigger and bolder

If you go to “Start”, “Control Panel”, “Hardware and Sound”, “Display”, you will find a “Change the text size only” section. This lets you make various bits of text in Windows bigger: not that many, sadly, but still some.

Use the comboboxes to change text (font) size for items in Windows.

“Icons” does the icons on the Desktop, which is good and bad: bigger text is easier to read, but there isn’t much space for icon text on the Desktop so you will quickly find it gets truncated. Go to the Desktop itself, right-click the mouse to bring up the context menu, select “View” and “Large Icons” to help.

You may find that you have to sign out and sign in to see the changes. You might also have to select a High Contrast theme (see above) to have the changes take effect.

Try using Windows Narrator (Windows 8 and later)

Windows Narrator is the Microsoft free, built-in screenreader. A screenreader is software that reads out the screen. It wasn’t very powerful before Windows 8, but it’s pretty good now, and the voices it uses for reading are better, and it even works in Microsoft Word. You can start Narrator from “Start” like any program, but you can also set it to start when you start the computer.

A particularly useful function for someone who still has some sight is that you can make it speak whatever you point the mouse at. In the Narrator settings, select “Navigation” and check “Read and interact with the screen using the mouse”.

Windows Narrator settings showing how to turn on "read whatever I point at with the mouse"

This will let you point the mouse at text and hear aloud what it says. Turn off the other speech options and that will stop it chattering when other things happen so you are not confused. Press the Control key at any time to stop Narrator speaking immediately.

You can also easily use Narrator to read a Word document out loud to you. Click in the Word document to choose where to start. Then press the Capslock key and the M key together. Narrator will read and scroll through the document. Again, Control key stops reading.

Try using Windows Magnifier (Windows 8 and later)

Magnifiers make part of the screen bigger, which sounds like a totally perfect solution until you try it and realise that you get completely lost on the screen really easily. You may find that this is therefore too hard to use: try changing the screen scaling or resolution instead (see above).

You can press the Windows key and tap the Plus key or Minus key to turn on and adjust the Magnifier any time you want, so you could use it for some quick magnification to check something out then zoom back out to 100% so you don’t get lost.

Magnifier does have one additional feature that might be useful: you can set magnification to 100% (i.e. no magnification) and turn on “Turn on colour inversion” to make your screen yellow-on-black instead of the normal black-on-white. This has the advantage, or disadvantage, of affecting absolutely everything on the screen. Selecting a High Contrast theme does not – things like videos in web pages and icons and some applications will retain their normal colours. You will almost certainly not need both High Contrast and colour inversion.

Try using NVDA

Non-Visual Desktop Access is a fully-featured free screenreader for completely blind people. It has loads of features and is completely free with a strong volunteer community. However, it’s a “proper” program for blind people, so it’s focused on being powerful but will require some work to learn it – notably the shortcut keys you use to get around.

Try using WindowEyes

This is not a free piece of software. However, Microsoft has done a deal with the makers of WindowEyes, Ai Squared, and if you have a copy of Microsoft Office you can get a free copy of WindowEyes.

WindowEyes is a fully-featured professional screenreader and magnifier, so is more powerful and have more features than Narrator or Magnifier:

I hope these suggestions are helpful! Let me know if I’ve missed anything obvious out.

Additional Notes

  • If changing the screen scaling or DPI works for you but you want things a bit bigger than the slider allows, there is a second place to set the screen scaling or DPI. “Start”, “Control Panel”, “Hardware and Sound”, “Display” has a “Change size of items” section. In there is a link to “set a custom scaling level”, which has a drop-down combo box with more scaling options than you get from the Settings option. This is more likely still to break older applications, but do try it out. On my machine, I can go up to 500% here but only 300% on the Settings option.
  • You can also check the box “Enable pointer shadow” in the Mouse settings to give your mouse pointer a tail as you move it, which again makes it easier to find on the screen: just wiggle it and spot its tail.
  • You can also buy stick-on large bright letters and numbers for your existing keyboard if you prefer not to buy a high-visibility one.

MSAA, UIA and WinForms in .Net

Another item for programmers, more on UIA and MSAA and developing accessible user interfaces, following on from using WPF/XAML with MSAA and UIA.

This is a super-quick guide to using WinForms to make UIs that work well with screenreaders like NVDA or Thunder or JAWS.

  • You don’t need to do anything to Button, CheckBox, MenuItem or MenuStrip controls – other than put some text on them! Image-only controls are no good. It’s fine if only the image is shown to the end user and the text is hidden.
  • You can correctly label content controls that don’t have a Text property, like TextBox, ListBox, ListView, ComboBox, ProgressBar and the like, in one of two ways:
    • Put a Label just before the control you want to label in the tab index order. The Text on the Label labels the control. Use the TabIndex property to make sure the order is correct.
    • Set the AccessibleName property on the content control itself. This labels the control for the screenreader.
  • Groupbox controls don’t label their contents, use one of the other techniques here.
  • You almost certainly want to avoid labelling Panel controls, since they are generally for layout, which is communicated to the screenreader user in other ways than labeling.
  • For WebBrowser controls you need to think about the content in terms of web accessibility – use label elements, ARIA, and other HTML accessibility techniques. You might also need to label the actual WebBrowser control on your form with a Label or AccessibleName, just like any other content control.

Unsurprisingly, these techniques are basically the same as writing forms using the Windows C++ API, since WinForms is a wrapper round that.

WebbIE Web Browser 4.5.1

Small but (I hope!) useful updates to WebbIE web browser today, version 4.5.1.

First, I’ve finally fixed a longstanding and annoying bug where Windows Narrator lost focus on the main text display area in WebbIE. You could observe this simply by navigating to google.com: when the JavaScript fired to put focus on the text input area, it took focus from WebbIE, and though I would put it back, and a sighted user could see the caret moving quite happily around the text area, as far as the MSAA/UIA screenreader interface was concerned it was still on the web page. Not Much Use.

Happily, though, WebbIE was on of my first significant .Net project three years ago, and I’ve learned much more since then – including how to fix this one! Focus is placed back in the text area correctly and Narrator works just fine.

Second, I’ve made the browser junk failing frames and external resources as it tries to load the page. This will probably break the display of some advertisements, and I’m afraid some page content too, but WebbIE will be much more responsive and useful. The is in line with a general approach I think is right for WebbIE now: it’s about convenience, and speed, and ease of use over trying to get every last HTML tag and JavaScript call to render in some kind of text format for the end user. WebbIE users are using it because they need it to be faster and simpler and better. If they want it to be more techie… they’re on, who knows, ChromeVox or EmacSpeaks!

Updated BBC Live Radio

A simple update to BBC Live Radio today, to version 3.2.0, so three radio stations that haven’t worked for a while now work again:

  • BBC World Service
  • Classic FM
  • National Public Radio (NPR)

Of course, two of these aren’t BBC stations, but never mind! What NPR and Classic FM have in common is that the URLs change relatively frequently, which breaks my code – I’m not using a documented, supported API, I’m just finding the URL by investigating the website and coding it in. It’s a pain to maintain, since I don’t know they are broken until someone tells me, then I have to go and fix them. Still, because people tell me, I know people use it, so there we are.

The BBC World Service one is more interesting. It also exists in the official BBC API, but doesn’t seem to work correctly. So I’ve found the URL by searching and put in that working one. I know the World Service is a bit of a separate part of the BBC, and I know the Internet services provided by the BBC have been stitched together gradually over many years from my conversations with BBC engineers going back fifteen years. So I suppose this simply represents this internal division.

PDF Reader 3.2.0

Update to the PDF Reader 3 application. This is a nice simple program that lets you open PDF files and displays them as plain text to make them super-simple to read with your screenreader. It’s essentially a nice GUI front-end on the XPDF pdftotext.exe program from Foo Labs.

Anyway, PDF Reader only supported PDFs coded in Western European languages (e.g. English), but now supports any language (e.g. Polish, Japanese). Good for non-English users. Other minor bugfixes include not hanging while it opens the PDF file, which is nicer, especially for large PDFs.

Both BBC Radio programs now updated, including Windows XP support

Tonight I’ve updated BBC Live Radio to version 3.0, and I believe that it now works with the new BBC Radio live streams for Windows XP and later. Last week I updated BBC iPlayer Radio to version 9.1, and I believe that this now works for playing 7-day catch-up radio programmes using the new HLS format, again on Windows XP and later. Thanks for bearing with me, and let me know of any problems you find.

Here’s some notes about the new versions:

  • The BBC Live Radio programme is now using the new HLS streams for Windows 8 and later. Windows 7 and earlier won’t play these streams, so it falls back to the ShoutCast MP3 streams. These will be turned off by the BBC in 2016, on current plans, so Windows 7 and earlier will break again.
  • In BBC Live Radio at present I simply pick the first HLS stream available, which is probably not the best choice (non-optimum bitrate, or wrong international/not international version, or whatever).
  • The BBC iPlayer Radio programme simply converts the downloaded AAC file to MP3 to play it, using FFMPEG, which can take a little time, and there is no progress indicator yet. Users will probably think it has hung, but give it a little time.

BBC iPlayer Radio 9 released: still to fix AAC support

Both WebbIE BBC programs have now been updated to the new system, but they may not work yet if you have Windows 7 or earlier

Summary: both WebbIE BBC programs have now been updated to the new system, but they may not work yet if you have on Windows 7 or earlier.

Yesterday I released BBC iPlayer Radio 9. This new version works again with the BBC on-demand seven-day radio catch-up service, after the BBC shut off the old Windows Media service. It works the same except that instead of playing a programme immediately, it has to download it to your computer first. This can take a while, but downloaded programmes are saved for the next seven days so you only have to do it once.

However, there is another problem. The new AAC format used by the BBC works just great on my Windows 8 machine. But lots of users have contacted me to say that they get only a couple of seconds of audio on their machines before it stops, and they report it for both BBC iPlayer Radio and BBC Live Radio 2. It looks like on older versions of Windows, or Windows Media Player, or the K and KM versions of Windows, the BBC programmes won’t play.

Normally this is fixed by installing another piece of software called a codec or filter or plug-in and one user has reported exactly that. But until I get onto a Windows 7 machine next week in the test rig at work, I can’t confirm what versions of Windows are affected and I can’t identify the best plug-in to recommend.

Until then you have two options, both of which are quite technical, I’m afraid:

  1. Install another media player that does support AAC files, like VLC. Use BBC iPlayer Radio 9, and wait for the programme to download, then stop playing. Then open the File menu (Alt and F) and select the new menu entry, “Open in external media player”. This will launch whatever program Windows thinks handles AAC files – hopefully VLC.
  2. Try installing the codec that my user kindly suggested. I’m not naming him in case it goes wrong: remember, this is at your own risk! Orban AAC Plug-in – zip of Windows installer exe, unzip and run.