Skip to content

VoiceOver Punctuation Bug Passes Embedded Speech Commands

May 10, 2011

I made an interesting discovery today while investigating a strange punctuation issue with VoiceOver. Normally, I use VO either in no punctuation (for general work), or all (for coding, so these problems have escaped my attention until now). After trying out the text verbosity settings, the bugs are quite something to experience. The results revealed some large problems with VoiceOver’s punctuation processing/filtering, as well as a way to write embedded speech commands so that VoiceOver will pass them along to the Mac Speech Manager.

Before going further with the following examples, open VO Utility, and go to Verbosity, Text. Start with all punctuation, and set the repeated punctuation to always spoken.

Read these lines:

********** Oh my God, it’s full of stars!
(((4*3)*2)/3)
———- forwarded messages do this ———-
[[[[[[[[[[ whole lot of brackets ]]]]]]]]]]]

VO reads all of that punctuation, as it should. Now, set repeated punctuation to first two times and read those lines again.

notice that only the first line with the asterisks/stars are repeat-filtered? It seems that VO has a very limited list of punctuation that is eligible for filtering. Observe…

!!!!!!!!!!
&&&&&&&&&&
((((((((((
))))))))))
———-
[[[[[[[[[[
]]]]]]]]]]
“”””””””””
<<<<<<<<<<

??????????

Vo filters these, though:

@@@@@@@@@@
##########
$$$$$$$$$$
%%%%%%%%%%
^^^^^^^^^^
__________
==========
++++++++++
{{{{{{{{{{
}}}}}}}}}}
\\\\\\\\\\
||||||||||
;;;;;;;;;;
::::::::::
''''''''''
,,,,,,,,,,
……….
//////////

I guess the question is, do they leave the first group out for a reason, or have they been overlooked somehow?

Now, go back to your VO Utility window, set the repeat-filter back to always spoken, and change punctuation to none. You should now hear no punctuation, except, in the following, you will.

var1 & var2 &&&&&&&&&&
"""hello world"""
accessibility@apple.com @@@@@@@@@@@@@
#1 #2 #######
$1,000,000,000 is a lot of $$$$$$$$$$
500% is a lot of %%%%%%%%%%
^^^^
_lame bugs_ __________
c:\wow\this\is\bad \\\\\\\\\\

That's right. No punctuation is really some weak form of some punctuation, after all, or else this is a huge bug.

Now, set the repeat-filter to first two times, which should, at least, get rid of the cases where lots of punctuation is in a row. It reduces many cases, such as the following:

accessibility@apple.com @@@@@@@@@@@@@
#1 #2 #######
$1,000,000,000 is a lot of $$$$$$$$$$
500% is a lot of %%%%%%%%%%
^^^^
_lame bugs_ __________
c:\wow\this\is\bad \\\\\\\\\\

But still lets these totally slide:

var1 & var2 &&&&&&&&&&
"""hello world""" """"""""""

So, now that it is obvious that the whole punctuation processing code is not quite working as we expect, back to the bracket issue.

Set the punctuation to none, and set the repeat-filter to always spoken.

For the brackets problem, the key is three left brackets in a row.

This is no problem:

[[test

However, this is:

[[[ test

If, however, you set punctuation to either most or all, then three brackets are no problem.

[[[ test

Now, please go back to no punctuation before continuing.

What is, in fact, happening, is that, when set to no punctuation, VoiceOver is not filtering out left brackets. It filters them out when they're isolated, but, when you have two or more in a row, then the number, less one, are passed, as in the following:

[[[rate 175]]][[[pbas 0]]][[[pmod 0]]] please do not attempt to adjust your speakers.
[[[rate 300]]][[[pbas 60]]][[[pmod 200]]] Nothing is seriously wrong!
[[[rate 130]]][[[pbas 40]]][[[pmod 200]]] reeeeeeeeeeeeeeeeeeeeeeeeeealy!

I exploit this above to force VO to pass along embedded Speech Manager commands.

An actual command looks like:

[[rate 150]] Hello, world.

When I use three brackets to open and close, instead of two, then VO passes two along to the synth.

[[[rate 150]]] Hello, world.

The above doesn’t work in all punctuation mode, probably because VO uses a substitution dictionary to replace punctuation names.

[[

is replaced with

left bracket left bracket

Anyway, I anticipate that this will soon become a popular prank on instant messaging and e-mail lists. Not sure how many problems can be created by pranksters redefining embedded speech command delimiters, or by forcing the VO synchronization callback to run with odd values. Anyway, besides the potential pranks, it seems to me that the entire punctuation filtering approach should be examined.

From → Uncategorized

26 Comments
  1. Very interesting info!Perfect just what I was looking for

  2. Thank you a bunch for sharing this with all people you really know
    what you are talking approximately! Bookmarked. Please also visit my site =).

    We could have a link alternate agreement between us

  3. It has develop into a regular weight loss plan for all people
    in the west and in Asia. Easy to use up, eat breakfast, do not try so hard, just to
    put food to heat enough. It chops nearly something from fruit to veggie to
    even nuts.

  4. If you are looking for kitchen cookware to stay in your life for a while, invest
    in something a bit heavier such as copper or stainless cookware.

    Regardless of whether or not you love to cook, it really is crucial that each and every kitchen have a
    decent kitchen cookware set readily obtainable. Copper kitchenware has all of
    the features essential that you could possibly need in an amazing cookware set,
    and are available all kinds of designs, shapes, sizes, and prices.

  5. Hi i am kavin, its my first time to commenting anyplace, when i read this paragraph
    i thought i could also make comment due to this brilliant post.

  6. Hello, I believe your blog may be having browser
    compatibility problems. When I take a look at your web site in Safari, it looks fine but when opening in I.E., it’s got some overlapping issues.
    I simply wanted to give you a quick heads up! Apart from that, fantastic
    blog!

  7. I blog often and I really appreciate your content.
    The article has really peaked my interest. I will book mark your website and
    keep checking for new information about once per week.
    I opted in for your Feed too.

  8. Heya i am for the first time here. I found this board and I find
    It truly useful & it helped me out much. I hope to give something back and heslp others like you aided me.

  9. As you keep acting from this perspective your business will inevitably grow in the
    weeks to come. Difference involving men and women, competition, traditions
    and culture is important within the survival of our world, nevertheless Prime Eleven Crack Major 11 football
    administrator Tokens hack top 14 compromise generator lifts your issue ‘why.

    The particular financial plan spectrum is usually finding an occasion associated with unprecedented growth.

  10. Hi there, just became aware of your blog through Google, and found that it is really
    informative. I am going to watch out for brussels.
    I will appreciate if you continue this in future.

    Numerous people will be benefited from your writing.
    Cheers!

  11. Fantastic site. A lot of useful info here. I’m sending it to
    a few buddies ans also sharing in delicious. And certainly,
    thank you for your effort!

  12. Very great post. I just stumbled upon your blog and wished to say that I have really loved surfing around your weblog posts.
    In any case I’ll be subscribing for your rss feed and I
    am hoping you write once more very soon!

  13. Hello just wanted to give you a quick heads up.
    The words in your article seem to be running off the screen in Opera.
    I’m not sure if this is a formatting issue or something to do
    with internet browser compatibility but
    I thought I’d post to let you know. The design and style look great though!
    Hope you get the issue resolved soon. Cheers

  14. Hi to every body, it’s my first pay a visit of this website; this blog
    carries amazing and really fine data designed for readers.

  15. Thanks for your marvelous posting! I genuinely enjoyed
    reading it, you’re a great author.I will be sure to bookmark your blog and definitely will come
    back very soon. I want to encourage that you continue your
    great work, have a nice holiday weekend!

  16. Very quickly this web page will be famous amid all blogging and site-building
    users, due to it’s fastidious articles or reviews

  17. A fascinating discussion is definitely worth comment.
    I do think that you should write more about this issue, it may not be
    a taboo subject but usually folks don’t talk about such subjects.
    To the next! Cheers!!

  18. This paragraph is truly a nice one it assists new web users, who
    are wishing for blogging.

  19. Hello, the whole thing is ɡoing nicely Һere and ofcourse еvery onne is sharing data,that’s reallƴ fine,
    keep up writing.

  20. In this way, the hydroxyl radical is sort of nature’s atmospheric “scrubbing bubbles. Pick the right unit and you will enjoy clean indoor air for years to come. Being like a tower, it occupies little space keeping the floor space free.

  21. Hence systems with over two speakers will always be a good
    idea. Surround sound speakers are not only ideal for movie watching, but
    it is possible to also connect it along with your
    video gaming console. Remember when video cassettes first arrived, how exciting
    it turned out to watch great movies right inside comfort of your respective own home.

  22. You have to throw the collected dirt from the container in the garbage can in your backyard or outside your house to prevent the dust and dirt from getting back into your house.

    Whether you buy OEM vacuum cleaner bags or after-market ones,
    you do not need to buy them straight from the company. It is also important that you should consider its form.

  23. This blog is really cool! How can I make one like this?

  24. Superb article! There isn’t a great deal of available facts about window vacuums so I found this genuinely very helpful.
    Is this version good when it comes to cleaning porcelain tiles, were you aware?

  25. There are two heating elements in the toaster ovens.
    Baked good, for example, need to be cooked evenly, while most
    meats need to be seared on top. s your first
    time to cook outside with your Dutch oven.

  26. Howdy! Quick queston that’s totakly off topic.
    Do you know how to make your site mobil friendly?
    My site looks weirdd when viewing from my apple iphone.
    I’m trying to find a template or plugin that might be able
    tto correct this problem. If you have any recommendations,
    please share.Thanks!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s