It will _vastly_ speed up repeated voice builds.
The voice pool directory will not be erased by a 'make clean'
Change-Id: Ice58d5c5355abfa5a385dfca749f8063e2ee8622
* Voice generation script will create standalone .talk clips
* These talk clips will be included in the rockbox .zip file
* All .voice files will be included in the rockbox .zip file
* Added LANGUAGE_NAME for all languages in the nightly builds
This way, any voice pack installed will give you a the langauge
voiced in the browser, and if the voice file fails to load you
will get a natively translated error message.
Change-Id: I6b627a51746cd088d6e200666dd326ea2745f55f
It's intended to build all of the Windows Simulator builds in one fell
swoop but has bitrotten a bit. Correct some of the glaring
problems.
Change-Id: I6073af629d2698624036ccf303a5d18398cefdc0
This problem only happened with GCC7 (and older?) simulator builds, and
was introduced by an incorrect test that always stripped our default
optimization (-Os) in simulator builds.
The fix is to correct the test to only strip -Os if the user explicitly
enables a debug build.
Also, use -Og instead of (implicit) -O0, as per GCC recommendations.
Change-Id: I61091b3cdf5323504961c0bb2d80aa65049eb8fb
* Only codecs and plugins are enabled
* Only native builds (so far)
* Only tested on xDuoo X3 (MIPS, monochrome)
* opus & speex generate some warnings
* Significant compile time impact
Change-Id: I519b0d179631a54b2103cd67225bd5ec6ad3bd2f
...Unless it's the very first character (and will get stripped).
So detect and complain about this!
Change-Id: I5e333e8ee134160f64a67783b0d5aa564716d44e
In verbose mode it will log valid the strings found, otherwise it will
only complain when we encounter a missing string.
Unfortunately a missing string is not inherently a problem, due to
conditional expressions. So all we can do is complain in checkwps
or if wps debugging is turned on.
Meanwhile, this is the first step in actually enumerating the translated
strings used by themes.
Change-Id: Ia93b333085e825d5b085c4d372ad8e13aa3e3ba1
This is because a language may have a specific correction that should
take precedence over the global one, but if the global one is applied
first, then the language-specific correction gets skipped.
Change-Id: I45f736f20d6c83864df0bf764ca3d75ec4b9626a
We normally treat "same as English" as a translation errors that needs to be
corrected. However, many languages effectively use english words as-is, so
we need a way of distinguishing the "intentionally the same" situations with
our tools "automatically copying missing translated strings from English" to
avoid blank or missing UI strings.
The solution is to make sure these "intentionally same as english"
strings are actually different. This will be accomplished by prepending
'~' to the these strings. This special character is stripped from the
binary data files used by the player and the voice generation tools.
Change-Id: I90088cbd74de0e5cb9d65f75f26afe04f7e301bf
The original one was picked at random; while I personally find it
pleasing, it's soft spoken and doesn't work well when voicing over
already-playing music.
Change-Id: I0ed033f02a54f42e2d0729cab883068ecaad6faa
Annoyingly, this makes all of the '.S' files we compile get treated as
divided syntax, so we need to make the syntax in them explicit.
Change-Id: I56a3916b7b24c84a1214a5d6bc4ed4d651f002cf
Eg this was happening before:
'11 - Breña.mp3' --> '11 - Breña.mp3'
As well as resulting in incorrect voicing, it was breaking the encoding
of the .wav to .talk.
Change-Id: I6cf844d843ddf1a459f92e1ebd55c9feec886f55
add sorting directories as files
move picross files to a hidden folder
use directory for lua_scripts, sgt_puzzles
make plugin browser able to handle 1st level directories
Change-Id: I30852d71dc992c378d5790756e94f06f5a2e9bef
We do this by parsing out the format specifiers and making sure the
translation has the correct number, type, and order of specifiers.
Percent literals ('%%') are ignored.
Mis-matched formats can lead to much badness, so to be safe, use the
untranslated string instead and flag it as a problem on the translation
site.
Change-Id: Ib48c2e5c3502735b1c724dd3621549faa8b602b7
Picross is a puzzle game also known as Picture Crossword, Nonograms, or
Paint By Numbers. See http://en.wikipedia.org/wiki/Nonogram for
information on how to play.
Update 1: nicer graphics with less images, fixed directory listing,
changed how the board works to make a lot of math more sane
Update 2: added missing rb.yield to viewPicture loop
Update 3: you can now save a game in progress
Update 4: fixed a file pointer leak, improved the numbers font
Update 5: no images, use vector num draw library add zoom, freedraw -- Bilgus
Change-Id: Idc476b46b6eaa10818400fa789701d5bac83467f
https://github.com/rhasspy/piper
High quality, offline, neural-network-based, with good language coverage
Note that you have to manually download the piper voice models, and set
PIPER_MODEL_DIR appropriately. The configure script will let you choose
from the available models and remember your choices.
Change-Id: I8eba9fcf78b51b01b89491539aac3e423cc42f16
This will use the configured tts engine and language to generate
the talk clips for a specified directory.
TALKDIR=/path/to/somehere make talkclips
TALKDIR=/path/to/somehere make talkclips-force
If 'TALKDIR' is not defined then it will error out gracefully.
Normally if a talkclip is present already it will not regenerate the file,
but 'make talkclip-force' will regenerate it anyway.
Change-Id: I62683f9e5ca395fd303ac6029096c20da1e96d01
This covers the voiced directory and filenames
* Don't regenerate a talk clip if one is present (?)
* Format awareness; ie if the TTS engine generates an mp3 file,
convert it to a wav file so we can encode it properly
* Use a global variable for the wavtrim threshold
Change-Id: I9f441b573704bdf7675794fd0e1984446308463b
I updated the scripts to use a generic '.enc' as the filename as we
haven't used true '.mp3' files for some time (and even then, only on the
Archos devices) but I missed the voicefont generation tool.
Change-Id: I450de9215664b6559058b175afc25aa874d11dcc
* Language and dialect need to be specified separately
* Convert the mp3 files generated by gtts into wav into rbspeex
(Uses ffmpeg currently)
Change-Id: I6d7b9494e70a61537519221522202ea28469cc70
Some distros, including Ubuntu/Debian, don't provide a "python"
command unless an additional package is installed. Using "python3"
explicitly should work everywhere.
Using "/usr/bin/env" respects the user's PATH, so they can choose
a specific Python version instead of forcing the systemwide copy.
Change-Id: I02e3ead92939c42df6def79dec3dc2a62c62b1c3
* Inform you what target it is compiled for
* Complain if it doesn't find the '.rockbox' directory
(Instead of creating the directory if it's not found!)
* Report basic (starting/finished) progress
Change-Id: Ic336dd686ce4419172a1c287995966d0f00e6107
In my opinion this API is just not very useful - design is kind
of questionable. There are hidden limits on the struct size and
bugs on 64-bit platforms due to assuming sizeof(long) == 4.
At the end of the day, the only major user was the tagcache and
it's actually less code size to do endian swapping manually.
Change-Id: I451c7f1a10cf3e28744c32c0f1f39a710d5cc100
Apparently _most_ targets have a dbtool built as a simulator variant,
but _some_ are built as an application target. This commit fixes
simulator-based targets, which weren't ever broken.
(Prior commits fixed things for _app_ targets, which haven't worked
since at least 2020, maybe never..)
Change-Id: I7fef2b10e5128059b293118617701630bf3dc1fb