Mixer needn't keep peak data around that will never be used. Just
pass pcm_peaks structure to it instead of allocating for every
channel. Plugin API becomes incompatible.
vu_meter digital mode was still using global peak calculation;
switch it to playback channel like the rest.
Remove some accumulated soil peaks inside pcm.c and make it more
generic.
Change-Id: Ib4d268d80b6a9d09915eea1c91eab483c1a2c009
Creates a standard buffer passing, local data passing and messaging
system for processing stages. Stages can be moved to their own source
files to reduce clutter and ease assimilation of new ones. dsp.c
becomes dsp_core.c which supports an engine and framework for effects.
Formats and change notifications are passed along with the buffer so
that they arrive at the correct time at each stage in the chain
regardless of the internal delays of a particular one.
Removes restrictions on the number of samples that can be processed at
a time and it pays attention to destination buffer size restrictions
without having to limit input count, which also allows pcmbuf to
remain fuller and safely set its own buffer limits as it sees fit.
There is no longer a need to query input/output counts given a certain
number of input samples; just give it the sizes of the source and
destination buffers.
Works in harmony with stages that are not deterministic in terms of
sample input/output ratio (like both resamplers but most notably
the timestretch). As a result it fixes quirks with timestretch hanging
up with certain settings and it now operates properly throughout its
full settings range.
Change-Id: Ib206ec78f6f6c79259c5af9009fe021d68be9734
Reviewed-on: http://gerrit.rockbox.org/200
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
On big-endian architecture, DSP output must be coverted to little-
endian first. DSP output is also always interleaved stereo, 16 bit,
NATIVE_FREQUENCY and wavinfo should be correct for this.
Also, use standard clip_sample_16 already available.
Change-Id: Ifa7b9fc77f0573070c7e79f059dc3000c437c42e
Depending on the length of the values to display having both entry title and
value in the same line can be hard to read if the display isn't wide enough.
Similar to the metadata view use two lines for each entry.
Change-Id: I9a2dfe78e02b0460add1681115b0c4781d74af17
libs in $ROOT/lib now add to $(CORE_LIBS) and $(EXTRA_LIBS) and are
automatically linked by the core and codecs/plugins respectively.
Change-Id: Iff482c792a8c8142718f6a16a450c6e2f1497c9a
When enabled, if the user has set "Start File Browser Here" (config.cfg:
start directory) to anything other than root and "Auto-Change Directory"
is set to "Yes" or "Random", the directory returned when an auto change
is required will be constrained to the value of "start directory" or below.
Change-Id: Iaab773868c4cab5a54f6ae67bdb22e84642a9e4b
Reviewed-on: http://gerrit.rockbox.org/182
Reviewed-by: Nick Peskett <rockbox@peskett.co.uk>
Tested-by: Nick Peskett <rockbox@peskett.co.uk>
- fuze+ keymaps for calculator updated
- manual updated accordingly
- also correct a little problem with a line only used by mpio hd300
manual but that appears on all other target's manual.
Change-Id: I9c4d3c21dc6174079edbde8035bad318e09ec74a
Reviewed-on: http://gerrit.rockbox.org/125
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
Use generic void * and size_t and make mp3_play_data and its callback
agree on types. Use mp3_play_callback_t instead of prototyping
right in the function call (so it's not so messy to look at). Change
doesn't appear to require plugin API version increment.
Change-Id: Idcab2740ee316a2beb6e0a87b8f4934d9d6b3dd8
1) change all keymaps to PLA
2) add alternative exit keymaps
Change-Id: I5cb8b1fcc515d2b6f9934482e72b80767b2c2fb0
Reviewed-on: http://gerrit.rockbox.org/158
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
This commit changes:
1) replace all keymaps with PLA ones and remove all
now useless precompiler instruction.
2) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
3) add the possibility to change values repeatily by holding key
pressed.
note: no manual for matrix yet
Change-Id: Id3ace2863dd407dd5e5ab9b7b5b460c88bb007ad
Reviewed-on: http://gerrit.rockbox.org/128
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
This commit change:
1) replace all keymaps with PLA ones.
2) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
3) do the required change to the manual in order to match
code's changes.
4) add a missing key in the manual and show them in a table
Change-Id: Ie983c7673c9dec1a9daeb34f5edaaa3c8be7dd5e
Reviewed-on: http://gerrit.rockbox.org/129
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
Just use a bool to indicate raw button instead of action code. No
bother with plugin version yet again so soon.
Change-Id: I4aa075c0c1fb5308c9d49bebb30ac76f671b2335
Adds a new context, CONTEXT_RAWBUTTON, that I hope is out of the way
of everything. Unfortunately have to increment min plugin API version
for the second time today to accomodate additional parameter.
Change-Id: Iaa46b926e57cf377fd4906f2d42bb98e87215033
This commit changes:
1) replace all keymaps with PLA ones.
2) do the required changes to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
Change-Id: I0cea909dd2ff44b8c5a2daba11c192965c4a02c7
Reviewed-on: http://gerrit.rockbox.org/131
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
This commit changes:
1) replace all keymaps with PLA ones.
2) do the required change to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
4) add the possibility to change values repeatily by holding key
pressed.
Change-Id: Ie68fd4e94830bba8a592941ee4e8b10aeacda923
Reviewed-on: http://gerrit.rockbox.org/127
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
this commit changes:
1) replace all keymaps with PLA ones.
2) do the required change to the manual in order to match
code's changes.
3) add an alternative exit button (PLA_EXIT or PLA_CANCEL)
Change-Id: I8a064b98c118e369f8464de5e43c7641d8a08e9e
Reviewed-on: http://gerrit.rockbox.org/130
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
Additional status callback is added to pcm_play/rec_data instead of
using a special function to set it. Status includes DMA error
reporting to the status callback. Playback and recording callback
become more alike except playback uses "const void **addr" (because
the data should not be altered) and recording uses "void **addr".
"const" is put in place throughout where appropriate.
Most changes are fairly trivial. One that should be checked in
particular because it isn't so much is telechips, if anyone cares to
bother. PP5002 is not so trivial either but that tested as working.
Change-Id: I4928d69b3b3be7fb93e259f81635232df9bd1df2
Reviewed-on: http://gerrit.rockbox.org/166
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
revert all games plugins keymaps that had mysteriouly disapeared
Change-Id: I648ea4c13ddacc49995254fbb79a0dbb75b2fcbc
Reviewed-on: http://gerrit.rockbox.org/160
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
1) this patch replace all keymaps with PLA ones. It also clean some optionnal
compiling that are not needed anymore througt PLA
2) it also add an alternative exit button (PLA_EXIT or PLA_CANCEL)
Note: no patch for manual here as there isn't a manual for fireworks yet
Change-Id: I460096a018ce8d3890425f8b6b98194c4e3f9d76
Reviewed-on: http://gerrit.rockbox.org/114
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
1) this patch replace all keymaps with PLA ones.
2) the patch also do the required change to the manual in order to match
code's changes.
3) it also add an alternative exit button (PLA_EXIT or PLA_CANCEL)
4) Also cut out the remote control related mapping as PLA handle remote controls
his own way so that we don't need them anymore
5) change scrollwheel mapping in order to have it controlling the value of selected field unstead of field selection
Change-Id: I023122d45a8337fad1e8ed8be12d4c928bdd1292
Reviewed-on: http://gerrit.rockbox.org/106
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
1) this patch replace all keymaps with PLA ones. It also clean some optionnal
compiling that are not needed anymore througt PLA
2) the patch also made required change to the manual in order to match code's
change.
3) it also add an alternative exit button (PLA_EXIT or PLA_CANCEL)
TO TEST:
I'm not sure if remote control works anymore and cannot test it. I'm not
sure about the way PLA handle those so if that doesn't work let me know ;)
Change-Id: I3fb81e75ef6e4d49e19be24f09c0413599ed0c9c
Reviewed-on: http://gerrit.rockbox.org/90
Tested-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
clock_binary, clock_logo, and clock_messages are new; the rest are
provided by 132x80 and 128x128, which already had the correct sizes
Change-Id: Ib34b605705b8a21a784faea8adc9ec448dfa7457
Reviewed-on: http://gerrit.rockbox.org/110
Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
Tested-by: Bertrik Sikken <bertrik@sikken.nl>
1) Multitouch does not work on Fuze+. Unstead we can take advantage of
bottomleft and bottomright button.
2) Manual completed accordingly
Change-Id: I9535865773a2d1e21b1a71af63e4d377abcbc752
Reviewed-on: http://gerrit.rockbox.org/115
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
1) this patch replace all keymaps with PLA ones. It also clean some optionnal
compiling that are not needed anymore througt PLA.
2) the patch also made required change to the manual in order to match code's
change.
3) it also add an alternative exit button (PLA_EXIT or PLA_CANCEL).
Change-Id: If6e78711eaab1dd2c907b418ba72c8789ceaa72b
Reviewed-on: http://gerrit.rockbox.org/105
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
adds wrappers for the functions playlist_sync, playlist_remove_all_tracks, and playlist_insert_track, playlist_insert_directory
playlist_{sync,remove_all_tracks} take no arguments
playlist_insert_{track,directory} only have one required argument (either the filename or directory name)
They take as optional arguments position, queue, and either sync or recurse
They all just pass NULL to work with the current playlist
also adds constants for:
PLAYLIST_PREPEND,
PLAYLIST_INSERT,
PLAYLIST_INSERT_LAST,
PLAYLIST_INSERT_FIRST,
PLAYLIST_INSERT_SHUFFLED,
PLAYLIST_REPLACE, and
PLAYLIST_INSERT_LAST_SHUFFLED
Change-Id: Ib7464cba50e7a250edf092e50668f11010f2b737
Reviewed-on: http://gerrit.rockbox.org/109
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
1) On all non PLA plugin, power button is used for exit. For consistency,
we set PLA_EXIT to power button.
2) Manual updated accordingly
Change-Id: Ia4b8fce13bad2f8dc0710cdb29ccf6c74b3fd9c4
Reviewed-on: http://gerrit.rockbox.org/91
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>