IP Library Granted Patent US 9,372,130
Granted Patent B2
US 9,372,130 · App. 14/750,075 · Granted Jun 21, 2016

Facilitating text-to-speech conversion of a domain name or a network address containing a domain name

Inventors: Matthew Bells (Waterloo, CA); Jennifer Elizabeth Lhotak (Waterloo, CA); Michael Angelo Nanni (Waterloo, CA)
Assignee: BLACKBERRY LIMITED
G01L13/00G10L13/027G10L13/08H04L41/0293H04L51/046H04L51/28H04L61/1511
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,372,130
App. No.
14/750,075
Granted
Jun 21, 2016
Kind
B2
Abstract

To facilitate text-to-speech conversion of a username, a first or last name of a user associated with the username may be retrieved, and a pronunciation of the username may be determined based at least in part on whether the name forms at least part of the username. To facilitate text-to-speech conversion of a domain name having a top level domain and at least one other level domain, a pronunciation for the top level domain may be determined based at least in part upon whether the top level domain is one of a predetermined set of top level domains. Each other level domain may be searched for one or more recognized words therewithin, and a pronunciation of the other level domain may be determined based at least in part on an outcome of the search. The username and domain name may form part of a network address such as an email address, URL or URI.

Claims (53)

1. A method comprising:

receiving a network address by a screen reader application, from a user interface screen of a separate application;

causing a processor of a computing device to determine whether a top level domain of the network address matches one of top level domains of a set of top level domains that are pronounced as a whole, the set stored in a memory;

in response to determining that the top level domain does not match one of the top level domains of the set, causing the processor to one or more of:

generate a phonetic representation of each character in the top level domain pronounced individually and generate speech from the phonetic representation at an audio waveform generator; and,

generate a tokenized representation of each individual character of the top level domain suitable for interpretation by a text-to-speech engine; and

for each other level domain of the network address, causing the processor to determine a pronunciation of the other level domain.

2. The method of claim 1 , further comprising: in response to determining that the top level domain matches one of the top level domains of the set, causing the processor to one or more of:

generate a respective phonetic representation of the top level domain pronounced as a whole and generate speech from the respective phonetic representation at the audio waveform generator; and,

generate a tokenized representation of the top level domain pronounced as a whole, suitable for interpretation by the text-to-speech engine.

3. The method of claim 1 , wherein causing the processor to determine whether the top level domain matches one of the top level domains of the set comprises: determining that the top level domain of the network address is a country code top level domain (ccTLD).

4. The method of claim 1 , wherein causing the processor to determine the pronunciation of the other level domain occurs when one or more recognized words within the other level domain matches one recognized word of a set of recognized words in a dictionary stored in the memory.

5. The method of claim 1 , wherein causing the processor to determine the pronunciation of the other level domain comprises:

In response to determining that the other level domain matches a recognized word in a dictionary of recognized words, the dictionary stored in the memory, then one or more of:

generating a respective phonetic representation of each respective character in the other level domain pronounced individually and generating speech from the respective phonetic representation at the audio waveform generator; and,

generating a respective tokenized representation of each respective individual character of the other level domain suitable for interpretation by the text-to-speech engine.

6. The method of claim 1 , wherein the set comprises two or more of “com”, “net”, “org”, “biz”, “gov”, “mil”, “name”, “aero”, “asia”, “info”, “jobs”, “mobi”, “museum”, “name”, “pro”, “tel” and “travel”.

7. The method of claim 1 , wherein the network address comprises one or more of an electronic mail (email) address, a Session Initiation Protocol (SIP) Uniform Resource Identifier (URI), and a Uniform Resource Locator (URL).

8. The method of claim 1 , further comprising: causing the processor to determine a respective pronunciation of one or more parts of a username in the network address based on a determination that the one or more parts comprises one or more of: a recognized word from a spoken language, a first name, a last name, and a diminutive variation of the first name.

9. The method of claim 8 , wherein causing the processor to determine the respective pronunciation of the one more parts comprises one or more of:

generating the respective pronunciation of the one or more parts, each pronounced as a whole, and generating speech from the respective pronunciation of the one or more parts utilizing the audio waveform generator; and,

generating a respective tokenized representation pronunciation of the one or more parts, each pronounced as a whole, suitable for interpretation by the text-to-speech engine.

10. A computing device comprising:

a processor; an audio waveform generator; and, a memory storing a of top level domains that are pronounced as a whole; the processor configured to:

receive a network address by a screen reader application, from a user interface screen of a separate application;

determine whether a top level domain of the network address matches one of the top level domains of a set of top level domains that are pronounced as a whole, the set stored in memory;

in response to determining that the top level domain does not match one of the top level domains of the set, one or more of:

generate a phonetic representation of each character in the top level domain pronounced individually and generate speech from the phonetic representation at an audio waveform generator of the computing device; and,

generate a tokenized representation of each individual character of the top level domain suitable for interpretation by a text-to-speech engine; and

for each other level domain of the network address, determine a pronunciation of the other level domain.

11. The device of claim 10 , wherein the processor is further configured to: in response to determining that the top level domain matches one of the top level domains of the set, causing the processor to one or more of:

generate a respective phonetic representation of the top level domain pronounced as a whole and generate speech from the respective phonetic representation at the audio waveform generator; and,

generate a tokenized representation of the top level domain pronounced as a whole, suitable for interpretation by the text-to-speech engine.

12. The device of claim 10 , wherein the processor is further configured to determine whether the top level domain matches one of the top level domains of the set by: determining that the top level domain of the network address is a country code top level domain (ccTLD).

13. The device of claim 10 , wherein the processor is further configured to determine the pronunciation of the other level domain when one or more recognized words within the other level domain matches one recognized word of a set of recognized words in a dictionary stored in the memory.

14. The device of claim 10 , wherein the processor is further configured to determine the pronunciation of the other level domain by:

In response to determining that the other level domain matches a recognized word in a dictionary of recognized words, the dictionary stored in the memory, then one or more of:

generating a respective phonetic representation of each respective character in the other level domain pronounced individually and generating speech from the respective phonetic representation at the audio waveform generator; and,

generating a respective tokenized representation of each respective individual character of the other level domain suitable for interpretation by the text-to-speech engine.

15. The device of claim 14 , wherein the set of recognized words comprises one or more of a dictionary, a corpus, names of organizations, and abbreviations of organization names.

16. The device of claim 10 , wherein the set comprises two or more of “com”, “net”, “org”, “biz”, “gov”, “mil”, “name”, “aero”, “asia”, “info”, “jobs”, “mobi”, “museum”, “name”, “pro”, “tel” and “travel”.

17. The device of claim 10 , wherein the network address comprises one or more of an electronic mail (email) address, a Session Initiation Protocol (SIP) Uniform Resource Identifier (URI), and a Uniform Resource Locator (URL).

18. The device of claim 10 , wherein the processor is further configured to: determine a respective pronunciation of one or more parts of a username in the network address based on a determination that the one or more parts comprises one or more of: a recognized word from a spoken language, a first name, a last name, and a diminutive variation of the first name.

19. The device of claim 18 , wherein the processor is further configured to determine the respective pronunciation of the one more parts by one or more of:

generating the respective pronunciation of the one or more parts, each pronounced as a whole, and generating speech from the respective pronunciation of the one or more parts utilizing the audio waveform generator; and,

generating a respective tokenized representation pronunciation of the one or more parts, each pronounced as a whole, suitable for interpretation by the text-to-speech engine.

20. A non-transitory computer-readable medium storing a computer program, wherein execution of the computer program is for:

receiving a network address by a screen reader application, from a user interface screen of a separate application;

causing a processor of a computing device to determine whether a top level domain of the network address matches one of top level domains of a set of top level domains that are pronounced as a whole, the set stored in a memory;

in response to determining that the top level domain does not match one of the top level domains of the set, causing the processor to one or more of:

generate a phonetic representation of each character in the top level domain pronounced individually and generate speech from the phonetic representation at an audio waveform generator; and,

generate a tokenized representation of each individual character of the top level domain suitable for interpretation by a text-to-speech engine; and

for each other level domain of the network address, causing the processor to determine a pronunciation of the other level domain.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Feb 23, 2016
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 037893/0239 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2015
From: BELLS, MATTHEW; LHOTAK, JENNIFER ELIZABETH; NANNI, MICHAEL ANGELO
To: RESEARCH IN MOTION LIMITED
Reel/Frame 035906/0274 →
Continuity (4)
Continuation 14179684 · Feb 13, 2014
Continuation 13455303 · Apr 25, 2012
Continuation 12171550 · Jul 11, 2008
Related Publication 20150325231A1 · Nov 12, 2015