Commit graph

89 commits

Author SHA1 Message Date
Andree Buschmann
152c4fb819 Final commit to get test_codec working properly for both freq-scaling and non-freq-scaling targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30375 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 13:48:31 +00:00
Andree Buschmann
656625b30e Fix logic of test_codec for targets with HAVE_ADJUSTABLE_CPU_FREQ.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30374 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 13:00:35 +00:00
Michael Sevakis
c949d69f4b test_codec: Allow user to abort tests using target-defined TESTCODEC_EXITBUTTON.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29881 a1c6a512-1295-4272-9138-f99709370657
2011-05-15 01:41:25 +00:00
Michael Sevakis
c537d5958e Commit FS#12069 - Playback rework - first stages. Gives as thorough as possible a treatment of codec management, track change and metadata logic as possible while maintaining fairly narrow focus and not rewriting everything all at once. Please see the rockbox-dev mail archive on 2011-04-25 (Playback engine rework) for a more thorough manifest of what was addressed. Plugins and codecs become incompatible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29785 a1c6a512-1295-4272-9138-f99709370657
2011-04-27 03:08:23 +00:00
Michael Sevakis
a4098e6174 Sync test_codec to r29595.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29596 a1c6a512-1295-4272-9138-f99709370657
2011-03-16 05:59:46 +00:00
Michael Sevakis
6510973223 Give playback engine better control over the codec. Codec simply follows commands and doesn't concern itself with audio state. Get track change notification in on the actual last buffer insert of the track because now audio simply waits for a track change notify from PCM on the last track and it must be sent reliably. This is still at an intermediate stage but works. Codecs and plugins become incompatible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29387 a1c6a512-1295-4272-9138-f99709370657
2011-02-23 14:31:13 +00:00
Andree Buschmann
e3abdb1a52 Undo unwanted commit r29310.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29311 a1c6a512-1295-4272-9138-f99709370657
2011-02-15 20:10:50 +00:00
Andree Buschmann
237ca504e1 All AAC-HE files will double the frame sample count, not only AAC-HE files with SBR upsampling. This change fixes issues with some m4a files reported in the forums.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29310 a1c6a512-1295-4272-9138-f99709370657
2011-02-15 20:00:28 +00:00
Szymon Dziok
290e27b401 HDD6330: add missing button for test_codec.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28721 a1c6a512-1295-4272-9138-f99709370657
2010-12-02 20:25:04 +00:00
Marcin Bukat
dd61702fb0 HD300 - plugins keymaps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28712 a1c6a512-1295-4272-9138-f99709370657
2010-11-30 10:52:14 +00:00
Nils Wallménius
05434ebaf8 test_codec: fix menu broken in r28637
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28659 a1c6a512-1295-4272-9138-f99709370657
2010-11-24 16:42:40 +00:00
Michael Giacomelli
3f932318e2 Fix mistake on targets without frequency scaling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28638 a1c6a512-1295-4272-9138-f99709370657
2010-11-22 02:28:12 +00:00
Michael Giacomelli
7094181157 Add option to run test_codec unboosted on players with boosting.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28637 a1c6a512-1295-4272-9138-f99709370657
2010-11-22 02:22:56 +00:00
Nils Wallménius
60c640b549 test_codec: Align the codec buffer to pointer size, since tlsf wants that. Fixes a crash when running tremor in test_codec on 64 bit sim. (The tlsf init bailed out but tremor doesn't check the return and went on to alloc memory anyway)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28365 a1c6a512-1295-4272-9138-f99709370657
2010-10-27 15:07:05 +00:00
Nils Wallménius
8123dffaea Remove some inconsistent guarding around cpucache_* functions to fix a test_codec crash on coldfire, breaks plugin api compatibility so sorted and bumped version numbers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28287 a1c6a512-1295-4272-9138-f99709370657
2010-10-16 12:30:06 +00:00
Thomas Martitz
bf301fdbb6 Fix a few div0 cases forgotten in r27684 to enable enabling asm optimizations for android builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28235 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 14:43:40 +00:00
Rafaël Carré
a92d316972 fix test_codec broken after r27968
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27985 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 12:10:37 +00:00
Thomas Martitz
cae4ae2c71 Second try: Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also make exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex() introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases rb->default_event_handler_ex() was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27873 a1c6a512-1295-4272-9138-f99709370657
2010-08-24 14:30:46 +00:00
Thomas Martitz
93cb949372 Revert "Introduce plugin_crt0.c that every plugin links."
Too much errors and no time to fix them now.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27863 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 17:12:26 +00:00
Thomas Martitz
abdc5935be Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also it makes exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases it was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27862 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 16:56:49 +00:00
Michael Giacomelli
35717ec06e Commit FS#11458 by me. Fixes test_codec to work on files larger then the available audio buffer. Allows test_codec to work normally on the AMS Sansas as well as D2, etc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27303 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 00:11:30 +00:00
Rafaël Carré
5c50021b90 test_codec: allocate wavbuffer/dspbuffer dynamically
It'll build on targets with small plugin buffer, the buffer for each of
them will be a little smaller than 32kB. "should be enough"

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27050 a1c6a512-1295-4272-9138-f99709370657
2010-06-22 10:43:50 +00:00
Rafaël Carré
7aee79162b test_codec: remove 2 static string buffers and put them on the stack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27049 a1c6a512-1295-4272-9138-f99709370657
2010-06-22 10:43:45 +00:00
Rafaël Carré
34aac0e20d test_codec: fix DEBUGF pointer format specifier
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27040 a1c6a512-1295-4272-9138-f99709370657
2010-06-22 06:58:17 +00:00
Thomas Martitz
35e8b1429a Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently).
The simulator defines PLATFORM_HOSTED, as RaaA will do (RaaA will not define SIMULATOR).
The new define is to (de-)select code to compile on hosted platforms generally.

Should be no functional change to targets or the simulator.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27019 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 16:53:00 +00:00
Nils Wallménius
10719ef649 test_codec: print crc's that start with 0 properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26890 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 15:27:42 +00:00
Rob Purchase
550ca6464a test_codec: close the log file before attempting to open a new one, and clear the button queue before displaying the menu a second time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26437 a1c6a512-1295-4272-9138-f99709370657
2010-05-31 21:07:25 +00:00
Thomas Martitz
0a1d7c28b7 Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:13 +00:00
Thomas Martitz
c61e89c0ed Make creat() posix compliant API-wise. Shouldn't affect the core as it's wrapped via a static inline.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25843 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:04 +00:00
Nils Wallménius
d0a170c176 Use the same output func for wav writing and checksum calculation, simplifying the code and possibly speeding up checksum calculation slightly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25068 a1c6a512-1295-4272-9138-f99709370657
2010-03-08 12:08:29 +00:00
Szymon Dziok
7074a64d8a Packard Bell Vibe 500: Finish plugin keymaps. Rockbox compiles clean now for the target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24658 a1c6a512-1295-4272-9138-f99709370657
2010-02-14 21:56:53 +00:00
Tomer Shalev
47ddbaa47b Cowon D2: Rename COWOND2_PAD -> COWON_D2_PAD to match macro used in manual, and
to target naming conventions in general


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24010 a1c6a512-1295-4272-9138-f99709370657
2009-12-15 20:51:41 +00:00
Nils Wallménius
4279c9f4aa Give test_codec the ability to checksum files or folders of files, usefull to verify output integrity.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23711 a1c6a512-1295-4272-9138-f99709370657
2009-11-22 18:48:07 +00:00
Jeffrey Goode
0db3308cb5 pcmbuf: bug fix with pcmbuf flush, code cleanup, added comments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23608 a1c6a512-1295-4272-9138-f99709370657
2009-11-11 07:02:18 +00:00
Karl Kurbjun
26348fb9cb Test codec: Add exit button for touchscreens
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23563 a1c6a512-1295-4272-9138-f99709370657
2009-11-07 22:56:00 +00:00
Jeffrey Goode
013fe35992 pcmbuf: better latency calculation, added debug code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23537 a1c6a512-1295-4272-9138-f99709370657
2009-11-05 17:32:32 +00:00
Jeffrey Goode
cf19ba5599 Replace limiter with dynamic range compressor
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22832 a1c6a512-1295-4272-9138-f99709370657
2009-09-25 15:46:38 +00:00
Jeffrey Goode
b60ddb854f Better menu verbiage for test_codec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22797 a1c6a512-1295-4272-9138-f99709370657
2009-09-23 14:56:32 +00:00
Jeffrey Goode
2b7ef6b928 FS#10199: Adds limiter DSP function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22394 a1c6a512-1295-4272-9138-f99709370657
2009-08-18 03:24:45 +00:00
Jeffrey Goode
0dc2fb5760 Adds DSP testing and WAV writing to test_codec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22279 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 18:12:25 +00:00
Michael Giacomelli
594b6e2b49 Commit FS#10251. Plugins for the YH-820, YH-920, and YH-925 by Jens Erdmann with improvements and bitmap graphics by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22149 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 03:08:32 +00:00
Nils Wallménius
3d4701a6e4 FS#10080
* Move strncpy() from core to the pluginlib
* Introduce strlcpy() and use that instead in most places (use memcpy in a few) in core and some plugins
* Drop strncpy() from the codec api as no codec used it
* Bump codec and plugin api versions


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21863 a1c6a512-1295-4272-9138-f99709370657
2009-07-14 13:57:45 +00:00
Maurus Cuelenaere
fef405c328 Enable plugins on the Onda VX747
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20647 a1c6a512-1295-4272-9138-f99709370657
2009-04-07 23:41:44 +00:00
Andree Buschmann
a0516b7060 Make test_codec.c compilable again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19984 a1c6a512-1295-4272-9138-f99709370657
2009-02-12 05:30:12 +00:00
Michael Sevakis
21f0c9a282 Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2009-02-11 12:55:51 +00:00
Michael Sevakis
b0befadad1 Include divide-by-zero handling within plugins and codecs for ARM processors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19834 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 03:47:09 +00:00
Andrew Mahone
23d9812273 loader-initialized global plugin API:
struct plugin_api *rb is declared in PLUGIN_HEADER, and pointed to by
__header.api

the loader uses this pointer to initialize rb before calling entry_point

entry_point is no longer passed a pointer to the plugin API

all plugins, and pluginlib functions, are modified to refer to the
global rb

pluginlib functions which only served to copy the API pointer are
removed

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19776 a1c6a512-1295-4272-9138-f99709370657
2009-01-16 10:34:40 +00:00
Jens Arnold
759bede3bc Fix test_codec for r19704 (prefix removed from plugin API).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19729 a1c6a512-1295-4272-9138-f99709370657
2009-01-08 22:37:51 +00:00
Michael Sevakis
2054627caa Have the codec thread do callbacks instead of messing with the stack which is much simpler and safer. Remove threads array from plugin API since it now serves no purpose. Up minimum API version and sort.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19684 a1c6a512-1295-4272-9138-f99709370657
2009-01-05 10:31:19 +00:00
Michael Sevakis
8cfbd3604f Use cookies for thread identification instead of pointers directly which gives a buffer against wrongly identifying a thread when the slot is recycled (which has been nagging me for awhile). A slot gets 255 uses before it repeats. Everything gets incompatible so a full update is required.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19377 a1c6a512-1295-4272-9138-f99709370657
2008-12-10 08:57:10 +00:00