Create a separate source / header file for each supported encoder and the base
class and rename classes for better readability. This should also make it
easier adding new encoders.
Remove a few trailing spaces while at it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31592 a1c6a512-1295-4272-9138-f99709370657
Reworked version of FS#12402 by Jean-Louis Biasini.
Since the mkimxboot process takes quite a while which blocks the UI it has been
adjusted to perform the actual firmware patching in a separate process. Various
other small changes have been made to make it fit better into Rockbox Utility's
dialogs / messages and update the code to latest changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31580 a1c6a512-1295-4272-9138-f99709370657
Since flashing the firmware is a rather critical process extend the post
installation hint to advise the user of charging the player first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31579 a1c6a512-1295-4272-9138-f99709370657
- MSVC uses different namings in some places. Adjust the sources via the
preprocessor if build with MSVC.
- MSVC doesn't know about __func__, use name instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31185 a1c6a512-1295-4272-9138-f99709370657
Instead of handling bundled bootloaders in the sansapatcher functions leave
that to the caller. This removes the need to have Rockbox Utility specific
parts in sansapatcher. sansa_add_bootloader() now operates on an already loaded
bootloader. For loading a convenience function sansa_read_bootloader() is
added. This also introduces a new check on loading to prevent installing an
e200 bootloader on a c200 (and vice versa).
These changes will allow building a libsansapatcher for linking with Rockbox
Utility later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31144 a1c6a512-1295-4272-9138-f99709370657
Instead of passing error messages using a callback function (which becomes
awkward when used from a C++ class object) return distinct error codes from
chinachip_patch(). This also removes the kludge to support translations for
Rockbox Utility and moves the strings to translate to the installation class
where they belong.
As a side effect info messages won't be passed to Rockbox Utility anymore, but
the details of the patching progress aren't of that much interest for the user
anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31115 a1c6a512-1295-4272-9138-f99709370657
Instead of showing the target name as stored in rockbox-info.txt retrieve the full descriptive name.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30886 a1c6a512-1295-4272-9138-f99709370657
The buildserver_modelname is still in use, and the commit missed some parts on
removal, causing segfaults on start.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30884 a1c6a512-1295-4272-9138-f99709370657
Since changing the manual URL creation to be template based this value isn't
used anymore. It's also pretty much the same as configure_modelname, so remove
it completely.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30869 a1c6a512-1295-4272-9138-f99709370657
Voicefile generation now can correct strings for the TTS system similar
to what voice.pl does. The current implementation has some limitations:
- only implemented for voicefile creation.
- the corrections file is built in and can't get changed.
- string corrections can be disabled in the configuration dialog.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30628 a1c6a512-1295-4272-9138-f99709370657
Support retrieving the vendor name of the TTS. This will be used by TTS string
corrections. Currently no other TTS but SAPI supports this, and only correction
strings for SAPI voices depend on the vendor information.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30609 a1c6a512-1295-4272-9138-f99709370657
Allow passing an (optional) cluster size to round up all file sizes when
calculating the total size of an extracted zip archive. This allows to check if
the space on disk is actually sufficient without relying on an arbitrary
headroom value which might be wrong. Addresses FS#12195.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30214 a1c6a512-1295-4272-9138-f99709370657
Those functions are rather general, so put them into the Utils class instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30146 a1c6a512-1295-4272-9138-f99709370657
Make sure to convert it on reading to avoid not finding it even if stored with
native separators in the configuration. Fix a warning on Windows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30145 a1c6a512-1295-4272-9138-f99709370657
In mountpoint selection and system info dialog show the volume name to make it
easier to identify a specific device.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30141 a1c6a512-1295-4272-9138-f99709370657
This should help identifying the correct player by size, since the free space
is only useful to figure if there is enough space to install Rockbox. Change
units to GiB since that is more useful given the size of current devices.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30139 a1c6a512-1295-4272-9138-f99709370657
The "file" bootloader installation method usually can uninstall the bootloader.
Some upgrade methods (like the Iaudio players) remove the bootloader file
placed on the player after upgrading so those can't uninstall the bootloader.
Instead of rejecting uninstallation for all players using this method check the
current bootloader and only display an error if no suitable bootloader is
found (which would happen in the Iaudio case).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30070 a1c6a512-1295-4272-9138-f99709370657
In order to enable it, #define HAVE_DUALBOOT when building the bootloader.
Do not use the automatically created x5_fw.bin or m5_fw.bin, but use mkboot
to create a new firmware file from an OF x5_fw.bin resp. m5_fw.bin and
bootloader.bin.
The dual-boot bootloader boots the OF when pressing Play (main or remote) for
more than 3 seconds. Hold it a bit longer because the OF also checks buttons.
Short press boots rockbox.
As a bonus, the Play button read (for hold check) is done a bit earlier for
single-boot mode as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30018 a1c6a512-1295-4272-9138-f99709370657
The settings currently can't differentiate between default values for different
subitems (i.e. different TTS systems). As a result the default value returned
for SAPI speed was way out of bounds, leading to the upper limit getting used.
Work around this limitation by checking the value for bounds and use a sensible
value in that case.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29763 a1c6a512-1295-4272-9138-f99709370657
Since setting the maximum number of threads to use to 1 causes sporadically
files missing add a simple alternative implementation that doesn't use futures.
This is a stop-gap solution to fix voice files not creating (reported on
Windows with SAPI voices, see FS#11994). Encoding doesn't seem to be affected
by the problem and is unchanged.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29762 a1c6a512-1295-4272-9138-f99709370657
If no TTS has been selected previously default to the system one if any.
Otherwise use espeak.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29758 a1c6a512-1295-4272-9138-f99709370657
The current TTS configuration doesn't allow querying the system values so it
currently can't be displayed. A value of 0 will use the system default. The
default pitch is dependent on the voice; most voices should have a default
pitch of 45 - 55.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29673 a1c6a512-1295-4272-9138-f99709370657
The OS X TTS engine (and likely others) allows outputting its speech directly
to the sound system. This avoids the extra step of creating a temporary file to
play for TTS preview. Currently implemented as TTS capability reported.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29672 a1c6a512-1295-4272-9138-f99709370657
Instead of hard coding the query part of the genlang url store the full url as
template and replace parts as done for other urls as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29669 a1c6a512-1295-4272-9138-f99709370657
This change fixes problems with zip files created with newer zip utilities (a
known issue is the iLike theme). QuaZip also allows better feedback during
operations without changing the imported code. Additionally Rockbox Utility and
the Theme Editor are now both using QuaZip; currently Rockbox Utility uses a
copy of the sources, merging them later is planned.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29645 a1c6a512-1295-4272-9138-f99709370657
- Use ISO codes as keys for voice languages instead of enumeration.
- Instead of trying to select a suitable voicefile language from the UI
language use the ISO codes stored as UI language and match against the
mapping.
- Always store the selected UI language. Fixes the voicefile creation
language lookup to fail if the language used is the system language.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29207 a1c6a512-1295-4272-9138-f99709370657
If the proxy dialog doesn't contain any values searching for the values in the
system returns NULL pointers instead of empty values. Check for them to fix
crashes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28212 a1c6a512-1295-4272-9138-f99709370657
Oops: on Windows, ask the system about the values before displaying it instead
of expecting the structure to fill itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28107 a1c6a512-1295-4272-9138-f99709370657
Since Rockbox Utility got support for utilizing more than one CPU / Core
this value might be helpful in case of issues like FS#11496 (QThreadPool
defaults to the number of CPUs found as maximum number of threads).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28106 a1c6a512-1295-4272-9138-f99709370657
Instead of using libusb as wrapper query the USB IDs via IOKit. Since libusb is
only used for that this means that it's no longer necessary on OS X.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28001 a1c6a512-1295-4272-9138-f99709370657
Since the builds for the Ipod Video 32MB and 64MB are now unified there
is no need to handle them separately in Rockbox Utility anymore.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27966 a1c6a512-1295-4272-9138-f99709370657
The device string containing the USB IDs differs in casing on Windows 7
so always convert to upper case before scanning the string. Use
DEVICEDESC instead of LOCATION_INFORMATION for the user visible device
string as the latter doesn't show anything useful to the user on W7, at
least for the devices I've tried. Unfortunately DEVICEDESC is less
descriptive than the previously used.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27561 a1c6a512-1295-4272-9138-f99709370657
Improve string suffix handling by distinguishing between version number
separators (i.e. dots) and extended separators and additional version
characters. Corrects false update information displayed for 64bit binaries of
Rockbox Utility.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27201 a1c6a512-1295-4272-9138-f99709370657
This issue has been pointed out as FS#11420. Redone by myself because the
change is trivial and the submitter didn't state his real name.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27061 a1c6a512-1295-4272-9138-f99709370657
Those classes use Qt objects anyway, and making them based on QObject moved the
strings into the appropriate class when translating.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26931 a1c6a512-1295-4272-9138-f99709370657
The version check failed on subrelease versions (as the 1.2.5-1 rebuild done
for Mac) and detected an updated version that is in fact an outdated one.
Rework the comparison completely, move it to the Utils class and display some
more information in the status bar upon update check. Especially keep a notice
in the status bar if an updated version was found.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26788 a1c6a512-1295-4272-9138-f99709370657