PDA

View Full Version : voice synthesis?



laggyluk
12-07-2013, 12:41 PM
Remember the 'computer voice' announcer from Half Life? Would be cool to have a something similar in my game. Anyone have experience in this subject or libraries to recommend?

phibermon
12-07-2013, 06:23 PM
I've played around with various voice synthesis projects that are available open source on Linux, tons of stuff if you google 'open source speech synth'. There's things like eSpeak which works across windows and Linux. if it can be compiled into a dynamic lib, and it's not classes etc. then it'd be a case of writing a pascal header, which is not too hard if you carefully step through the C header.

A lot of speech synthesis is commercial, there's a market, so don't expect to find a ready packaged solution for all OSes.

There's the microsoft speech API on most windows, but I don't know about headers. OSX probably has a speech api as well.

There's a google speech API that might be suitable for your needs as well

laggyluk
13-07-2013, 03:47 AM
i need a 'computer' voice therefor commercial solutions would be too good ;)

SilverWarior
13-07-2013, 06:45 AM
i need a 'computer' voice therefor commercial solutions would be too good ;)

Not realy. The only difference between some opensource or some comercial voice synthesysis is the maximum quality of voice synthesysis you can get. But you can still get computer like voice even from best voice synthesysis engine. It all depends on voice profile you are using.

WILL
13-07-2013, 07:24 AM
You could simply record your voice (or someone else that has a better voice for what you want) and down-sample the audio data so that it sounds more "retro computer-istic." Should that be what you are going for. :)

laggyluk
13-07-2013, 07:58 AM
not the same, i could just use speech synth in FL Studio if I wanted to have pre-recorded sentences

pitfiend
13-07-2013, 04:55 PM
After Phibermon comment, I find MARY voice synth and try the web demo, it's a java open source voice synth with some cool filters, when combined robot + jetpilot, got a nice computer voice. give it a try.

Carver413
13-07-2013, 06:52 PM
on linux there are more then a few tts engines that you could use but you will need to access them thru a shell comand. not quite what you had in mind I'm sure but it is a workable solution.

Mary TTS has some pretty good voices but is still a bit buggy last time I checked.
ESpeak is ok for a male sounding voice.
FLite does male and female
Festival about the same
SVox Pico (free comercial ?) has a very nice female voice and is used on androids as well, I dont know if other voices can be installed. maybe percused.
there is probable more that I haven't thought of.
using a shell comand I can use them all more or less, and until a better solution comes along that is how I will do it.

phibermon
14-07-2013, 11:20 PM
Basic Speech synths were available even on the Commadore 64. There are a set number of phenoms in human speech. the process of text to speech is basically about converting a word such as 'sausages' into the phenoms that make it up. Natural sounding speech is complex, lots of tone and inflection issues that are hard to replicate.

But a 'computer voice', something that's understandable (like Professor Stephen Hawkins voice) is relatively easy. You can get many files from lots of these open speech places that are essentially digital waveforms of existing phenoms or you can synth the phenoms in realtime, or you can do a mix of the two (which as I understand is how modern systems do it).

Text to Speech is a complex topic, but a basic speech synth isn't actually hard at all.

You see them all the time in the Demoscene, to create one isn't by any means a silly idea.

At a very rough guess, a simple, understandable synth is probably as hard as learning and coding a simple scripting engine or maybe say... a software implementation of a skeletal/bone animation lib.

it's probably not too far off that to be fair.

User137
15-07-2013, 02:07 AM
Mary TTS you mentioned does seem very clear human voice, for open source project. But what i saw it is a server-client based model (with http communication?), and written in Java. There was some example made with C too, but getting that to work on pascal is going to be a challenge.

Carver413
15-07-2013, 05:52 AM
Mary TTS you mentioned does seem very clear human voice, for open source project. But what i saw it is a server-client based model (with http communication?), and written in Java. There was some example made with C too, but getting that to work on pascal is going to be a challenge.
I haven't really done much with the Mary TTS as I known little about java. but it does have a large selection of voices which would be nice for a RPG. perhaps some day I'll have the time to dig into it a little deeper.

laggyluk
15-07-2013, 04:47 PM
from those I've checked eSpeak looks promising

Carver413
15-07-2013, 11:29 PM
from those I've checked eSpeak looks promising
I've never tried this but maybe you will find it useful
http://forum.lazarus.freepascal.org/index.php/topic,21174.msg123622.html#msg123622


(http://forum.lazarus.freepascal.org/index.php/topic,21174.msg123622.html#msg123622)

laggyluk
16-07-2013, 01:49 AM
nice, I'll give it a try