Commit graph

2130 commits

Author SHA1 Message Date
Solomon Peachy
f30f1bb467 updatelang: don't special-case english-us yet
Change-Id: If1a331d4f603154c036cd6c6b46f3a11e5e595e4
2020-07-27 22:17:40 -04:00
William Wilgus
be04c4be0a Voice TSR Plugin Demo
allows user to run plugin in background that voices
status messages

grouping is now working it counts ; as the end of a group

sleep timer remaining is not voiced if sleep timer is not active

TODO
manual entries

Change-Id: I39e8500df6440c07d2a3347513c749d5e155d1cc
2020-07-27 20:47:03 -04:00
Solomon Peachy
b9d13b898d genlang: strip out the '-u' mode as it's now handled by updatelang
Change-Id: Ic05cc72282cc016048e292ee0bef41c38148af8c
2020-07-27 17:20:59 -04:00
Solomon Peachy
cda5b055fe updatelang: Fix a few straggling issues
Change-Id: I549a33c94c339151cf5a74f13a8ecb73454bbfd4
2020-07-27 16:56:18 -04:00
Solomon Peachy
8159c9537f updatelang: Don't rely on non-core modules
Change-Id: I262f47e10aee51116375238b458270e92e25154d
2020-07-27 19:19:02 +00:00
Solomon Peachy
2305966d84 updatelang: New tool to update language files.
Change-Id: I3c18bb34770b4b4b321199149a2ea693dfbdb7f4
2020-07-27 14:58:38 -04:00
Solomon Peachy
02b970fa79 Update French translation (Stéphane Moutard-Martin)
Change-Id: Ibe247553965024a000749386a95e73dcc18c493e
2020-07-24 21:15:58 -04:00
Solomon Peachy
658026e626 [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice.
Note:  I left behind lcd_bitmap in features.txt, because removing it
would require considerable work in the manual and the translations.

Change-Id: Ia8ca7761f610d9332a0d22a7d189775fb15ec88a
2020-07-24 21:20:13 +00:00
Solomon Peachy
8cb555460f [3/4] Completely remove HWCODEC support
'swcodec' is now always set (and recording_swcodec for recording-capable
units) in feature.txt so the manual and language strings don't need to
all be fixed up.

Change-Id: Ib2c9d5d157af8d33653e2d4b4a12881b9aa6ddb0
2020-07-24 21:20:13 +00:00
Solomon Peachy
0c4f89370d [2/4] get rid of HAVE_LCD_CHARCELLS
HAVE_LCD_BITMAP is now redundant.

lcd_bitmap is always-on in features.txt so manual and lang strings
don't have to change

Change-Id: I08eeb20de48099ffc2dc23782711af368c2ec794
2020-07-24 21:20:13 +00:00
Solomon Peachy
092c340a20 [1/4] Remove SH support and all archos targets
This removes all code specific to SH targets

Change-Id: I7980523785d2596e65c06430f4638eec74a06061
2020-07-24 21:20:13 +00:00
Solomon Peachy
a5df94beb5 build: Tweaks to better support non-English as primary language
* get rid of $(LANGUAGE) in top-level makefile (and configure script)
 * un-hardcode English-as-primary-language in a couple more places
 * allow DEFAULT_VOICE_LANG to be overriden

To actually change the primary from English, one must change:

 * $english in voice.pl
 * hardcoded 'english' in rbutil
 * $ENGLISH in apps/lang/lang.make
 * DEFAULT_VOICE_LANG in apps/talk.c
 * configure script (default prompt)

Of course, if one wants to change the default UI language, it's simpler
to change the default language setting variable at compile time, or
perhaps by adding a configuration file with the desired value into the
.rockbox directory when the .zip is assembled.

Change-Id: If5cf76019d416e838628a2eccd4ec7d6cbaeeb74
2020-07-21 17:22:45 +00:00
Solomon Peachy
688c89cfe1 genlang: More voice-related fixes.
* Use consistent ID numbering
 * Use consistent logic for voicelist and voicebin files
 * Fix situations where English <-> English would fail in strange ways
 * Delete leftover tmpfile.
 * Off-by-one error in voice validation code
 * Off-by-one error in voicelist generation

Change-Id: Ib3cea2c6612138b1cbe614dacbe51000199cc9ad
2020-07-21 11:59:47 +00:00
Solomon Peachy
1748b475a9 voice: Allow use of an existing (textual) voiceids file
If it's present, we don't need to generate one, which means we don't
need to know the target name and features list.

The next step is to accept the binary variant that rbutil uses
so we can generate a complete voice file on the cmdline.

Change-Id: I1a355f985e6af46b11610de781996000110ae9de
2020-07-19 01:34:42 -04:00
Solomon Peachy
df14f12675 mkinfo: Make memory size computation more accurate
* imx233 had disjoint memory map
 * hosted binaries not computing start address properly

Change-Id: Ia45571e0c41f07f1d4f34f6e1a0067dcac530148
2020-07-15 14:08:14 -04:00
Solomon Peachy
a69acbb2c1 FS#13214: Update Italian translation (Alessio Lenzi)
Enable the Italian voice nightly build too.

Change-Id: I34f36202714c51ec65d6b5ce288a3e10a2b32f37
2020-07-14 16:13:13 +00:00
Solomon Peachy
9adfab9b2b builds.pm: Enable Greek and Slovak voice builds.
Change-Id: Idf322dd4367cf250885b7f040b1e0de10ee8b945
2020-07-13 15:59:31 -04:00
Solomon Peachy
ead398a8f3 builds: Allow voices to be filtered by an 'enabled' flag.
(So only voices that are confirmed okay are built)

Change-Id: I78dae45182352e5939941744fba2c0e015866804
2020-07-13 10:52:50 -04:00
Solomon Peachy
73a0a9f5aa genlang: Skip strings not present in english in all voicelist modes
Change-Id: If4a4c8c42ce68ecac4aee4400ea82cc709e26c1a
2020-07-13 08:05:06 -04:00
Solomon Peachy
ab1cf209ec build: We don't want '-r' in MAKEFLAGS for toolchain builds.
Change-Id: Id1a96fb2274572ae7520a146b13f044f68e0c3aa
2020-07-12 22:24:32 -04:00
Solomon Peachy
980124ec73 voice: Ensure there are no missing strings when generating the voicelist.
If the translation is not 100% complete, we need to make sure anything
missing is copied from English so there won't be any gaps in the voice
files.

(This behavior is similar to what we do for the regular binary lang files)

Change-Id: I5fd2a50d08317eb8445926145a74a38033e0ebcc
2020-07-12 17:03:19 -04:00
Solomon Peachy
aa20b6af7a voice: Two more fixes.
Change-Id: I5aaf10c588f4396e61942b8fcd6c62c792ea175b
2020-07-11 18:28:54 +00:00
Solomon Peachy
b546d9d172 voice: More fixes, and add more languages
* Pass strings via stdin where possible
 * Add German, Italian, and Norweigan to the build list.
   (in other words, everything with >=95% coverage)

Change-Id: I0154b178b15ddd0b79566c1cb62f76ade32824aa
2020-07-11 17:22:06 +00:00
Solomon Peachy
aad57ea1cc voice: Further enhancements for multi-lingual voice generation
* configure: allow use of full tts engine names when making selection
 * voice.pl:  fixes for espeak-ng
 * build.pm:  Add a list of "standard" voices for tooling use

The latter will be used by the nightly builder infrastructure to
determine what voices to generate.

Change-Id: Iff55288f94a30fbe08d8345b730969b7264b5e0f
2020-07-11 15:01:33 +00:00
Solomon Peachy
185d2bbb6a voice: More voice generation fixes:
* espeak vs espeak-ng  (prefer the latter!)
 * voicepool was busted for most non-english strings

Change-Id: Iae6df0f5426155b7b1f444160814ff9ef4581f21
2020-07-11 01:33:04 +00:00
Solomon Peachy
938d820355 voices: Add tts language mappings for the top 19 languages
festival: english and spanish only
gtts:  all but nederlands
espeak: all (need espeak-ng for czech, greek, and japanese)

Change-Id: I7df1b3235b48f352b0af3c13e3742e85432bc692
2020-07-11 00:09:49 +00:00
Solomon Peachy
711bff47b7 voice: Enhance 'espeak' to automatically pick the language + voice
Most of the 'perfect' or 'good' translations are covered.

Also, don't override user-specified voice

Change-Id: I837bd67e9df2b8bcc7e020f12a2f411c9175565b
2020-07-10 23:28:25 +00:00
Solomon Peachy
c914b148e5 build: Get rid of svn vestiges from version script
Set 10-character git shortrevs for consistency with modern git
defaults

Change-Id: I694f09acd5da1c9b837c9a71a82bd7b72578efd7
2020-07-09 20:29:33 -04:00
Solomon Peachy
dcdf2713f6 Python3-related fixes in some of our scripts
Change-Id: I8acbe43e3f27e51159a7a78fcc361476d7406cbb
2020-07-09 14:39:27 +00:00
Solomon Peachy
5d8a1a305d voice: Fix some perl warnings
(got lost in the output during my test runs)

Change-Id: I3467b96a9607a4d6cf1e26348cd496be508809d3
2020-07-09 11:35:06 +00:00
Solomon Peachy
2c3399537c voice: Add support for Google Translate's speech synthesizer
Uses the 'gtts-cli' command line client.  Supports a wide variety of
languages, including all "Complete" and "Good" Rockbox translations.

Additional changes:

 * voice synth script can accept pre-encoded mp3 files
 * Move language->synth options mapping into the voice script
 * Additional cleanups

Change-Id: I9523e2bca87cbcee2d8c4111f9892e8e458c7419
2020-07-08 23:16:57 +00:00
Solomon Peachy
08c6f9104c build: add '-fcommon' to the toolchain build flags.
This allows binutils 2.16 to build successfully with GCC10.

Change-Id: Iddcd4156720f4fa05936ea459991866fc6e1524d
2020-07-02 20:04:10 +00:00
Solomon Peachy
aec381c4c6 database: Fix makefile syntax for GNU Make 4.3+
Change-Id: If8749aff19f92aae28f5f73aaf843428d7f4b462
2020-06-30 16:12:10 +00:00
Franklin Wei
4d52a42e07 docker-rbclient: use CMD instead of ENTRYPOINT
This makes it easier to override from the command line.

Change-Id: I4bbd2995ed442b119b696da94ce1670304e59933
2020-06-25 17:42:42 -04:00
Solomon Peachy
ff665a26d6 mi4: Correct a build warning/error that pops up on stricter hosts
Change-Id: Ibf549472aa75a1f5e63eccb5ca7974dec506710f
2020-06-07 02:50:30 +00:00
Solomon Peachy
2434b6ca25 misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links.
(This migration happened over a decade ago!)

Change-Id: Ib396414a16f2d763e549af49e3f3b03047dab49c
2020-06-07 01:38:55 +00:00
Sebastian Leonhardt
0769b34a23 fix configure script failing on gcc version numbers
There were two problems on my system:
* MinGW-gcc returns version "7.3-win32" => the "-win32"-part must be
  stripped off
* gcc -dumpversion returns only the major version number => use
  both -dumpfullversion and -dumpversion (in this order) as described here:
  https://stackoverflow.com/questions/45168516/gcc-7-1-1-on-fedora-26-dumpversion-now-only-includes-major-version-by-default

Change-Id: I74fa1c572426aab2525a00a80170d859c166e31c
2020-05-24 13:45:46 +02:00
Solomon Peachy
bbe8c73bb8 builds: Mark the Archos Recorder v1 as officially retired.
The last successful build was 87c6df9-131213, shortly after the 3.13
relase, but even before that, it had been problematic due to severe
firmware image size limitations (200KB) of the hardware bootrom.

(Current git code genrates an image about 220KB)

Change-Id: Ibaf7bd61cbc0f0656c5e119bbb9934437aa9c47c
2020-05-20 21:29:57 +02:00
Solomon Peachy
0c3380f9ef builds: Archos recorder v1 hasn't seen a release since 3.13 (in 2013)
Fix this, so the download metadata will do the right thing.

Change-Id: I7f51f0252e0f72667374143a9cad1021acc58538
2020-05-19 03:45:30 +02:00
Solomon Peachy
93fcd569ab mkinfo: Use correct binary file for "actual size" on hosted targets
Change-Id: Ia22743f3cab18fb1285bcec6429bb198525f37f8
2020-05-17 15:46:47 +02:00
William Wilgus
c93666d08e talk.h make voice files check for proper number of entries on load
In addition to version and target also check id1_max & id2_max
for proper length before allowing voice file to be loaded

Change-Id: I36016059d07781b0bb43dd9873bbb6e565298d76
2020-04-17 07:30:23 +02:00
Solomon Peachy
e0d7c7c632 voice: Add support for Mimic TTS engine.
...It generates decent voice files in 1/10th the time of festival.

Change-Id: I1bf9271633a8a0e9c483761b8685f296d2f303b8
2020-04-16 21:28:09 +02:00
Solomon Peachy
d37ea94f2a Android: Compile native android bits with armv7-a CPU flags
DX50/DX90 has a Cortex-A9 with NEON, use those specific flags
for speed.

Generic Android targets is for v4.4 (API 19) which doesn't support
pre-v7 ARM CPUs, so target generic armv7-a with hardfp support.

(This patch includes a rearrangement of the android toolchain helpers to
 allow target-specific GCCOPTS.  Huzzah)

Change-Id: I696051ef3fae25e1569c7b904decb7a3a0c6b674
2020-04-15 00:39:45 +02:00
Solomon Peachy
a87c96cd79 checkwps: have the ./buildall.sh script log all build failures.
Change-Id: I61be0fca0cb65e7c7108180150df5585fd83c3b5
2020-04-13 17:26:22 -04:00
Solomon Peachy
a820a98361 obsolete: Nuke the very-incomplete Archos AV300 target
It's even missing a config header file.  Just shoot it in the head.

Change-Id: I4c5cdb4fb63361a4e4fc893e93d73d3890fe17df
2020-04-13 22:06:22 +02:00
Solomon Peachy
cfc02cadcc android: Fix configure script for "newer" versions of the NDK
The oldest verison of the NDK one can still download today is version
10e from mid-2015, which comes with GCC 4.9, and no longer supports
32-bit hosts.

With this, one can actually compile the iBasso DX50/DX90 targets again,
as well as the generic android target, as long as one has the correct
SDK platforms (v16 for ibasso, v19 for generic) and SDK tools installed.

Change-Id: I62f2e742d5cfc13133244aeff75a928a7294ac91
2020-04-13 16:51:58 +02:00
Solomon Peachy
b1d7d897d3 rockboxdev: Remove the ability to build the special cy-ng ypr0 toolchain
We don't actually use it any more; let's not confuse folks with it.

Change-Id: Ic8fbe9bc95495b0969249dc774c5adf2126a2b98
2020-04-13 00:39:01 +02:00
Solomon Peachy
3e0a644b5b build: Fix iHIFI 770c nightly builds. Bad CaPiTaLiZaTiOn.
Change-Id: I921e2e6e1ed8f30e162c6183b9000cc1de3382de
2020-04-12 03:46:06 +02:00
Solomon Peachy
c9ec110b6a voice: Add corrections for 'DAC' and 'ADC'
Change-Id: I9079382926ce19dd7afa50312179987f181855c3
2020-04-10 22:21:08 +02:00
Solomon Peachy
6fcd69a365 hiby_patcher: Mangle the version string in the update payload if necessary
Change-Id: I204837f8a0e56fe51b3ee317be7d9f597b89f877
2020-04-08 05:57:06 +02:00