A trick I used to simulate different voices in Version 2

Forum for TextAloud version 4

Moderator: Jim Bretti

Post Reply
tringate
Posts: 10
Joined: Wed Nov 16, 2005 11:51 am
Location: Tampa
Contact:

A trick I used to simulate different voices in Version 2

Post by tringate »

I have an old post here in forum Version 2 discussing a problem I was having years ago.
Unfortunately I do not see a way in Version 4 to implement this same trick.
Ken was the person who tipped me off on how to do this.
I use the punctuation editor to set up a set of names with different voices, pitch, rate.
I used the characters name in the story followed by two colons in the text to insert this command string

This did not do like a spell check and replace the special text string, it simply did what the commands told it to do.
The text file was left unmodified.
The entries looked like this: Phyllis:: and defined like this in the editor: <voice required="name = VW Kate"> <pitch absmiddle="-4"> <rate absspeed="1">

In the story text you would type something like this:
Phyllis::
How are you?
Jim::
I am fine. did you have a nice day?
Phyllis::
Yes.

This worked fairly well, and it was easy to remember the "key" since it was the person who was talking name::.
I have hundreds of files set-up like this and have become very use to doing it this way.

I see the the voice isn't the same at the tags in version 4. I tried to do this anyway but the editor didn't like it as it was not a valid phoneme.

I noticed that in the editor in Version 4 there isn't an option to say "ignore" but use the defined data, which is what Version 2 was doing.

I have a rather extensive list of these names after years of different stories.

My first thought was to use "hot keys" but there isn't enough keys to do that. Plus you would never remember what key was for what name.
The way I was doing it you didn't have to remember anything other than type the name followed by two colons.

The only way I see to do it now is to select the voice, then select the rate tag and then the pitch tag. What was a few key strokes is now a major effort selecting different functions, then answering the prompt for the value of the pitch or rate.

At present, the only idea I can come up with is to run all my existing files thought a text editor like notepad++ and build a macro to replace all the name keys with the new voice, rate, pitch tags.

For new files, I could use this same extra step and convert before using TextAloud since trying to do in in TextAloud would not work at all.

It really makes it difficult when doing a new story and using a new name. Before it was a simple one line add to the pronunciation editor.

I hope someone has a trick up their sleeve to simplify this.

Tom
Tom
Jim Bretti
Posts: 1558
Joined: Wed Oct 29, 2003 11:07 am
Contact:

Re: A trick I used to simulate different voices in Version 2

Post by Jim Bretti »

Hi Tom,

There are a few things I'm not following, but basically I think what you're trying to do should work in TextAloud 4. If I understand correctly, you'd like to use a 'key' like Phyllis:: to correspond to a text match in the pronunciation editor, and replace with a string of Sapi5 xml tags. That should be doable.

If you have an existing TextAloud 2 dictionary that does this, we should be able to convert it to a TextAloud 4 dictionary. If you send me your UserTranslations.chl file from TextAloud 2, I'll convert it to a TextAloud 4 dictionary, mail it to me at jim@nextup.com.

Some things I'm not following in your post ...

Is the new voice change tag in TextAloud 4 causing problems for you? The new tag, {{voice=xyz/}} does exactly the same thing as the sapi5 xml voice change tag, but in addition, the new voice tag automatically applies speed, pitch and volume tags you have configured for the voice. It only does this if you don't use speed, pitch or volume change tags in the text. So if you are using your own speed / pitch / volume tags, TextAloud 4 assumes you are controlling these voice attributes manually, otherwise, they change automatically at each voice change.

The new voice change is actually translated to a Sapi5 XML tag, so you can still use Sapi5 XML tags like <voice required="name = VW Kate">. If you're using tags like this in your dictionary they should work.

I'm not following how you're seeing a "not a valid phoneme" error. If you're seeing phoneme errors I'll need more information.

Also, I'm not following what you mean by a missing option to say "ignore", but use the defined data.
Jim Bretti
NextUp.com
tringate
Posts: 10
Joined: Wed Nov 16, 2005 11:51 am
Location: Tampa
Contact:

Re: A trick I used to simulate different voices in Version 2

Post by tringate »

Jim took the time to show me my old trick does work on TS 4. I did not understand the meaning of the options you select in the Pronunciation Usage window.
I was selecting the "phoneme" option where I should have been selecting the "respell" option.
Once I did that, everything worked exactly like it did in TA 2.

I should comment that using the pitch and rate tags to modify the voice works much better in TA 4 than it did in TA 2

The Microsoft voices are considerably better in windows 10 than they were back in Windows Vista which was the last OS I was using TextAloud in.

Jim tipped me off to be sure to close all the tags. My old dictionary entries in TA 2 did not do that.

an example is: <pitch absmiddle="0">
should be: <pitch absmiddle="0"/>
Notice the slash to properly close the xml statement.
The first entry has left it an open statement which would need a closing statement at some point, to be proper xml.

While this trick does give you a way to expand the number of voices you could use from only a few actual voices. Using it does not work very well if you use it within the same story where the two different voices are heard talking one after the other. You need a fairly significant difference before the voices are reprieved to be different. Usually a difference of 4 pitch steps will make a more realistic difference.

If you only need a couple, I would recommend using positive and negative numbers from the base voice. Each will sound more natural.
Tom
Post Reply