Terrapin Resources

Speech Commands

Make Logo speak to you.

With the help of speech commands, you can make Logo read text loud for you. Speech commands include the ability to list and select available voices.

These commands are not available for the Mac version of Logo Pro.

SETVOICE

Selects a voice.

Syntax

Description

SETVOICE takes the name of a voice as input, and sets that voice for further voice output. Windows Vista and 7 come with a predefined voice MICROSOFT.ANNA; if you install the Chinese language pack under Windows 7, it will add MICROSOFT.LILI, which can speak Chinese as well as English. The default Windows XP voice is MICROSOFT.SAM. WIndows 8 provides the voice MICROSOFT.ZIRA.DESKTOP. Other voices are available online from vendors like www.text2go.com.

If you use SETVOICE with a language identifier like “en_US” or “de_de” (for German), it attempts to pick a voice that fits best to the given language, if it can find an installed voice. SETVOICE returns FALSE if there is no voice that matches the given language. Calling SETVOICE with no inputs causes Logo to attempt to set a voice that fits best the language that Logo is executing in. This is also the default.

SETVOICE returns TRUE if the voice could be set, FALSE otherwise. See also VOICE, VOICES, and SPEAK.

Example

SETVOICE “MICROSOFT.ANNA (SETVOICE)

SPEAK

Speaks out the given word or sentence.

Syntax

Description

SPEAK causes Logo to speak its input. SPEAK uses the current voice to speak the text. The text can contain embedded XML to control aspects of the voice. This is a Microsoft feature; see the Microsoft Speech API (SAPI) documentation for details. If the input is a list, Logo speaks the list as a sentence. Embedded lists are spoken as separate sentences, and the empty list acts as a period, where the speaker pauses briefly. See also SETVOICE, VOICE, and VOICES.

SPEAK is an asynchronous command. The text is queued, and Logo returns immediately. Logo can continue to run while the text is spoken. Multiple SPEAK commands append their text to the text that needs to be spoken; nothing gets lost. If the optional second input is TRUE, Logo waits for all pending text to be spoken before the command returns.

Example

SPEAK [[HELLO WORLD] [THIS IS LOGO PRO]]

VOICE

Reports the current voice.

Syntax

Description

The VOICE command reports the currently selected voice as a list of two elements. The first element is the name of the voice, and the second element is a description, which usually is the language the voice is intended for. If there is no description, the second element is the empty list. If text-to-speech is not supported, VOICE reports the empty list, which is handy when checking for the presence of text-to-speech. See also SETVOICE, VOICES, and SPEAK.

Example

VOICE

VOICES

Reports a list of available voice.

Syntax

Description

The VOICES command reports the list of available voices. Each list element is again a list of two elements. The first element is the name of the voice, and the second element is a description, which usually is the language the voice is intended for. If there is no description, the second element is the empty list. If text-to-speech is not supported, VOICES reports the empty list, which is handy when checking for the presence of text-to-speech. See also SETVOICE, VOICE, and SPEAK.

Example

VOICES