Page 3 of 3

Posted: Mon Feb 23, 2015 6:52 pm
by VilleK
Yes I had forgotten about it :). Although I had a vague memory of once seeing a networked ZGE demo. Thanks, I'll have another look!

Have anyone used this lib with ZGE and made anything besides the demo project included?

Posted: Tue Feb 24, 2015 1:13 am
by Carver413
Rado1 wrote:
Carver413 wrote:there is also festival, flite and open mary tts that work in linux. using shell scripts you can create sound files. not as good as an api but it works. flite is my favorite at the moment its small and there are 11 voices you can get for it. open mary has some nice sounding female voices but can be a bit buggy at times.
I'm aware of these TTS systems/libraries but all of them seems to be large, or at least their voice files are large comparing to built-in Windows TTS. Anyway, Carver413 are you able to compile flite on Windows and maybe also on Android? I was not able, there are missing some files in src distribution for v.2.0.0.
sorry I don't have anything but linux. but if your trying to make it multiplatform then it may be better to use the hts_engine

http://hts-engine.sourceforge.net/

Posted: Sat Mar 07, 2015 9:32 am
by Rado1
As Carver413 suggested, I tried to use Flite library for TTS. After some complications with compilation (the source distribution does not provide working VC project files) I produces DLLs for Flite library and cmu_us_rms voice.

Attached, you will find a ZGE demo project using Flite TTS.

Pros:
- Flite is a multi-platform, stand-alone library, so for several platforms ZGE would have the same API.
- Flite provides mostly a simple C API based on basic types, so there is no need to implement a wraper library, just a ZExternalLibrary component in ZGE.
- Produced voice is quite good.

Cons:
- DLLs are quite large - 780KB for fliteDll.dll, 3.1MB for language dll.
- Compilation of DLLs tells about some warnings which may cause problems in runtime; so implementation of Flite 2.0.0 is not too reliable (?).
- Synthesis does not run in a separate thread, so it blocks ZGE execution. However, thanks to Thread component it is not a big problem.

Remark 1: I did not study too much how to load voices to Flite, because their documentation is quite extensive. At the moment, I compile lang files to the form of dll and load it to ZGE as external library. I saw that there are also some voices available in the form of .flitevox files. Carver413, others, maybe you are experienced with this, what to do with .flitevox files, cannot be they loaded to Flite directly, e.g. by flite_voice_load() function? All my trials to use .flitevox files failed.

Remark 2: Ville, I also observed that if a thread with running flite_text_to_speech() function is stopped by the Stop button, ZGE crashes (VS debugger tells that it is caused by access violation). I'm not sure it is problem of ZGE or Flite implementation.

Posted: Tue Mar 10, 2015 9:47 am
by Imerion
Just tried this, running in Wine, and it works great! Thanks!

Posted: Tue Mar 10, 2015 10:45 am
by Rado1
Imerion wrote:Just tried this, running in Wine, and it works great! Thanks!
I'm glad it can work in Wine; thanks Imerion for reporting that. I do not use Linux, but I saw on web that (maybe using some tricks) it is possible to run SAPI 5/4 in Wine; if so, then maybe also ZgeSpeak library could work on Linux. (?)

Posted: Wed Mar 11, 2015 12:35 am
by Carver413
Rado1 wrote:
Imerion wrote:Just tried this, running in Wine, and it works great! Thanks!
I'm glad it can work in Wine; thanks Imerion for reporting that. I do not use Linux, but I saw on web that (maybe using some tricks) it is possible to run SAPI 5/4 in Wine; if so, then maybe also ZgeSpeak library could work on Linux. (?)
I suppose it would be possible but most people would not want to go that route. I,ve been playing around with the hts lib tring to get it running with pascal but so far no luck. the header file is such crap. (a point to a pointer to a pointer) who does that? no wonder I don't program in C.

Posted: Wed Mar 11, 2015 8:01 am
by VilleK
Carver413 wrote:I,ve been playing around with the hts lib tring to get it running with pascal but so far no luck. the header file is such crap. (a point to a pointer to a pointer) who does that? no wonder I don't program in C.
Ha ha, I know that frustration all too well :). Indeed, C-headers tend to have mindbogglingly strange (and unnecessarily complicated) things in them sometimes.

Posted: Wed Jul 15, 2015 1:44 pm
by Imerion
Not sure if this has been mentioned, but the GameJolt score API would be cool to have a ZGE implementation of. :-) This sort of came up since Im planning on joining the latest GameJolt game-jam.

http://jams.gamejolt.io/indiesvsgamers/api

Seems it can be used through the web as well though, so I should be able to do that otherwise.

Posted: Wed Jul 15, 2015 2:31 pm
by Kjell
Hi Imerion,
Imerion wrote:Not sure if this has been mentioned, but the GameJolt score API would be cool to have a ZGE implementation of.
This probably doesn't need a ZExternalLibrary though. From the looks of it ( the Game Jolt Game API documentation ) you could build a solution using a ( regular ) ZLibrary & WebOpen component.

K

Posted: Wed Jul 15, 2015 6:10 pm
by Rado1
Hi Imerion, Kjell is right, the GameJolt API is HTTP-based so you do not need DLL. However, I could imagine some effort to write wrapping functions to ZLibrary. I would do it by myself, but fortunately I have already started vacation without PC, so I cannot help now. But if you, or somebody else, will do it, I will be happy to use it. Rado1

Posted: Fri Jul 17, 2015 10:18 am
by Imerion
Then I should be able to manage! I'll try and report back if I get it to work! :)

Posted: Thu Jul 23, 2015 1:36 pm
by Rado1
Imerion wrote:Then I should be able to manage! I'll try and report back if I get it to work! :)
Hi Imerion, what's the progress with GameJolt API implementation? I'm asking because I just returned from vacation so I could find some time for it, if you want. I want to finish optimizations of BallZ2 first, but then, ca. later next week I could have a look at GameJolt API library... Are there some parts of the API you are especially interesting in?

Posted: Thu Jul 23, 2015 2:29 pm
by Kjell
Hi Rado1,
Rado1 wrote:what's the progress with GameJolt API implementation?
Almost done :wink:

K