Welcome

Welcome to

Infovox Desktop


What is Text-to-Speech?

A text-to-speech converter as Infovox Desktop provides applications with lots of new ways for enhancing communication between a computers and users.

Text-to-speech conversion is not restricted to a given vocabulary. Any text can be input and it is converted automatically to synthetic speech, thus permitting information to be presented as speech instead of as printed words on paper or text on a screen.

Linguistic knowledge such as how letters and combinations of letters are pronounced in different linguistic contexts, vowel length, stress level, and even exceptions to pronunciation rules are all part of the language rules used for text-to-speech conversion.

The text-to-speech conversion is performed by Infovox Desktop in roughly two stages. First, text input is converted into a phonetic transcription, using a combination of lexical look-up and general pronunciation rules. Special rules deal with digits, dates, measures and so on. Secondly, the phonetic transcription is converted into speech sounds by concatenating very small pieces of human speech called diphones and by applying the proper rhythm and melody to the sentence.


Babel-Infovox contact information

For support information, please contact your local distributor. An updated list of our worldwide distributors is available on the Infovox web site.

For all other information, please visit our web site www.infovox.se


What's new

What's new in Infovox Desktop

Infovox Desktop adds some exciting new feature to the its predecessor, the Infovox 330. Some features has been added to make it easier for you to use the product, like this Help file or the simplified license management; others have been added to help you get more out of your Text-to-Speech, like the Equaliser and the new KeySpeaker application. For those who want to integrate Infovox Desktop in an application we add the possibility to control the equaliser and the user lexicon via two new dedicated programming interfaces.

To learn more about the simplified license management, the equaliser, or how to integrate Infovox Desktop in your application, just follow the links.

To learn more about the KeySpeaker application, please refer to the KeySpeaker documentation.


Engine Property Box

The Text-to-Speech Engine Properties dialog box is used to set values for a number of parameters controlling various aspects of the text-to-speech conversion. When a client application connects to the Infovox Desktop Text-to-Speech Engine, all parameters are set to their default values. Any client application can of course interact with the engine and override the default settings via the SAPI interface, but it is also possible to let the user control the values for the Text-to-Speech parameters via the Infovox Desktop Text-to-Speech Properties dialog box.

If you want to save a specific setting for a voice, to be used each time you use the voice, then you should create a custom voice by using the Voice Manager application provided with the Infovox Desktop.

You can use the Engine Property dialog box to control the following settings:

  • Voice list, to change the voice and the language.

  • Lexicon list, to select a user lexicon to be used with the current mode.

  • Reading Mode, to read the text sentence by sentence or spell it out one character at the time.

  • Rate, to control the reading speed.

  • Volume, to control the windows output volume.

  • Pause between sentences, to switch between long and short pauses between sentences.

  • Pitch, to control the average pitch of the voice.

  • Dynamics, to control the amount of allowed variations of the voice.

  • Equaliser, to change the acoustical feature of a voice.

  • Phonetic text marker, to set which character has to be used to switch between phonetic and non-phonetic text.

  • Sample Text box, to speak a sentence using the current voice and settings.

  • Reset to defaults for voice, to restore Rate, Dynamics, Pitch, Pause between sentences and the Equaliser settings to their default value.

From the Engine Property box you can also easily access other features:

  • Lexicon button, to open the Lexicon Browser

  • About button, to open a dialog box with version information about the Infovox Desktop

  • Help button, to get online help


Engine Property Voice list

Engine Property Box

Voice list box

With the Infovox Desktop Text-to-Speech Engine the user can choose to install several voices on the same machine.

The name of an Infovox Desktop voice is made of a proper name, followed by the name of the language, followed by the Infovox Desktop name, as the following example: Roger, British English, Infovox Desktop.

The list of the available voices is shown in the Voice list.

To select a voice:

  1. Click the small arrow to the right of the Voice list box.
    A list of all the available voices appears.

  2. Select the desired voice by clicking the corresponding entry in the list.

After you have chosen a voice you can test it immediately using the Sample text box.


Engine Property Lexicon list

Engine Property Box

Lexicon list box

A user lexicon is created through the Lexicon Browser dialog box, or by editing the lexicon file with any text editor (as NOTEPAD, for example). For an overall description of what the lexicon is and how to use it, please refer to the chapter on the Lexicon Browser.

To select a user lexicon:

  1. Click the small arrow to the right of the Lexicon list box.
    A list of the available user lexicon files appears.

  2. Select the desired lexicon by clicking the corresponding entry in the list.

Please make sure that you select a lexicon that has been created for the current language, the use of a lexicon created for a different language might give unpredictable results, since the interpretation of the phonetic symbols is language dependent.

From the Text-to-Speech Properties box it is also possible to access the Text-to-Speech Lexicon Browser, where it is possible to actually edit the user lexicon.

Click on the Lexicon button to start the Lexicon Browser.


Engine Property Reading Mode

Engine Property Box

Reading mode

The reading mode controls how the text is read. The following reading modes are available.

Letter Mode | Each character is spelled separately
Sentence Mode | This is the standard reading mode. The text processing takes into account the whole sentence, choosing the prosody that renders the structure of the sentence in the most appropriate way. A sentence is delimited by any of the punctuation characters, please note that a line feed is not considered to be a sentence delimiter by the text processor.

To select a reading mode:

  1. Click the small arrow to the right of the list box under the Reading mode caption.

  2. Select an option by clicking one of the entries in the list.

After you have set a reading mode you can test it immediately using the Sample text box.


Engine Property Rate

Engine Property Box

Rate

The Rate setting determines the reading speed of the text-to-speech engine. The level can be set to a value between 1 and 100. Level 100 corresponds to a very high speaking rate (500 words per minute), while level 1 corresponds to a very low rate. The level 50 corresponds to a normal rate for conversation or reading (150 words per minute).

After you have changed the rate you can test it immediately using the Sample text box.


Engine Property Volume

Engine Property Box

Volume

The Volume control is directly connected to the speech output device, i.e. the sound card, except that a scale from 0 to 100 is used rather than 0 to 65535 as used by the Windows low level audio services volume control. The volume settings are interpreted as logarithm. This means that the perceived increase in volume level from 50 to 60 is the same as it is from 40 to 50. The default value is taken from the current Wave volume setting of Windows.

After you have changed the volume you can test it immediately using the Sample text box.


Engine Property Pause

Engine Property Box

Pause between sentences

The Pause between sentences selects whether a short or a long pause is going to be played between sentences. The default value is long pause, which gives an higher intelligibility and add naturalness to the voice.

After you have changed the pause settings you can test it immediately using the Sample text box, just make sure you type at least 2 sentences.


Engine Property Pitch

Engine Property Box

Pitch

The Pitch control sets the average pitch level for the selected voice. It corresponds to the base frequency for the voice. The level can be set from 0 to 100, corresponding to a pitch range of 30 Hz to 250 Hz. A level of 50 corresponds to 100 Hz.

After you have changed the pitch you can test it immediately using the Sample text box.


Engine Property Dynamics

Engine Property Box

Dynamics

The Dynamics parameter controls the amount of pitch variation in the speech, that is, how big can the frequency excursions be over and under the base frequency set with the Pitch parameter. For this parameter too, the level range is from 0 to 100. A low level setting results in a robot-like voice with no pitch variations, while a high setting corresponds to a large pitch variation, which adds expression to the voice.

After you have changed the dynamics you can test it immediately using the Sample text box.


Engine Property Box

Equaliser

The equaliser is a new feature of Infovox Desktop, it allows you to change the acoustical features of each voice by amplifying or attenuating each of the frequency bands.

When you start the property box the equaliser is usually off and all rulers are disabled. Click on the "The Equaliser is OFF" button to turn the Equaliser ON.

After you activated the Lexicon you can simply drag the rulers to change the sound of the voice. Each ruler corresponds to a specific frequence, the rulers on the left can be used to control the lower frequencies, the ones on the right can be used to control the higher frequencies.

After you have changed the equaliser settings you can test the effect of the change immediately by using the Sample text box.

You can also access the Equaliser via the programming API, look here for more details.


Engine Property PhonChar

Engine Property Box

Phonetic text marker

The Phonetic text marker is used to switch text processing between non-phonetic (normal text) and phonetic mode. It can be used to embed phonetic strings in normal text. Any text enclosed by phonetic prefix characters will be interpreted as phonetic text by the text-to-speech converter.

To select a phonetic character:

  1. Click in the Phonetic text marker entry box.
    The cursor appears in the entry box.

  2. Type in the desired phonetic prefix character.

Please consider that the Phonetic text marker is often used in user lexicons, so if you change the phonetic text marker then you might not be able to use older lexicons since the phonetic text embedded in those user lexicon will no longer be recognized.


Engine Property Sample Text

Engine Property Box

Sample Text

The purpose of the Sample Text entry field is to allow the user to enter a brief text and have it spoken, in order to check the result of a certain combination of voice and settings.

To enter and listen to a text:

  1. Click in the Sample Text entry field.
    The cursor appears in the field.

  2. Enter the text.
    The Say button is enabled.

  3. Click the Say button to have the text spoken.


Engine Property Reset

Engine Property Box

Reset to defaults

This button works as a shortcut to reset the Rate, Pitch, Dynamics, Pause between sentence and Equaliser settings to the standard settings for the currently selected Voice.


Lexicon file

The User Lexicon

When using Infovox Desktop you might want to change the way a word is spoken. This happens often when you have names, acronyms, foreign words or other peculiar words that do not follow the pronunciation rules programmed into the Infovox Desktop for a specific language.

Creating a user lexicon gives you a chance to set the pronunciation of a word exactly the way you like it. To have an higher accuracy on the pronunciation it is strongly recommended to read the appropriate language manuals, provided on the installation CD. In these manuals you'll find, among other things, a list of all the phonetical symbols and other symbols that can be used to tune the pronunciation of a word.

A user lexicon consists of a list of names (which works as a lookup string) and translations. For instance, let’s suppose that we want the Infovox Desktop Text-to-Speech Engine to actually speak the sentence ”as soon as possible” every time in the text the acronym ”ASAP” is encountered. To achieve this we have to add to the active user lexicon file an entry whose name is ”ASAP” and whose translation is ”as soon as possible”. The translation string can also be specified as phonetic text, by enclosing it with phonetic prefix characters and using the phonetic symbols defined for the language in use.

Please refer to the language-specific manuals for a in-depth coverage of the phonetic alphabets used by Infovox. The language-specific manuals are distributed with the Installation CD.

The specific user lexicon to be used during a working session can also be selected in the Text-to-Speech Engine Properties dialog box.


Creating Lexicons

The User Lexicon

Creating and editing lexicons

To create or edit a user lexicon we recommend you to use the Lexicon Browser, beside the graphical interface, the lexicon browser provides you with the possibility to see what is the default phonetical transcription of a word, according to the rules programmed in Infovox Desktop.

Alternatively you can create a lexicon file by creating a text file and putting on each line a lexicon entry (the word to be translated) and the corresponding translation separated by a TAB character.


The User Lexicon

Associating lexicons and voices

You can easily associate a lexicon to a voice in the Engine Property Box by using the Lexicon list.


Limitations

The User Lexicon

Lexicon limitations

Type of entries

You can only specify a translation for single words. By word we mean a sequence of alphabetical characters not containing any separator (digits, space, comma, period, dash and so on)

Number of entries

Though the number of the entries allowed in a lexicon file is virtually unlimited, there are practical limits. As a rule of thumb, you can create a lexicon up to a 4000 entries without bothering thinking about performances, but if you make a much bigger lexicon than the system might slow down and, for quite large lexicon (let’s say more than 10.000 entries) the system might collapse and loading time for the lexicon can become very long.

If you need to use very large lexicon than you can contact your local distributor and ask about the Infovox Enterprise product.


Lettercase

The User Lexicon

How is letter case handled

When writing new entries in the lexicon you have to put some attention to the lettercase, since this will affect the way the entry is used by Infovox Desktop.

The rule is quite simple:

  • If you only use small case character when specifying an entry, then the entry will always be replaced by the specified transcription, no matter whether it is encountered in the text as lower case or upper case or a combination of the two. This option should be used when you want to improve the pronunciation of a common word.

  • If you use one or many uppercase character when specifying the entry, then the entry will be replaced by the transcription only if the exact case combination is encountered in the text. You should use this option when specifying acronyms or proper names.

This rule allows you, for instance, to specify that "US" should be read as "United States" (or "Ubi Supra" if you wish) only when in uppercase form, leaving intact the utterance of any lowercase occurrence of the pronoun "us". It would allow to expand the nickname "Bob" to Robert, leaving any lowercase occurrence of the verb "bob" untouched.


The Lexicon Browser

The Lexicon Browser box

The Lexicon Browser box provides you an interface where you can create, edit and save a User Lexicon.

More information on what is a User Lexicon can be found here.

Information on how to use a Lexicon file with a specific voice can be found here if you use the graphical interface, or here if you want to use the programming API.


Lexicon Browser box

Creating a new user lexicon

The New File button allows the user to create a new lexicon file. When you create a new lexicon file, you are immediately prompted to give the new file a name.

To create a new lexicon file:

  1. Click on the New File button.
    The Create Lexicon dialog box appears.

  2. Type a name for the new lexicon file.

  3. Click on the Save button to create the new lexicon file.


Lexicon Browser box

Saving the current user lexicon

The Save File button allows the user to save the changes to the active user lexicon file.

  1. To save the active lexicon file click on the Save File button.
    The active lexicon file is saved with the filename shown in the Lexicon File text box.


Opening a User Lexicon

Lexicon Browser box

Opening an existing user lexicon

The Open File button allows the user to load a user lexicon file for editing.

  1. Click on the Open File button.
    The Open Lexicon dialog box appears.

  2. Select the user lexicon file that you want to open.

  3. Click on the Open button.


Lexicon Browser box

Lexicon Entries list box

Lexicon Entries list

In this list box you will see all the names of the entries registered in the active user lexicon file, listed alphabetically. When you select an entry in this list box you will see its translation appearing in the Translation box of the Entry Properties group.

New Entry button

Use this button when you want to create a new entry in the active user lexicon file.

Edit Entry button

Use this button when you want to edit an entry. If you edit an entry but forget to save it, as soon as you select another entry, a dialog box will appear asking you whether you wish to save the edited entry or not.

Delete Entry button

Use this button to delete the current entry. Before the actual operation takes place a dialog box will appear, prompting to confirm your choice.

Say it! button

Use this button to speak the selected entry.


Lexicon Browser box

Entry Properties group

The controls grouped in this section allow the user to edit the lexicon entries.

Name box

In this box the user can enter or edit the name of the entry.

Translation box

In this box the user can enter or edit the translation of the current entry.

Save button

Use this button to save the changes to the current entry.

Discard button

Use this button to discard the changes to the current entry.

Say it! button

Use this button to have the text placed in the Translation box spoken. This option is particularly helpful when you are trying to change the pronunciation of a word entering phonetic text in the Translation box.


Lexicon Browser box

Phonetic transcription

The controls grouped in this section are meant to make the process of creating an user lexicon file easier. They are particularly fit to situations in which the user wants to edit the pronunciation of a word using the phonetic text.

Transcription box

In this text box you can edit a string to be spoken and then, eventually, copied to the Translation box in the Entry Properties group. In case you want to edit the phonetic text, make sure that the text begins with the phonetic prefix character defined in the Text-to-Speech Engine Properties dialog box.

Suggest button

Use this button to get the phonetic transcription of the string contained in the Name text box of the Entry Properties group. The phonetic transcription suggested by the Infovox Desktop Text-to-Speech Engine is placed in the Transcription text box and it is ready to be edited in order to fit the user requirements.

Say it! button

Use this button to have the text placed in the Transcription text box spoken.

Copy to Entry button

Use this button to have the text placed in the Transcription text box copied to the Translation text box of the Entry Properties group.


The License Manager

All operations on the Infovox Desktop licenses are handled through the License Manager application. The Infovox Desktop licenses are provided through Site Authorizations, the distinction between License and Site Authorization is formal, and in some context these two terms can be synonymous.

In this chapter you'll find information about how to activate and manage your site authorization by using the Infovox Desktop License Manager. This topic is divided in two sections:

  • Site Authorization Management

  • Moving the Site Authorization

If you are instead looking for information on how the license works and how to obtain a license, please check the next chapter on the Infovox Desktop licenses.


License Manager

Licenses

In order to use the Infovox Desktop you are required to get a license.

All license activities are performed through the License Manager application, extended information on the licenses and license management are provided in the License Manager help file.

In the following paragraphs you'll find a quick description of how to get a license and about the Site Authorization licensing concept used by Infovox Desktop.


Getting a new license

License Manager

Getting a license

When you have decided to actually buy a license, then you should contact your authorized local distributor for the Infovox products. You can find an updated list of worldwide distributors on the Babel-Infovox web site.

The procedure for getting the license is the following:

  1. Run the License Manager and get your Site Code number.

  2. Send this number to your authorized local distributor via e-mail, fax or telephone, and specify which language(s) you want to buy.
    You will then receive a Site Key number from the distributor (please refer to the current list of authorized distributors on our web site).

  3. Copy or paste the Site Key number into the License Manager.

To get more information about Site Authorization licenses, Site Keys and Site Codes, please refer to Site Authorization.


License Manager

What's new about Infovox Desktop licenses

Compared to the Infovox 230 and Infovox 330, the Infovox Desktop licenses are not anymore Network licenses, but are simpler Node Locked licenses.

The positive effect is that the Infovox Desktop licenses allow you to use how many program as you want on your local computer (the one hosting the license), and it solves the recurring problem of "hanging licenses" that would in some case prevent to use Infovox in the earlier versions.

Another difference is that you can no longer share an Infovox Desktop license on the Network. If you need to share a license on the network you should contact your local distributor and ask information on the Infovox Desktop product.


If you already own a language license for Infovox Desktop

If you are updating your Infovox Desktop software and you already own a language license for Infovox Desktop, then you do not need to perform any particular operation. Your language license will be automatically detected and used by the new version of Infovox Desktop.

Licenses bought for the Infovox 230 or Infovox 330 products are not valid licenses for using Infovox Desktop.


License Manager

30-days Trial License

If you do not have a license, you can use this button to grant yourself a 30 days demo on your computer. Please note that you are allowed to create the 30 days license only once on each computer.

To create a 30-days license

  1. Click on the 30-days Trial License button.
    The License Agreement dialog box will pop up.

  2. Read the agreement and click on I Accept if you accept the conditions.


License Manager

Site Authorization license

The Site Authorization license is based on a completely numeric algorithm, and it binds a license to the Hard Disk. Once you own a license then you can transfer it to another hard disk or share it on a network. Follow the link for more information on transferring the license.

One Site Authorization license can enable several voices at once, you do not need to get a separate Site Authorization license for each Infovox voice you want to use.

Please note that you have to take care of transferring the license before you substitute or reformat the Hard Disk, otherwise the license will be lost.


License Manager

Site Code and Site Key

In order to get a Site Authorization license, you need to provide your authorized distributor with a Site Code. The Site Code is a numeric code that contains encrypted information about the current status of your license (if any) and the hard disk that you intend to license. Once you have provided the Site Code, you will be given the corresponding Site Key. The Site Key contains updated information on your license and can only be used on the same hard disk from where you have generated the Site Code.

The Site Codes and Site Keys are quite long strings of hexadecimal digits. They can contain any number (0-9) plus the first 6 letters (A-F), letter case is ignored so you can use both upper or lower case.

To make the keys more readable it is common to insert a blank space every four digits. Blank spaces do not affect the keys and can be inserted everywhere. Here is an example of Site Code / Site Key pair:

Site Code: D978 C312 D888 5D8B 71

Site Key: E47B 414D 3BFC 667C 7EA9 3CA7 45

All operations regarding the Site Key and the Site Code are handled through the License Manager application. Refer to the chapter dedicated to the License Manager for more information on the subject.

Please note that when you enter a valid Site Key, your Site Code will change. If you need to update your license, make sure you provide your distributor with an updated Site Code.


License Manager

Site Authorization management

All common operations for managing a license are accessible through the main window. In this window there are three main objects of interest:

  • The License List

  • The Site Code

  • Enter the Site Key

Two more dialog boxes with advanced functionality are accessible through two buttons in the main window:

  • Detailed Info

  • Advanced Box


License Manager

The license list

The main box in the License Manager window reports the current status of the licenses for the installed languages.

Each row of the license list corresponds to a language which has been installed on your machine. To add a language to the license list you must run the Infovox Desktop Voices installation program.

The license list is divided in four columns: NAME, STATUS, TYPE and REM. DAYS.

Under the NAME column you can see the name of the voices that have been installed.

Under the STATUS column you can see which is the current status for each license. The string License found means that a license for that language is currently present on your computer. The string License not found means that you do not currently own any license for using that language on your computer. The string File error usually means that a file is missing, running the installation program again will generally solve the problem. For detailed instruction on how to get a license, please refer to the previous chapter.

Under the TYPE columns you will be able to see, for each language, which type of license you are currently owning. At the moment, the only type of license available for the Infovox Desktop is the Site Authorization license.

Under the REM. DAYS column you can see how many days are left before the license will expire. If this field is empty, then your license is valid for an unlimited time.


Site Code

License Manager

The Site Code

In the Site Code box you can see the current Site Code number for your computer. This number has to be provided to your authorized distributor in order to receive a Site Key and enable your Site Authorization license.

To make things easier, and to avoid risk for spelling mistakes, you can copy this number in the Windows Clipboard (using the standard Ctrl+C shortcut) and then paste it in a mail or fax document.

An alternative way is to use the Copy on floppy (as text) button. Click here for more info.

If you want to know more on what Site Authorization, Site Code and Site Key are, follow this link.


Copy Site Code as Text

License Manager

Copy Site Code on a floppy disk

This function will create a text file on a floppy disk containing your Site Code. You can then send the floppy disk to your distributor with no need of any other operation. The file on the floppy disk will be called IVXDTPCODE.TXT.

To save the Site Code on a floppy disk.

  1. Enter a floppy disk in the floppy disk drive. Please make sure that the disk is not write protected.

  2. Click on the Copy on floppy (as text) button.

You are now ready to send the floppy disk to your local distributor to obtain a Site Key.

If you want to know more on what Site Authorization, Site Code and Site Key are, follow this link.


License Manager

Entering the Site Key

Once you have received the Site Key from your authorized distributor, you can enter it in the License Manager using the Enter Site Key button.

If you have received the Site Key on a floppy disk, then look for the instructions here.

To enter the Site Key:

  1. Click on the Enter Site Key button.
    The Enter Site Key dialog box will pop up.

  2. Type or paste the Site Key number in the edit box.

  3. Click on OK.

A message box will appear reporting the result of the operation. In case something went wrong, please check that the spelling of the Site Key is correct.

After you have entered the Site Key the information in the Site Code box and the license list will be automatically updated.

If you want to know more on what Site Authorization, Site Code and Site Key are, follow this link.


License Manager

Enter Site Key from Floppy

If you have received the Site Key on a floppy disk, then do as follow:

  1. Insert the floppy disk in your computer.

  2. Click on the Enter Site Key button.

  3. The Enter Site Key dialog box will pop up.

  4. Click on the Copy from floppy (as text) button.

  5. Click on OK.

  6. You can now remove the floppy disk from the computer.

A message box will appear reporting the result of the operation. In case something went wrong, please check that the spelling of the Site Key is correct.

After you have entered the Site Key the information in the Site Code box and the license list will be automatically updated.

If you want to know more on what Site Authorization, Site Code and Site Key are, follow this link.


Detailed info

License Manager

The Detailed Info Dialog Box

The Detailed info button allows you to get further information on the Site Authorization license status.

To get detailed information on the Site Authorization license click on the Detailed info button. The Detailed Info dialog box will show up, here you'll find some information, especially useful when something goes wrong and you need to report the problem to your distributor for support:

  • The Available multisessions box is not relevant for Infovox Desktop, since this product uses Node Locked licenses instead of Network licenses as the Infovox 230 and Infovox 330 products.
    If you wish to know more about the differences between Node Locked licenses and Network licenses, follow this link.

  • The License level box shows the type of the Site Authorization license that is currently active.

  • The License directory box shows the directory containing the Site Authorization files. This directory and its content must never be manually modified, renamed or deleted.

  • The Crypkey version box shows the current version of the Crypkey SDK, used by Infovox Desktop to manage licensing.

  • The License option and Auth function return value boxes contain information that should be reported when asking for support to solve a licensing problem.


Advanced

License Manager

The Advanced Dialog Box

The Advanced button allows you to perform administrative operations on the license.

You should not use the options listed here unless you are completely confident with the program. On Windows NT (or higher version of Windows) this button is disabled for users who do not belong to the administrative group.

When you click on the "Advanced" button, then you get a window with 4 buttons: Move license to another computer, Specify a new license directory, Kill license, and Reset license.

  • The Move license to another computer button lets you start the process of moving the license. This is a guided process, and a complete description is here.

  • The Specify a new license directory button allows you to specify in which directory are the Site Authorization license files stored. Please note that this command will not move the license, it only tells the Infovox Desktop to look for the license in a directory different from the current one.
    It is recommended not to change the license directory. However if you intend to do so, look here for a detailed description.
    If you want to know which is the current Site Authorization license directory, please refer to the     Detailed info dialog box.

  • Never use the Kill License feature unless you are completely sure that you want to permanently destroy your license. This feature will permanently remove your Infovox Desktop license, and there is no undo possibility.

  • The Reset License button cannot be used in Infovox Desktop, since this functionality is no longer of any use with the kind of license used by Infovox Desktop.


License Manager

Specify a new license directory

For advanced users only!

Please note that this command will not move the license, it only tells the Infovox Desktop to look for the license in a directory different from the current one.

If you are looking for instructions on how to move the license, then follow this link.

To specify a new license directory:

  1. Click on the License directory button.
    The Specify new license directory dialog box will pop up.

  2. Type the new license path in the Enter new license path box or click on the Browse button to search the new path using the graphic interface.

  3. Click on OK.

After you have specified a new license directory the information in the Site Code box and in the license list will be automatically updated.


License Manager

Moving the Site Authorization license

In case you want to move the Site Authorization license to another location on your hard disk, to another computer connected via a network, or even to another computer that has no connection with the computer currently owning the license, you can use the Move license feature.

This is a quite powerful feature that allows you to move your license to another computer with no need to buy new licenses or get a new Site Key from your authorized distributor.

There are 3 ways of moving an Infovox Desktop Site Authorization:

  • Transfer between two directories on the same hard disk

  • Transfer the license to another computer connected via network (only for Windows NT computers)

  • Transfer the license to another computer not connected via the network.


License Manager

Moving the Site Authorization license to a different directory

If you ever need to move the Site Authorization license files on your computer, then you have to use this feature. Please do not place the Site Authorization license in a directory that is commonly used for file transfers or that might possibly be deleted. The lost of any of the files associated with the license (usually files with name ”ivxDTP.*”) will result in the lost of the license itself.

Please note also that any attempt to move the Site Authorization license files manually will damage your Site Authorization license.

Note for Windows NT, Windows 2000 and Windows XP

Before running this command you need to start the CKCONFIG.EXE application that you find in your Windows NT directory (usually C:\WINNT) and make sure that the target directory is among those registered by the Site Authorization license server.

Note that you need Administrator privileges to perform this operation.

To move the Site Authorization license to a new directory:

  1. Click on the Advanced button and then on the Move license to another computer button.
    The Move license dialog box will pop up.

  2. Click on the Move license directly button.
    The Move license to another directory dialog box will pop up.

  3. Type the new license path in the Enter new license path box or click on the Browse button to specify the new path using the graphic interface.

  4. Click on OK.

After you have moved the license the information in the Site Code box and in the license list will be automatically updated.


License Manager

Moving the Site Authorization license to another computer via floppy disk

If you want to move the license to another computer using a floppy disk, then you need to perform a three-steps operation that will require you to move the floppy from the target computer to the source computer, and then back again. For this reason it is very convenient to have the two computers close to each other.

Please follow the procedure carefully while performing this operation. To perform this operation you need to have:

  • Source computer (referred here as SOURCE), where you have Infovox Desktop and the Site Authorization license that you want to move.

  • Target computer (referred here as TARGET) with Infovox Desktop installed but no Site Authorization license yet on the hard disk. If the target computer has a license that you want to get rid of (for instance a time limited license), then you should use the Kill License feature before starting the move operation.

  • Blank formatted floppy disk.

To perform the procedure here described you also need to have the License Manager application active on both computers.

  1. On the TARGET computer, click on the Advanced button and then on the Move license to another computer button.

  2. When the Move license dialog box comes up, click on the Move license with floppy button.

  3. Then, in the Move license with floppy dialog box, click on the Target computer option.

  4. Insert the floppy disk in the disk drive and click on 1. Create floppy for transferring license to start the operation.
    The Prepare floppy to receive license dialog box will pop up.

  5. Select the unit number of the drive where you have inserted the floppy disk and click on OK.

  6. Leave the License Manager opened and take the floppy disk to the SOURCE computer.

  7. On the SOURCE computer, click on the Advanced button and then on the Move license to another computer button.

  8. When the dialog box comes up, click on the Move license with floppy button.

  9. In the new Move license dialog box, click on the Source computer option.

  10. Insert the floppy disk that you have created on the TARGET computer on steps 5 in the disk drive and click on 2. Transfer license to floppy to transfer the license from the hard disk to the floppy disk.

    Please note that the license on the floppy disk now it is already prepared for the TARGET computer and it would not work on any other computer. You cannot at this point cancel the operation, since the Site Authorization license on the SOURCE computer has been registered for the transfer and is not accessible anymore. So you must now take the floppy disk with the license to the TARGET computer and complete the operation.

  11. Take the floppy disk to the TARGET computer, insert it in the drive and click on 3. Transfer license from floppy.

The license has now been transferred from the SOURCE computer to the TARGET computer.

After you have moved the license the information in the Site Code box and in the license list will be automatically updated on both computers.


License Manager

Troubleshooter

Here you will find some of the most common problem you might experience using the Infovox Desktop License Manager.

For problems not listed here, please contact your local distributor. You might also want to check for updated support information on the Infovox web site.


License Manager

Compatibility with hard disk defragmenter

The Site Authorization license has proved to be highly reliable and compatible. However a known threat is represented from special defragmentation programs. Most of the defragmentation application will not have any effect on the license, but if you use some special defragmentation program or some advanced option that allows relocation of system hidden files, then you could harm the Site Authorization license. At the moment of writing, the only program known to do this is the Symantec's Norton Utilities SpeedDisk. If you use this utility, then you have to make sure that you disable the relocation of system files and files with the following extension: *.ENT, *.KEY, and *.RST.


No Site Code

License Manager

No Site Code available (on Windows NT/2000/XP)

This is a very rare problem, however we provide the solution since this problem would prevent you from getting the license to work. There are several alternative solution, in almost all cases the first solution would be enough.

Before running this solution steps, please check the value of "Auth function return value" in the Detailed Info box, it should report an error string and then a negative error code (usually -103).

Always start with this solution:

  1. Open a Command prompt window (sometimes called MS-DOS prompt) and go to the Infovox License directory, usually "c:\infovox.lic".

  2. Type "setupex /d" and click on <enter> to uninstall the driver

  3. Reboot the computer

  4. Open again Command prompt window and go to the Infovox License directory

  5. Type "setupex" and click on <enter> to re-install the driver

  6. Launch the Infovox Desktop Licence Manager and check if the Site Code is present. If you see the site code then the problem is solved.

If the error is still there, then:

  1. Open a Command prompt window and go to the Infovox License directory

  2. Type "setupex /U" and click on <enter> to uninstall the driver

  3. Reboot the computer

  4. Open again Command prompt window and go to the Infovox License directory

  5. Type "setupex" and click on <enter> to re-install the driver

  6. Launch the Infovox Desktop Licence Manager and check if the Site Code is present. If you see the site code then the problem is solved.

If the error is still there, then:

  1. Open a Command prompt window and go to the Infovox License directory

  2. Type "setupex /F" and click on <enter> to uninstall the driver

  3. Reboot the computer

  4. Open again Command prompt window and go to the Infovox License directory

  5. Type "setupex" and click on <enter> to re-install the driver

  6. Launch the Infovox Desktop Licence Manager and check if the Site Code is present. If you see the site code then the problem is solved.

If the problem is still there then open the Services list from the Control Panel and stop the CrypKey License service and delete the following files:

  • from the "WINNT/System32" directory delete ckldrv.sys, crypserv.exe and esnecil.ind

  • from the "WINNT" directory delete ckfresh.exe, ckconfig.exe, setup_ck.dll, setup_ck.exe

Then run setupex.exe again


The Speech Application

The Infovox Desktop Speech Application shows some of the capabilities of the Infovox Desktop Text-to-Speech Engine and has few of the typical features of a standard text-to-speech client application.

The main functions of this application are listed here:

  • Speak out aloud any text file or any text directly typed in the Speech Application window using any of the available Infovox Desktop voices

  • Access the Infovox Desktop Engine Properties box or the Lexicon Browser

  • Testing the SAPI Tags

Starting the Speech Application

To start the Speech Application:

  1. Open the Infovox Desktop program group.

  2. Click the Infovox Desktop Speech Application icon.

In the Infovox Desktop Speech Application window you will see an empty document window. You can now type any text (or load a text file) and then have it played by Infovox Desktop.


Speech Application

The File menu

Use the New command from the File menu to create a new text file. An empty document window appears, ready for editing.

Use the Open command from the File menu to open a file, you will be prompted with the familiar Open File dialog box. Double-click on the name of the file you want to open and its content will appear in a new document window.

Use the Close and Save commands from the File menu to close and save files. To save the file with a different name, choose Save as.

You can also take advantage of all the printing facilities commonly supported by the windows applications, through the Print, Print Preview and Print Setup commands. Right below these commands on the File menu you will see a list of the text files opened most recently. Click on a filename to open it in a new document window.

Use the Exit command from the File menu to quit the Speech Application.


Speech Application

The Edit menu

You can edit the text in the open document in the familiar way, using the Undo, Cut, Copy, Paste and Delete commands from the Edit menu.

Use the Select All command from the Edit menu to highlight all the text in the active document window.


Speech Application

The Settings menu

Use the Properties command from the Settings menu to bring up the Infovox Desktop Properties box. Click here for more information on the Text-to-Speech Engine Properties dialog box.

Use the Lexicon command from the Settings menu to bring up the Lexicon Browser. Click here for more information on the Lexicon Browser.

Use the About command from the Settings menu to bring up the About box for Infovox Desktop containing version information.


Speech Application

The Speak menu

Use the Play command from the Speak menu to have the text in the edit window spoken aloud. The Speech Application automatically starts to read the text from the beginning of the file. If you wish to listen only to a specific portion of text, highlight that portion before you choose the Play command.

While the speech is in progress, you can choose the Stop command from the Speak menu to stop the speech. You can also choose the Pause command from the Speak menu to suspend the speech, then when you choose the Pause command again, the speech output will resume.


Speech Application

Selecting a voice

If you want to select a different voice to speak the text in the current window you can do it quickly by using the Voice list on top of the main window of the Speech Application. As an alternative you could of course also choose a mode from the Engine Properties box, and there you could also set new values for the various parameter (Speed, Pitch and Dynamics for instance).

To select a new mode you only need to click on the small arrow next to the Voice list, and select the desired voice from the drop-down list.


Speech Application

Using Tags

If you want to use the Microsoft Speech API control tags in your text, you need to check the Tagged Text option in the main window of the Speech Application.

Here is an example of tagged text:

\Spd=150\ Now I speak normal, \Spd=300\ here I speak a bit faster, and soon I will \Spd=40\ speak very slowly!

For more information on Control Tags click here. Few special remarks on the control tags available for the Infovox Desktop refer to the chapter dedicated on the Speech API implementation in this guide.


Speech Application

Troubleshooter

Error message at startup

If you get an error message when starting the Infovox Desktop Speech Application, there are two common causes:

  • You do not have a license or your license has expired. Please open the License Manager and verify that your license is active.

  • There is a configuration error with your sound card. This is often the case when you use the general audio drivers, often referred to as "Soundblaster compatible". To use Infovox you need to have the right driver matching the model of your soundcard, the problem is in fact that certain operation (like playing a WAV or MP3 file) can usually be done with a general purpose driver, but other more specifical audio operations, like those required by SAPI, requires to use the proper audio driver.

No audio from the loudspeakers

If you have typed a text in the document window and pressed play and you can't hear any audio, please check the following:

  • your loudspeakers are correctly connected

  • the windows volume is not at a very low level

  • open the settings menu and choose properties and make sure that the Infovox volume is set to a proper level (note that the Infovox volume corresponds to the WAVE volume controller in the Windows mixer)


Developer information

This chapter is targeted to developers who intend to develop an application using the Infovox Desktop Text-to-Speech engines.

Infovox Desktop can be accessed via the Microsoft Speech API (SAPI) programming interface. The version of SAPI that you can use with Infovox Desktop is version 4.0a and earlier. SAPI 5 is not supported.

Information on the SAPI interface and on its implementation in Infovox Desktop can be found here.

Information on the Control TAGS recognized by Infovox Desktop can be found here.

Information on the additional interfaces supported by Infovox Desktop will be found here.


Microsoft SAPI

Developer Information

Microsoft Speech API

The Microsoft Speech API (often referred as SAPI) is a programming standard developed by Microsoft to help the integration between provider of speech technology and application developer.

The Infovox engines is compliant with Microsoft Speech API version 3.0. However version 4 of the API comes with a better runtime module and it is completely compatible with previous versions of the API, this is why we usually refer to SAPI 4 instead of SAPI 3. SAPI 4.0a is also the version of SAPI distributed with the Infovox Desktop setup program.

Please note that Infovox Desktop is NOT compatible with SAPI 5. SAPI 5 is not compatible with any of the previous versions of SAPI, so it cannot be used with Infovox Desktop.

For more information on SAPI please visit the Microsoft Speech website. At this address you'll also find a complete SDK containing documentation, runtime objects and sample programs. Make sure you are downloading version 4.0a of the SDK, and not the SDK for SAPI 5.


Notes on SAPI 4 implementation in Infovox Desktop

Developer Information

Notes on SAPI implementation in Infovox Desktop

The Infovox Text-to-Speech engines meet the Microsoft Speech API 3.0 requirements, except in few cases here documented.

ITTSDialog::TranslateDlg

This dialog box (not mandatory according to the Speech API implementation) is not supported by the Infovox Text-to-Speech engines.

ITTSCentral::Inject and ITTSCentral::Phoneme

These functions are not implemented and, if called, always return E_NOTIMPL.

ITTSAttributes::VolumeSet

Due to an ambiguity in the Microsoft Speech API specifications, there are two ways of interpreting the volume level. The first way is to interpret the double word (= 4 bytes) input as 2 words specifying independently the volume for the right channel (high-order word) and left channel (low-order word). The second description is to assume monophonic output and accept a single word (= 2 bytes) parameter to specify the level for both channels.

Since the Text-to-Speech Engine has no way to know what is meant by the client application, Microsoft has adopted the following compromise:

  • If the input value is a single word value (i.e. less than 65.535), then it is assumed that both right and left channel has to be set to the level specified by the user.

  • If the input value is a double word value (i.e. greater or equal to 65.636) then it is assumed that the right and left channel levels are being specified separately.

Examples:

  1. Input parameter = 32768
    The volume is set to 50% to both channels.

  2. Input parameter = 4294918144
    A value of 4294918144 (0xffff4000 in hexadecimal notation) sets the maximum level for the right channels, and a level of 25% for the left channel.

ITTSBufNotifySink::WordPosition

This function is implemented and works correctly. But some words need to be spent on how to define a "word" in this context. For Infovox Desktop a word is a sequence of characters or digits separated by a word delimiter.

Word delimiters include the natural ones (blankspace, punctuation...), but even characters over ASCII code 128 might be counted as separator characters, depending on the language being used and also on the sentence context (this applies to punctuation as well).


SAPI Tags

Here is the set of the SAPI control tags implemented by Infovox Desktop. All tags are based on the Microsoft Speech API 4.0 standard.

Bookmark

Syntax: \Mrk=number\

Example: \Mrk=75000\

Pitch

Syntax: \Pit=number\

Example: \Pit=90\

This example sets the base frequency of the speech to 90 Hz.

Reset

Syntax: \Rst\

The Rst tag resets the voice parameter to the default values.

Speed

Syntax: \Spd=number\

Example: \Spd=120\

This example sets the speech rate to 120 words per minute.

Voice

Syntax: \Vce=charact=value[[,charact=value]]\

Where charact can be one of the following: language, speaker, gender, or age.

Examples:

\Vce=language=”English”,accent=”American”\ or

\Vce=language=”American English”\ or

\Vce=language=”Swedish”\

\Vce=speaker=”Rik”\

\Vce=gender=”female”\ or \Vce=gender=”male”\

\Vce=age=”child”\ or \Vce=age=”adult”\

Volume

Syntax: \Vol=number\

See the considerations about the ITTSAttributes::VolumeSet function on how to specify the input value for this control tag.

Example: \Vol=32768\

This example sets the volume to 50% to both channels.

Example: \Vol= 4294918144\

A value of 4294918144 (0xffff4000 in hexadecimal notation) sets the maximum level for the right channels, and a level of 25% for the left channel.

Note: A limitation of the volume tag is that the volume change will take place at the beginning of the text containing the Volume control tag, not at the exact point where the tag is inserted.


Infovox COM Interfaces

Infovox proprietary COM Interfaces

Besides supporting the SAPI COM INterfaces, Infovox has some proprietary COM interface that allows you to access other features that are not part of the SAPI interface. This features includes:

  • Lexicons management

  • Equaliser management

  • Reading mode settings

Beside these, you can also access some standard SAPI feature for controlling the voice parameters in a different way by using one of our proprietary interface. This was mostly done for compatibility with products that were using the 16-bit version of Infovox Text-to-Speech.


Developer Information

Interface IvxTTSLexicon

This Infovox specific COM interface allows you to control which user lexicons are going to be used directly from your own application.

The interface contains two functions (beside the standard COM functions):

  • SetLexicon: to set the new settings for the user lexicons

  • GetLexicon: to retrieve the current settings

This interface is available in the Infovox Desktop product and in Infovox Enterprise from release 2.0.

Obtaining a reference to the IVXTTSLexicon interface

Typically you will obtain a pointer to this interface from a pointer to the ITTSCentral Interface.

PITTSCENTRAL pCentral;

PTTSIVXLEXICON pLexicon;

// ... First obtain a valid pointer to the pCentral interface ...

// ...then

hRes = pCentral->QueryInterface(IID_ITTSIvxLexicon, (void**)&pLexicon);

ANSI and UNICODE

Since this interface uses strings, there are two versions of it. If you just use the usual type identifiers (IID_ITTSIvxLexicon, PTTSIVXLEXICON, and ITTSIvxLexicon) then the system will choose the UNICODE or ANSI version depending on your project settings.

If you want to explicitly control which version you use, the you need to use the specialized type identifiers, specified according to the same conventions used by Microsoft int the Windows API and in the Speech API:

For UNICODE version: IID_ITTSIvxLexiconW, PTTSIVXLEXICONW, and ITTSIvxLexiconW

For ANSI versions: IID_ITTSIvxLexiconA, PTTSIVXLEXICONA, and ITTSIvxLexiconA

Include file

To use the IvxTTSLexicon interface you need to include the "IvxAttr3.h" file.

IvxTTSLexicon::SetLexicon

HRESULT SetLexicon (DWORD dwPosition, LPTSTR sLexiconPath);

This function can be used both for activating a new lexicon or for removing a current one.

Parameters

  • dwPosition [in]: Indicates which lexicon is to be added/removed. This parameter is used differently by Infovox Enterprise and Infovox Desktop.
    Infovox Enterprise    : this number must be in the range [0..4]. 0 indicates the first lexicon (with higher priority), 4 iindicates the fifth and last lexicon (with lowest priority).
    Infovox Desktop    : This parameter is ignored (only one lexicon allowed).

  • sLexiconPath [in]: Complete pathname of the file containing the lexicon to be set at the position pointed by dwPosition. If this parameter is NULL, then the Lexicon in the position indicated by dwPosition is unloaded.

Return Value

NOERROR if the function succeeded or E_FAIL if the lexicon could not be set on the specified position. Other error values might be possible in Infovox Enterprise depending on the database support. If you get different return values, please report this to the infovox support team (support@infovox.se).

IvxTTSLexicon::GetLexicon

HRESULT GetLexicon (DWORD dwPosition, LPTSTR sLexiconPath, DWORD dwMaxLength, DWORD *pdwRequiredLength);

This function can be used to retrieve the name of the lexicon currently loaded. In Infovox Enterprise you need also to specify for which of the 5 available lexicon slots you are requiring information.

Parameters

  • dwPosition [in]: Indicates for which lexicon slot you require information. This parameter is used differently by Infovox Enterprise and Infovox Desktop.
    Infovox Enterprise    : this number must be in the range [0..4]. 0 indicates the first lexicon (with higher priority), 4 iindicates the fifth and last lexicon (with lowest priority).
    Infovox Desktop    : This parameter is ignored (only one lexicon allowed).

  • sLexiconPath [in, out]: In this field you will get the pathname of the file containing the lexicon set at the position pointed by dwPosition. If there is no lexicon loaded, then the function returns E_FAIL and sLexiconPath is set to a void string.

  • dwMaxLength [in]: Maximum number of characters that can be written in the sLexiconPath buffer. If the buffer is not big enough, then the function returns E_INVALIDARG and pdwRequiredLength contains the required buffer size.

  • pdwRequiredLength [in, out]: This parameter is set to the size of the string required for sLexiconPath. It is zero if no lexicon is set in the specified position.

Return Value

NOERROR if the function succeeded or E_FAIL if no lexicon is available on the specified position. Other error values might be possible in Infovox Enterprise depending on the database support. If you get different return values, please report this to the infovox support team (support@infovox.se).


Interface IvxTTSEqualiser

Developer Information

Interface ITTSIvxEqualiser

This Infovox proprietary COM interface allows you to control the Equaliser from your application.

The interface contains two functions (beside the standard COM functions QueryInterface, AddRef and Release):

  • SetEqualiser: to provide the new settings for the equaliser

  • GetEqualiser: to retrieve the current equaliser settings

This interface is available in all Infovox Desktop versions and in Infovox Enterprise versions 2.0 or higher.

Obtaining a reference to the ITTSIvxEqualiser interface

Typically you will obtain a pointer to this interface from a pointer to the ITTSCentral Interface.

PITTSCENTRAL pCentral = NULL;

PTTSIVXEQUALISER pEqualiser = NULL;

// ... First obtain a valid pointer to the pCentral interface ...

// ...then

hRes = pCentral->QueryInterface(IID_ITTSIvxEqualiser, (void**)&pEqualiser);

ANSI and UNICODE

This interface does not use strings, so there is just one version of the Interface.

Include file

To use the ITTSIvxEqualiser interface you need to include the "IvxAttr3.h" file.

ITTSIvxEqualiser::SetEqualiser

HRESULT SetEqualiser (BOOL fActive, int iF1, int iF2, int iF3, int iF4);

This function is used to set the Equaliser configuration.

Parameters

  • fActive [in]: This is a boolean value: TRUE Indicates that the equaliser has to be turned on. FALSE means that the Equaliser has to be turned off.
    If you turn the equaliser OFF the other parameters have no effect on the sound quality.

  • iF1 [in], iF2 [in], iF3 [in], and iF4 [in]: This four parameters set the value of the 4 rulers (filters) of the equaliser, where iF1 is the one acting on the lowest frequency and iF4 on the highest. The 4 values correspond to the frequency bands of 200 Hz, 1.6 KHz, 3.6 KHz and 6 KHz respectively.
    The value of each filter should be in the range of [-100, 100], where -100 means that the corresponding frequency will be attenuated by 10 dB, 0 means that the frequency is left unaltered, and 100 means that the frequency will be amplified by 10 dB.
    If one of the values is outside the allowed range, the setting will be rounded to the closest allowed value.

Return Value

This function always returns NOERROR.

ITTSIvxEqualiser::GetEqualiser

HRESULT GetEqualiser (BOOL *pfActive, int* piF1, int* piF2, int* piF3, int* piF4);

This function is used to retrieve the current Equaliser configuration.

Parameters

  • fActive [in, out]: Point to a boolean value that is set to TRUE if the equaliser is currently active, or to FALSE if the equaliser is currently off.
    If the equaliser is OFF than the remaining parameters can be ignored.

  • piF1 [in, out], piF2 [in, out], piF3 [in, out], and piF4 [in, out]: Point to four variable that are set to the current value of the 4 rulers (filters) of the equaliser, where iF1 is the one acting on the lowest frequency and iF4 on the highest. The 4 values correspond to the frequency bands of 200 Hz, 1.6 KHz, 3.6 KHz and 6 KHz respectively.
    The value of each filter is in the range of [-100, 100], where -100 means that the corresponding frequency will be attenuated by 10 dB, 0 means that the frequency is left unaltered, and 100 means that the frequency will be amplified by 10 dB.

Return Value

NOERROR if everything is OK, or E_INVALIDARG if any of the pointers provided to the function is invalid.


Developer Information

Interface ITTSIvxAttributes2

This Infovox proprietary COM interface allows you to control the following Infovox specific features:

  • Dynamics

  • Reading mode

  • Pause between sentences

  • Phonetic char

This interface provide you also with an alternate method of controlling these standard Speech API features, though using a different scale, inherited from older Infovox products:

  • Speech rate

  • Volume

  • Pitch

Obtaining a reference to the ITTSIvxAttributes2 interface

Typically you will obtain a pointer to this interface from a pointer to the ITTSCentral Interface.

PITTSCENTRAL pCentral;

PITTSIVXATTRIBUTES2 pITTSIvxAttr = NULL;

// ... First obtain a valid pointer to the pCentral interface ...

// ...then

hRes = pCentral->QueryInterface(IID_ITTSIvxAttributes2, (void**)&pITTSIvxAttr);

ANSI and UNICODE

This interface uses characters, so there are two versions of the interface. Please note that in order to use the CharSet function you need to use the ASCII version, since our internal processor cannot use Unicode delimiters.

If you just use the usual type identifiers (IID_ITTSIvxAttributes2, PITTSIVXATTRIBUTES2, and ITTSIvxAttributes2) then the system will choose the UNICODE or ANSI version depending on your project settings.

If you want to explicitly control which version you use, the you need to use the specialized type identifiers, specified according to the same conventions used by Microsoft int the Windows API and in the Speech API:

For UNICODE version: IID_ITTSIvxAttributes2W, PITTSIVXATTRIBUTES2W, and ITTSIvxAttributes2W

For ANSI versions: IID_ITTSIvxAttributes2A, PITTSIVXATTRIBUTES2A, and ITTSIvxAttributes2A

Include file

To use the ITTSIvxEqualiser interface you need to include the "IvxAttr3.h" file.

ITTSIvxAttributes2::ReadModeSet

HRESULT ReadModeSet(WORD wReadMode);

This function sets the engine in one of the reading modes allowed by the Infovox Text-to-Speech engines.

Parameters

  • wReadMode [in]: Set this value to one on the two following constants (defined in IvxAttr3.h):

    • IVX_READMODE_LETTER to have the text spelled out character by character

    • IVX_READMODE_SENTENCE (default value) to have the engine speaking whole sentences with a natural intonation

Return Value

NOERROR if everything is OK, E_INVALIDARG if an invalid value is passed, or E_NOTIMPL if you try to set some older mode no longer supported.

ITTSIvxAttributes2::ReadModeGet

HRESULT ReadModeGet(WORD *pwReadMode);

This function returns the currently selected reading mode.

Parameters

  • pwReadMode [in, out]: Point to a value that can be one of the two following costants (defined in IvxAttr3.h):

    • IVX_READMODE_LETTER spelling mode is currently active

    • IVX_READMODE_SENTENCE (default value) the default (sentence) mode is currently active

Return Value

NOERROR if everything is OK, E_INVALIDARG if an invalid pointer was provided, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::CharSet

HRESULT CharSet(WORD wProp, TCHAR chChar);

This function allows you to set characters that have a particular interpretation in the Infovox text processing. At the moment, the only character that is possible to set is the Phonetic text marker, that is, the character that delimits a phonetic representation of a word or a sentence. The Phonetic Prefix character can also be set in the Engine Property box.

We strongly recommend not to change the Phonetic text marker from its default value ('#'), unless you have a specific need, most lexicons are based on the '#' character to delimit a phonetic representation and they will fail to work if you change the delimiter.

Parameters

  • wProp [in]: The only allowed value is IVX_CHAR_PHONETIC

  • chChar [in]: Specify the character that delimits the phonetic string. The default character is ‘#’

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::CharGet

HRESULT CharSet(WORD wProp, TCHAR* pchChar);

This function allows you to get the current setting for characters who have a particular interpretation in the Infovox text processing. At the moment, the only character that is possible to set is the Phonetic text marker, that is, the character that delimits a phonetic representation of a word or a sentence.

Parameters

  • wProp [in]: The only allowed value is IVX_CHAR_PHONETIC

  • pchChar [in, out]: Points to the character that is currently being used to delimit the phonetic string.

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value or the pointer is invalid, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::SpeechSet

HRESULT SpeechSet(WORD wProp, DWORD dwValue);

This function allows you to set several speech parameters, depending on the value of wProp variable.

Parameters

  • wProp [in]: Set this value to one on the two following constants (defined in IvxAttr3.h):

    • IVX_SPEECH_RATE Sets the speech rate

    • IVX_SPEECH_VOLUME Sets the volume level

    • IVX_SPEECH_PAUSE Sets whether the pause between sentences should be long or short.

  • dwValue [in]: The dwValue argument specifies the value for the selected property. It can assume different values depending to wProp argument:

    • For IVX_SPEECH_RATE and IVX_SPEECH_VOLUME the dwValue specifies the rate or the volume on a scale 0-100

    • For IVX_SPEECH_PAUSE dwValue can be FALSE (short pause between sentences) or TRUE (long pause between sentences)

Please note that the scales used here for IVX_SPEECH_RATE and IVX_SPEECH_VOLUME are not the same as Speech API defines for this properties, but is the 0-100 scale used in the Engine Property box. If you want to use the standard Speech API scale, then you should use the standard Speech API functions ITTSAttributes::SpeedSet or ITTSAttributes::VolumeSet.

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::SpeechGet

HRESULT SpeechGet(WORD wProp, DWORD* pdwValue);

This function allows you to retrieve the current setting for the property specified in the wProp argument.

Parameters

  • wProp [in]: Set this value to one on the two following constants (defined in IvxAttr3.h):

    • IVX_SPEECH_RATE To get the speech rate

    • IVX_SPEECH_VOLUME To get the volume level

    • IVX_SPEECH_PAUSE To get whether the pause between sentences should be long or short.

  • pdwValue [in, out]: This points to the value for the selected property. It can assume different values depending to the wProp argument:

    • For IVX_SPEECH_RATE and IVX_SPEECH_VOLUME the dwValue specifies the rate or the volume on a scale 0-100

    • For IVX_SPEECH_PAUSE dwValue can be FALSE (short pause between sentences) or TRUE (long pause between sentences)

Please note that the scales used here for IVX_SPEECH_RATE and IVX_SPEECH_VOLUME are not the same as Speech API defines for this properties, but is the 0-100 scale used in the Engine Property box. If you want to use the standard Speech API scale, then you should use the standard Speech API functions ITTSAttributes::SpeedGet or ITTSAttributes::VolumeGet.

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::VoiceSet

HRESULT VoiceSet(WORD wProp, DWORD dwValue);

This function allows you to set several voice parameters, depending on the value of the wProp variable.

Parameters

  • wProp [in]: Set this value to one on the two following constants (defined in IvxAttr3.h):

    • IVX_VOICE_PITCH Sets the pitch level for the voice

    • IVX_VOICE_DYNAMICS Sets the dynamics level for the voice

    • IVX_VOICE_ASPIRATION Sets the aspiration level for the voice (only used by Infovox 230)

  • dwValue [in]: The dwValue argument specifies the level for the selected property. Its range is from 0 to 100 in all cases.

Please note that the scale used here for the IVX_VOICE_PITCH is not the same as Speech API defines, but is the 0-100 scale used in the Engine Property box. If you want to use the Speech API scale (corresponding to base frequency expressed in Hertz), then you should use the standard Speech API function ITTSAttributes::PitchSet.

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value, or E_FAIL if the engine fails to provide the information (internal error).

ITTSIvxAttributes2::VoiceGet

HRESULT VoiceGet(WORD wProp, DWORD* pdwValue);

This function allows you to retrieve the current setting for the property specified in the wProp argument.

Parameters

  • wProp [in]: Set this value to one on the two following constants (defined in IvxAttr3.h):

    • IVX_VOICE_PITCH Retrieves the current pitch level

    • IVX_VOICE_DYNAMICS Retrieves the current dynamics level

    • IVX_VOICE_ASPIRATION Retrieves the current aspiration level (only used by Infovox 230)

  • pdwValue [in, out]: This points to the value for the selected property. It assumes different values depending to the wProp argument.

Please note that the scale used here for the IVX_VOICE_PITCH is not the same as Speech API defines, but is the 0-100 scale used in the Engine Property box. If you want to use the Speech API scale (corresponding to base frequency expressed in Hertz), then you should use the standard Speech API function ITTSAttributes::PitchGet.

Return Value

NOERROR if everything is OK, E_INVALIDARG if wProp is set to an illegal value, or E_FAIL if the engine fails to provide the information (internal error).


Engine Property Say

Engine Property Box

Say Button

Use this button to speak the text written in the Sample text box.


Lexicon Browser

The User Lexicon

A user lexicon consists of a list of names (which works as a lookup string) and translations. For instance, let’s suppose that we want the Infovox Desktop Text-to-Speech Engine to actually speak the sentence ”as soon as possible” every time in the text the acronym ”ASAP” is encountered. To achieve this we have to add to the active user lexicon file an entry whose name is ”ASAP” and whose translation is ”as soon as possible”. The translation string can also be specified as phonetic text, by enclosing it with phonetic prefix characters and using the phonetic symbols defined for the language in use.

Please refer to the language-specific manuals for a in-depth coverage of the phonetic alphabets used by Infovox. The language-specific manuals are distributed with the Installation CD.

The specific user lexicon to be used during a working session can also be selected in the Text-to-Speech Engine Properties dialog box.


.topic 2154234875
Choose a voice from the list.

.topic 2154234890
Choose a lexicon from the list.

.topic 2154234871
Choose an item from the list.

.topic 2154234858
Drag the slider to select your preferred value

.topic 2154234859
Drag the slider to select your preferred value

.topic 2154234866
Drag the slider to select your preferred value

.topic 2154234867
Drag the slider to select your preferred value

.topic 2154234878
Click this button to make your choice.

.topic 2154234899
Here you can set the character used from Infovox to switch from normal character mode to the special phonetic character mode

.topic 2154234884
Enter your input in this field.

.topic 2154234872
Click this button to make your choice.

.topic 2154233857
Click this button to make your choice.

.topic 2154234873
Click this button to make your choice.

.topic 2154234869
Click this button to make your choice.

.topic 2154234896
Select your preferred option.

.topic 2154234897
Select your preferred option.

.topic 2154234891
Click here to turn ON or OFF the equaliser

.topic 2154234881
Drag the slider to set the first band of the equaliser

.topic 2154234882
Drag the slider to set the second band of the equaliser

.topic 2154234883
Drag the slider to set the third band of the equaliser

.topic 2154234885
Drag the slider to set the fourth band of the equaliser

.topic 2154234870
Click this button to make your choice.

.topic 10549
Choose an item from the list.

.topic 10550
Click this button to make your choice.

.topic 10551
Click this button to make your choice.

.topic 10552
Click this button to make your choice.

.topic 10553
Click this button to make your choice.

.topic 10556
Enter your input in this field.

.topic 10558
Enter your input in this field.

.topic 10559
Click this button to make your choice.

.topic 10560
Click this button to make your choice.

.topic 10561
Click this button to make your choice.

.topic 10564
Enter your input in this field.

.topic 10565
Click this button to make your choice.

.topic 10566
Click this button to make your choice.

.topic 10567
Click this button to make your choice.

.topic 10568
Click this button to make your choice.

.topic 10569
Click this button to make your choice.

.topic 10570
Click this button to make your choice.

.topic 10571
Click this button to make your choice.