rhdunn / espeak

eSpeak NG is an open source speech synthesizer that supports 101 languages and accents.
http://reecedunn.co.uk/espeak-for-android
GNU General Public License v3.0
386 stars 16 forks source link

Pre-compiled espeak-data.zip #73

Closed hermieweber closed 9 years ago

hermieweber commented 9 years ago

I would like to ask if it is possible to retrieve the pre-compiled espeak-data.zip for Android. I am having a hard time compiling it on Windows, and I would simply like to test it out if possible.

beqabeqa473 commented 9 years ago

hi. i think you can just zip normal nvda espeakdata folder and put into res/raw before compiling.

only thing which i am not sure, but i don't think it will make some problems is espeakdata.version file in which i don't understand what is written.

reece: write your opinions too about that.

beqabeqa473 commented 9 years ago

hi again.

i was able to succesfully compile espeak on windows, but not as it is written in manual, because for now i don't have these tools.

i have android-sdk, android-ndk, ant.

i updated android project to api v21, put espeakdata.zip compiled, data compiled with espeakedit.exe into res/raw directory, did ndk-build and ant release. after that signed package with my key.

i know, it is not normal, and most of dependencies are available for windows, but i tried with tools i have at the moment and it worked.

hermieweber commented 9 years ago

My question was because I have this missing

"CheckVoiceData.java->Cannot find symbol variable raw".

https://github.com/rhdunn/espeak/issues/72

The author told me that this was because espeak-data.zip is missing. I wonder how this would resolve the missing reference, but I wanted to try it out.

Can you provide me your compiled espeak-data.zip? That would be very nice!

beqabeqa473 commented 9 years ago

create raw directory in your res directory and put zipped espeakdata from nvda for instance.

then try gradlew build or ant debug or ant release respectively. i don't know hw to explain else.

sorry, it is paid on google play, and without author permission i don't want to spread the apk. 2 dollars is not a big amount to buy it if you can't compile it yourself.

hermieweber commented 9 years ago

Hmmm... I just wanted to try it out if my error in Android studio goes away when I have the espeak-data.zip. It seems unlogical to me.

beqabeqa473 commented 9 years ago

first of all espeakdata.zip without -

secondly, i don't know how android studio works, i was compiling it from commandline with ant.

android update project -p . -s -t ndk-build put res/raw/espeakdata.zip ant debug

i am not familiar with gradle but gradle assembeDebug should work, not sure about that.

otherwise, try to install all deps from official instruction or go to linux and compile here.

rhdunn commented 9 years ago

The version file is simply a SHA1 hash of the zip file. It is used to check if the espeak data needs updating on the Android device -- it will update if the versions are different.

I am not going to provide a pre-compiled version of the zip file as (a) this varies from espeak to espeak, (b) you can easily recreate this from the espeak-data directory, and (c) adding derivable binary files in source control is not how source control systems work.

The autotools/Makefile build system is designed for Linux and other POSIX systems (which should work with cygwin, etc. although I haven't tested it on those systems). The other build/source files are not changed, so it would be possible to build on Windows (just not via a single automated command) as upstream espeak builds on Windows.

hermieweber commented 9 years ago

But that is only part of the problem. I just tried to narrow it down.

One problem that I think that will not be fixed by just providing the zip file is this:

raw1

R does not have a raw component.

beqabeqa473 commented 9 years ago

i am saying, what i did and which results i've got.

if you will only think and do not do anything, nothing will be fixed believe me.

i am saying one more time, put espeakdata.zip into res/raw directory and run build process again.

hermieweber commented 9 years ago

Yes, sorry. I have spent the entire last week trying to get everything going, and I am exhausted. But I will try it anew when I have recovered. :-)

hermieweber commented 9 years ago

@beqabeqa473 You have really helped me. I thought R.raw was part of a library. I did not know that it was a folder!! Thank you!

beqabeqa473 commented 9 years ago

did you compile it successfully now?

hermieweber commented 9 years ago

No, I have not set up Linux in my virtual machine yet, and I don't want to try compiling it on Windows.

But I have created android/res/raw folder, and now "R.raw" is found, so I think it would work. Right now I only want to understand the logic.

beqabeqa473 commented 9 years ago

you don't need to create res/raw if you are planning to build it in linux, build system will do everything.

hermieweber commented 9 years ago

Yes, I only wanted to understand what "R" actually is and where "raw" comes from. At first, I thought it was a library. :-)