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
This makes it far more useful, as before it insisted on scanning from
the root directory and putting the generated db files in /.rockbox
Change-Id: I0d0e3c6c6c7ee1fc5473185482fbfb9a2a2be29f
Three separate problems:
1) Make 4.4 defaults to a named pipe for jobserver control, this
was incompatible with how glibc did recursive makes
2) Make 4.4 passed long arguments ( --foo ) into MAKEFLAGS and this
broke stuff that wasn't expecting it
3) Circular dependency in a header generation due do make 4.4 being
stricter/more consistent in how it orders rules vs which makefiles
they came from. This one was the real !@#!@ to deal with.
This patch set fixes the hosted arm (glibc 2.19) and mips (glibc 2.25)
toolchains.
Change-Id: Ie6d6a0ab7e1b36f24c43e524fee4afc0bd3a14d6
eg, our current toolchian generates this:
GNU ld (GNU Binutils) 2.26.1
But the system toolchain on the buildserver generates this:
GNU ld version 2.37-37.fc36
Change-Id: I0166f12d660654c1456289954fb256db98213618
NO_CROSSREFS_TO() was first introduced in binutils 2.27.
It is used to have the linker report errors when symbols
from a list of sections refer to a specified section,
which is useful for verifying that normal code does not
refer to INIT_ATTR code.
Note this doesn't actually start using NO_CROSSREFS_TO()
for builds -- that will have to wait until the toolchain
upgrade when we'll have a new enough binutils -- it just
detects support for the feature so it can be conditionally
enabled in linker scripts.
Change-Id: If1553eaa671fcbbdfe6af357a6331931e7c4f997
Previously, it was hardcoded to the english convention of units-last, so
"100%" would be voiced as "one hundred percent". This adds a new
language flag that makes the units be voiced first, ie "100%" will be
voiced as "percent one hundred".
So far only the Chinese-traditional and Chinese-simplified languages
utilize this feature (taken from an old ticket, FS#10340) but I'm sure
others would want this feature too.
Change-Id: Idf825ec9299dc0ed09921cf67aec61b1ab262fc6
This turns on -fwrapv and -fwrapv-pointers.
As per GCC docs:
"This option instructs the compiler to assume that signed arithmetic
overflow of addition, subtraction and multiplication wraps around
using twos-complement representation. This flag enables some
optimizations and disables others."
All of our targets fall under this category.
For some time now we've been using -Wall which implies
-Wstrict-overflow=2, which only warns when the compiler actually
implements a possibly questionable optimization, so I'd expect this to
not affect our code size at all.
Change-Id: I8e1c10183e390c6d0897e81f84a5df4590b02d84
Make 4.3 and newer doesn't interpret comments in a shell call,
whereas Make 4.2 and older do. Escaping the comment directly
works on old makes, but on new makes the backslash is passed
as well -- which we want to avoid.
The safe way to pass a literal "#" character to the shell on
both versions is by embedding it in a variable and expanding
that. It's ugly, but it works...
Change-Id: I1a217c42d747fd5aa83f9990c234e06966ac1a00
GNU grep 3.8 warns about "\#" when compiling. The "#" has to be
escaped for Makefiles and shell, but it isn't special to grep so
grep thinks it's an invalid escape sequence.
Change-Id: Ieb2607d42b7daa1939ca0101b915ec0c7afd4298
voicefont.c expected a max of 999 voice IDs we are at 1013 or so
bad stuff happened TM new limit is 2048 and added an error message
(no file will be created if limit exceeded)
Change-Id: Ifda6dc5c45883551f8ae8f0d4efc9f7acdb7c90f
nets about 5k on clipzip (less on mono, more on others)
to move rockboxlogo to .initdata section
Remove show_logo completely and move to main.c
remove plugin stub
give credits plugin its own copy
credit fallback is now show_info()
Change-Id: Id9ed787e605ed29e7ab1e7a74d3821cd0f840ed4
* Explicitly require 'xz' (we've implicitly required it for a while now)
* Prefer xz files in a few more places
* Much better logging for native toolchain builds
* Use -O2 for native toolchain binaries
Change-Id: I401b734882c2c21329624911c09a46168d82f388
The description for arm-linux mentions "Linux-based Sony NWZ", which
is misleading for people who aren't very familiar with the various
targets and history. People setting up toolchains for the first time
for their "traditional" NWZ will overlook the "linux" part (or not
understand what it means) and build the wrong compiler.
Mentioning "older Sony NWZ" may of course not immediately tell those
people which one to pick, but at least they'll know they need to look
things up.
Change-Id: I5743a6427842db7334cff5479291e2137c35ae0c
Should make debugging crashes on native MIPS targets far easier.
This is by no means a 100% complete or robust implementation but
it seems to handle the vast majority of functions.
Change-Id: Id5f430270e02b5092b79026b6876675c784aa649
zlib has been updated to 1.2.12 on March 27, 2022 with the following note:
Due to the bug fixes, any installations of 1.2.11 should be
replaced with 1.2.12.
The previous version has been removed and is no longer available for
download on the official site.
Change-Id: I807fbb4605378d99654be3e4c1b28bd04de729c9
By passing --with-ubsan to tools/configure, you can now build the
simulator with UBSan to catch undefined behavior at runtime.
Change-Id: I054cd46ca59587dd544efbd7bdf6d27a040a4891