Commit graph

337 commits

Author SHA1 Message Date
Thom Johansen
97a21a3b36 Unrolled loops up to order 10 plus slight optimisation of default case.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7759 a1c6a512-1295-4272-9138-f99709370657
2005-11-05 17:54:37 +00:00
Thom Johansen
d5eefe8bc7 Fixed the halved volume bug, remove ad-hoc metadata loading and add ReplayGain support.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7753 a1c6a512-1295-4272-9138-f99709370657
2005-11-04 21:35:08 +00:00
Dave Chapman
4b03c14a3e Add seekpoint parsing and dummy ICODE_ATTR macro to standalone FLAC test program
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7742 a1c6a512-1295-4272-9138-f99709370657
2005-11-03 18:48:23 +00:00
Dave Chapman
439ba9bdbb Move code into IRAM and explicitly inline some functions (gcc was inlining them anyway, but this way is better)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7741 a1c6a512-1295-4272-9138-f99709370657
2005-11-03 18:14:37 +00:00
Dave Chapman
6f7f921ebe Move all code into IRAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7740 a1c6a512-1295-4272-9138-f99709370657
2005-11-03 15:32:40 +00:00
Thom Johansen
0263ece7f8 Use direct non-interleaved full precision output data instead of converting to 16 bit interleaved data.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7734 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 19:43:52 +00:00
Thom Johansen
3661215134 Better place for EMAC init.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7733 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 19:23:27 +00:00
Thom Johansen
a8b9fd1cf8 Need to set sample depth before clip limits to avoid having clip limits overridden.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7732 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 19:15:25 +00:00
Thom Johansen
6b8bd6bc1a Support large delay fields in LAME header, plus some cleanups.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7731 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 19:02:25 +00:00
Dave Chapman
057cc06c68 Enable replaygain for the new FLAC decoder
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7729 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 17:26:47 +00:00
Dave Chapman
53dc1fefe9 Make the m4a parser happier with Nero-encoded .mp4 files. This still needs more work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7728 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 14:01:27 +00:00
Dave Chapman
4faf0ce488 Fix simulator builds - DEBUGF explicitly needs rb->
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7724 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 01:53:11 +00:00
Dave Chapman
62e9e8927f Add const attribute to lookup tables
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7723 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 01:29:35 +00:00
Dave Chapman
0eb6754e53 Cosmetic changes - use correct ICONST or IBSS attributes and refer to codec api as "ci" instead of "rb"
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7722 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 01:24:45 +00:00
Dave Chapman
5006d15d1e Call ci->seek_complete() callback after processing a seek request (an old API change that wasn't implemented in all the codecs)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7717 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 00:09:42 +00:00
Thom Johansen
0b19487898 Init EMAC properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7715 a1c6a512-1295-4272-9138-f99709370657
2005-11-01 23:27:41 +00:00
Thom Johansen
60d8db4503 Added some EMAC optimised fixed point routines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7714 a1c6a512-1295-4272-9138-f99709370657
2005-11-01 22:21:27 +00:00
Jens Arnold
2f4327f760 Removed msvc-style x86 inline asm. Now the iriver win32 sim builds again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7713 a1c6a512-1295-4272-9138-f99709370657
2005-11-01 21:17:41 +00:00
Dave Chapman
33b24a1de0 Fix gcc4 warnings for simulator builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7710 a1c6a512-1295-4272-9138-f99709370657
2005-11-01 09:52:24 +00:00
Dave Chapman
b08a942951 Cosmetic change - correct the indenting to the standard Rockbox four spaces
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7709 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 23:34:14 +00:00
Dave Chapman
e85bbad753 Suppress compiler warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7708 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 21:46:50 +00:00
Dave Chapman
cea6d0c92f Initial check-in of AAC codec. Currently only recognises the .mp4 extension and is not yet capable of realtime operation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7706 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 20:56:29 +00:00
Dave Chapman
407be69b8c Add capability to parse AAC files in M4A.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7705 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 20:50:32 +00:00
Dave Chapman
c3f901be56 Correct the prototype for memmove (oops, forgot this file)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7702 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 20:41:54 +00:00
Dave Chapman
6726f4fcf6 Correct the prototype for memmove
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7701 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 20:40:08 +00:00
Dave Chapman
798a4f3533 Changes to make libfaad compile in Rockbox. Also remove compiler warnings, use some IRAM (IRAM usage needs reviewing) and drastically reduce the stack usage
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7700 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 20:33:27 +00:00
Dave Chapman
65de1cc6af Initial check-in of unmodified libfaad (part of the FAAD2 project). This is the last version of libfaad available under the GPL - the state of FAAD2 CVS at midnight on 2005-02-01
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7699 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 18:56:29 +00:00
Thom Johansen
65fe5f144d Some more IBSS_ATTR changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7697 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 13:00:14 +00:00
Dave Chapman
fca6b63ef7 Fix bug with FLAC and ALAC output being half the correct volume. The DSP_SET_SAMPLE_DEPTH function expects needs clarifying or changing - it seems to expect one less than the number of bits in cases where the depth is greater than the native depth (16 bits).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7692 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 22:06:42 +00:00
Dave Chapman
29c7da9e69 Don't copy the data from the audio buffer - request_buffer() guarantees to always return up to GUARD_BUFSIZE bytes, even at the buffer wraparound point. This removes the need for the 32KB static input buffer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7691 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 21:04:32 +00:00
Dave Chapman
15a830bdba Skip ID3v2 tags at the start of a FLAC file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7689 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 15:07:40 +00:00
Miika Pekkarinen
169c935c24 Optimizations to the FLAC-codec buffer requesting to eliminate the
need of extra copying.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7685 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 07:38:52 +00:00
Dave Chapman
6934eaf225 Oops
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7683 a1c6a512-1295-4272-9138-f99709370657
2005-10-29 18:00:04 +00:00
Dave Chapman
45f9e5d7b0 Remove generic M4A parsing code from libalac and create a libm4a - so it can be used by other codecs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7682 a1c6a512-1295-4272-9138-f99709370657
2005-10-29 17:12:52 +00:00
Dave Chapman
dff9352430 Initial seeking support. This only seeks to the nearest point (before the target sample) in the seektable. NOTE: not all FLAC files have seektables - some front-ends have the skill to create FLAC files without them. You can add seek points every 10 seconds to a FLAC file with the command: metaflac --add-seekpoint=10s file.flac
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7680 a1c6a512-1295-4272-9138-f99709370657
2005-10-29 01:39:07 +00:00
Thom Johansen
6ff8463216 Enabled the FLAC EMAC optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7678 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 22:03:52 +00:00
Thom Johansen
c01b987cca Squeezed two very frequently used arrays in IRAM for a very nice performance boost.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7676 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 20:21:58 +00:00
Dave Chapman
e12ab49b73 Add more useful error codes from decoder
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7675 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 20:09:47 +00:00
Dave Chapman
f1844c4166 1) Always enable the DSP. 2) Change codec to output one 32-bit array per channel containing samples left-shifted to 28-bits (instead of 16-bit interleaved samples). 3) Remove the two 16KB internal predicterror_buffer arrays (we use the output arrays instead) 4) Small internal rearrangement of the code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7667 a1c6a512-1295-4272-9138-f99709370657
2005-10-28 00:11:28 +00:00
Dave Chapman
3efa91ed03 Should be referring to libffmpegFLAC, not libalac - how did this work in the past?
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7665 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 17:04:57 +00:00
Dave Chapman
acf9f8455a Prevent compiler warning for LOGF builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7664 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 16:59:23 +00:00
Linus Nielsen Feltzing
dc9e201671 Support for a colon-separated path in APPEXTRA
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7663 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 14:39:00 +00:00
Dave Chapman
d1dc0bd824 Zero the FLACContext during initialisation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7662 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 13:18:05 +00:00
Thom Johansen
5a4423fc23 Didn't mean to commit that...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7661 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 11:44:01 +00:00
Thom Johansen
292e4e90d7 Introduced usage of IBSS_ATTR and ICONST_ATTR in codec libraries.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7660 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 11:39:01 +00:00
Thom Johansen
e6021381ef Introduced usage of IBSS_ATTR and ICONST_ATTR to codec plugins.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7659 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 11:32:02 +00:00
Thom Johansen
c2628f3af9 Replaced jump table with a more efficient one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7658 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 11:00:24 +00:00
Thom Johansen
0b38c7dcbe Assembler optimised LPC routines for Coldfire. Will enable them when codec has seen further testing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7657 a1c6a512-1295-4272-9138-f99709370657
2005-10-27 00:33:38 +00:00
Dave Chapman
273d2e81f7 New FLAC decoder from the ffmpeg project
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7656 a1c6a512-1295-4272-9138-f99709370657
2005-10-26 12:35:58 +00:00
Thom Johansen
6f9a84c2b8 Removed unneeded xxx2wav files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7652 a1c6a512-1295-4272-9138-f99709370657
2005-10-22 11:52:26 +00:00
Dave Chapman
533dbbef58 Fix downmixing problems in AC3/A52 decoder and small cleanup of unused code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7651 a1c6a512-1295-4272-9138-f99709370657
2005-10-22 11:37:16 +00:00
Dave Chapman
1a82763d3a Seeking support for AC3/A52 files. We assume they are always CBR.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7650 a1c6a512-1295-4272-9138-f99709370657
2005-10-22 09:10:51 +00:00
Miika Pekkarinen
127f069545 Fixed the playlist skipping with MusePack.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7638 a1c6a512-1295-4272-9138-f99709370657
2005-10-18 06:52:58 +00:00
Magnus Holmgren
37011258d6 iriver: more codec library cleanup: remove codec_alloca and a some extraneous defines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7637 a1c6a512-1295-4272-9138-f99709370657
2005-10-17 18:46:46 +00:00
Miika Pekkarinen
eb04a53830 Fixed the pops with musepack.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7632 a1c6a512-1295-4272-9138-f99709370657
2005-10-16 06:19:23 +00:00
Dave Chapman
84d2f0e029 Fix compiler warnings in sim.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7631 a1c6a512-1295-4272-9138-f99709370657
2005-10-15 09:40:56 +00:00
Thom Johansen
3de190d9d7 Previous fix introduced tons of comparison warnings, just cast for now instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7628 a1c6a512-1295-4272-9138-f99709370657
2005-10-13 13:52:03 +00:00
Thom Johansen
4d7e5dfbdc Use correct types to avoid sim warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7627 a1c6a512-1295-4272-9138-f99709370657
2005-10-13 12:15:31 +00:00
Thom Johansen
c91e0bbfc9 Cleaned up the messy codec header and library system by merging codec.h, lib/codeclib.[ch] and lib/xxx2wav.[ch] into just codeclib.[ch]. Deleted much of the unused code in the xxx2wav portion. All codecs should now only include codeclib.h, and whatever codec specific headers are needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7626 a1c6a512-1295-4272-9138-f99709370657
2005-10-13 11:32:52 +00:00
Jens Arnold
507f72cd8c Musepack: emacified multiplication routines, gives a nice speed boost.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7624 a1c6a512-1295-4272-9138-f99709370657
2005-10-12 23:16:40 +00:00
Thom Johansen
0059995326 Cosmetic changes and cleanup. Removed all unused mad_timer code and a couple of unnecessary headers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7623 a1c6a512-1295-4272-9138-f99709370657
2005-10-12 16:25:59 +00:00
Thom Johansen
af0a264cf6 Disabled dynamic range compression.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7621 a1c6a512-1295-4272-9138-f99709370657
2005-10-11 23:06:32 +00:00
Thom Johansen
6762810ba6 Cleaned up code. Now passes full precision samples to the playback engine, and DSP is enabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7620 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 23:37:30 +00:00
Magnus Holmgren
f273f354eb iRiver/Vorbis: And don't specify -O2 twice...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7616 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 21:41:37 +00:00
Magnus Holmgren
07e375c369 iRiver/Vorbis: Actually use the rule in the makefile.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7615 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 20:54:30 +00:00
Thom Johansen
0ad1ed632d Cleaned up to conform to one source code style, removed some tabs and some redundancies.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7614 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 20:19:09 +00:00
Thom Johansen
3d98ecf951 Added DSP support and started passing full precision samples to playback engine. Added dog slow seeking support (thanks to poor seeking support in file format). Some cosmetic changes. Still not realtime.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7613 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 19:56:40 +00:00
Thom Johansen
1290e05641 Removed a ton of tabs, fixed some indentation and removed some unneeded includes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7606 a1c6a512-1295-4272-9138-f99709370657
2005-10-10 16:02:52 +00:00
Dave Chapman
9e19c95d8e Replace SWAB16 and SWAB32 with a comprehensive set of byte-swap macros - letoh16, letoh32, htole16, htole32, betoh16, betoh32, htobe16 and htobe32
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7584 a1c6a512-1295-4272-9138-f99709370657
2005-10-06 19:27:43 +00:00
Dave Bryant
f0fe3c9477 Fix some WavPack bugs by forcing DSP use even when not needed for sampling rate
conversion or ReplayGain. Costs about 12% boost ratio when DSP would not have
been used before.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7573 a1c6a512-1295-4272-9138-f99709370657
2005-09-30 21:11:31 +00:00
Magnus Holmgren
58384f03fb iRiver: Make it possible to build Rockbox using GCC 4.0.1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7569 a1c6a512-1295-4272-9138-f99709370657
2005-09-28 17:36:42 +00:00
Dave Chapman
9a625ef7ac Add yield() calls inside the monolithic ALAC decode_frame() function - improves responsiveness of UI during ALAC decoding
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7557 a1c6a512-1295-4272-9138-f99709370657
2005-09-24 12:35:18 +00:00
Dave Chapman
cae670ff1f Cascade errors back down to qtmovie_read() and correctly return an error on invalid ALAC files - should prevent crashes when attempting to play AAC files using ALAC decoder
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7556 a1c6a512-1295-4272-9138-f99709370657
2005-09-24 11:56:36 +00:00
Jonas Häggqvist
9f41c6c11e Workaround for ALAC files that previousy wouldn't play. Libalac now skips unknown chunk IDs. Time display and seeking is broken for those files (the ones that played before still work). Patch by Alyssa Milburn.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7552 a1c6a512-1295-4272-9138-f99709370657
2005-09-24 02:12:42 +00:00
Thom Johansen
bccf58621e Removed unnecessary codec_api struct.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7551 a1c6a512-1295-4272-9138-f99709370657
2005-09-23 00:12:02 +00:00
Dave Chapman
139c1cb824 First version of ALAC (Apple Lossless) decoder
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7547 a1c6a512-1295-4272-9138-f99709370657
2005-09-22 21:55:37 +00:00
Dave Chapman
debbe9747e First Rockbox version of ALAC decoder - porting to work in Rockbox environment and some simple (but significant) optimisations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7544 a1c6a512-1295-4272-9138-f99709370657
2005-09-22 20:46:58 +00:00
Magnus Holmgren
b5f3365554 iriver: proper wav file handling by Frederic Devernay (patch #1245261). Adapted the metadata part to the new metadata.c, and did a few minor changes in the codec. Some of the file format checks in the codec should IMHO be moved to metadata.c, but I left that for later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7542 a1c6a512-1295-4272-9138-f99709370657
2005-09-22 19:36:25 +00:00
Dave Chapman
711b2e3c88 Initial (unmodified - for reference) import of David Hammerton's Apple Lossless (ALAC) decoder from http://crazney.net/programs/itunes/alac.html
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7541 a1c6a512-1295-4272-9138-f99709370657
2005-09-22 18:47:04 +00:00
Thom Johansen
1b79209ea7 Avoid EMAC stall in MULT31_SHIFT15.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7530 a1c6a512-1295-4272-9138-f99709370657
2005-09-21 23:09:19 +00:00
Thom Johansen
f60e6200f6 DSP_* constants moved from playback.h to dsp.h.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7529 a1c6a512-1295-4272-9138-f99709370657
2005-09-21 13:09:10 +00:00
Magnus Holmgren
f5ec0fa592 iriver: fix problem with playing some long vorbis files (e.g., this week in tech, #21); the decoder would run out of memory and freeze rockbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7526 a1c6a512-1295-4272-9138-f99709370657
2005-09-18 12:44:27 +00:00
Thom Johansen
14f2e45397 Replaced standard libmad accumulator sequence with EMAC optimised one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7514 a1c6a512-1295-4272-9138-f99709370657
2005-09-13 14:12:52 +00:00
Thom Johansen
1996dca15a Put a couple of important layer 1/2 arrays in IRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7504 a1c6a512-1295-4272-9138-f99709370657
2005-09-10 10:14:35 +00:00
Thom Johansen
0c885ac4c1 Put some FLAC data in IRAM. Will clean up code later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7496 a1c6a512-1295-4272-9138-f99709370657
2005-09-07 10:13:39 +00:00
Thom Johansen
fb30e720e2 Fix red build with a comment for now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7489 a1c6a512-1295-4272-9138-f99709370657
2005-09-07 02:41:00 +00:00
Thom Johansen
5e3e957810 Code was a wild mix of different styles, cleaned it up somewhat.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7488 a1c6a512-1295-4272-9138-f99709370657
2005-09-07 02:22:26 +00:00
Thom Johansen
735208a541 Adapted codecs and DSP system to having MACSR saved in thread context.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7485 a1c6a512-1295-4272-9138-f99709370657
2005-09-07 00:24:27 +00:00
Jens Arnold
d6c054575b Renamed CONFIG_HWCODEC and MASNONE to the more appropriate CONFIG_CODEC and SWCODEC, respectively.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7416 a1c6a512-1295-4272-9138-f99709370657
2005-08-29 21:15:27 +00:00
Linus Nielsen Feltzing
984712f291 iriver: The MP3 codec didn't take the ID3 tag size into account when seeking
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7391 a1c6a512-1295-4272-9138-f99709370657
2005-08-23 12:52:59 +00:00
Miika Pekkarinen
8a7d104a35 Now codecs will do the buffer flushing after seeking as they find it
necessary.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7369 a1c6a512-1295-4272-9138-f99709370657
2005-08-21 18:12:31 +00:00
Miika Pekkarinen
8899fccf76 Fixed the warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7366 a1c6a512-1295-4272-9138-f99709370657
2005-08-21 06:38:34 +00:00
Miika Pekkarinen
9d7fd1804e Now beep can be disabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7365 a1c6a512-1295-4272-9138-f99709370657
2005-08-20 21:17:41 +00:00
Miika Pekkarinen
159c52dd36 Initial voice ui support for software codec platforms. Added also a
beep when changing tracks.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7360 a1c6a512-1295-4272-9138-f99709370657
2005-08-20 11:13:19 +00:00
Linus Nielsen Feltzing
a387805071 Correct samplecount calculation, suggested by Markus Kaufhold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7336 a1c6a512-1295-4272-9138-f99709370657
2005-08-17 09:34:18 +00:00
Magnus Holmgren
753a89718c Fix for ff/rw in long MP3 files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7334 a1c6a512-1295-4272-9138-f99709370657
2005-08-16 18:26:41 +00:00
Magnus Holmgren
1d4a6c0cc3 One more gapless fix for LAME MP3 files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7331 a1c6a512-1295-4272-9138-f99709370657
2005-08-15 19:33:56 +00:00
Magnus Holmgren
15e0aeb73b More complete gapless playback implementation in the MP3 codec (using LAME header values). Some cleanups as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7312 a1c6a512-1295-4272-9138-f99709370657
2005-08-13 08:02:38 +00:00
Linus Nielsen Feltzing
0da0534d10 mp3 codec: simpler seeking, and now sets the sample frequency dynamically from the mp3 frame headers rather than from the frequency found by the metadata parser
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7299 a1c6a512-1295-4272-9138-f99709370657
2005-08-10 22:59:06 +00:00
Miika Pekkarinen
6b807b2d24 Fixed MAC initialization problem with mpa codec and removed workaround
for that bug.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7260 a1c6a512-1295-4272-9138-f99709370657
2005-07-30 13:46:38 +00:00
Ryan Jackson
b301b43825 Added comments, Replay Gain, and resume/bookmarks for FLAC.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7253 a1c6a512-1295-4272-9138-f99709370657
2005-07-28 18:43:33 +00:00
Magnus Holmgren
7e33f16aee Tweaked IRAM usage in the Vorbis codec. Speeds up decoding by about 10% on a couple of test files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7249 a1c6a512-1295-4272-9138-f99709370657
2005-07-28 12:04:41 +00:00
Magnus Holmgren
988ea2cffc Added support for ID3V2 ReplayGain tags (as written by Foobar). Generalized the replaygain tag parsing a bit, to cut down the code size (APE tags should use this as well, but as it requires larger changes, it will have to wait for another commit). Also fixed a bug in the ID3V2 parser; ISO-8859-1 strings could confuse the main parsing loop (causing bufferpos to come out of sync).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7243 a1c6a512-1295-4272-9138-f99709370657
2005-07-27 11:54:33 +00:00
Dave Bryant
c5ebc8e4e4 Added ReplayGain support to WavPack, including a small fix to dsp.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7237 a1c6a512-1295-4272-9138-f99709370657
2005-07-25 03:34:25 +00:00
Magnus Holmgren
4a53787992 ReplayGain support for Ogg Vorbis files (also called VorbisGain) added.
Note that there is a small delay from leaving a setting until the change
can be heard (due to audio data buffering).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7234 a1c6a512-1295-4272-9138-f99709370657
2005-07-24 15:32:28 +00:00
Christian Gmeiner
6753fb5138 oops... should compile without warnings now
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7187 a1c6a512-1295-4272-9138-f99709370657
2005-07-18 13:09:05 +00:00
Christian Gmeiner
c6ff1f5eb5 Added CPU_COLDFIRE define - one step closer to iAudio-port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7186 a1c6a512-1295-4272-9138-f99709370657
2005-07-18 12:40:29 +00:00
Miika Pekkarinen
cda55bbd6f Correctly read the next track metadata information. Don't crash if
frequency is ever set to 0.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7171 a1c6a512-1295-4272-9138-f99709370657
2005-07-16 06:26:29 +00:00
Ryan Jackson
bd49835135 DSP settings are properly reset when changing between tracks with different sampling rates.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7169 a1c6a512-1295-4272-9138-f99709370657
2005-07-16 00:10:42 +00:00
Ryan Jackson
a20f127d43 Added another call to mcf5249_init_mac in ov_pcm_seek, just in case. Fixed tag corruption bug and allowed non-numeric characters in year and tracknum tags. Added support for composer tag
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7168 a1c6a512-1295-4272-9138-f99709370657
2005-07-15 23:07:51 +00:00
Ryan Jackson
b5b8f05aed Removed calls to mcf5249_init_mac() from asm_mcf5249.h, added call for it to ov_read().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7158 a1c6a512-1295-4272-9138-f99709370657
2005-07-15 17:08:14 +00:00
Ryan Jackson
f580941b5a Changed assembly optimizations to re-init the MAC each time they're called. Fixes resampling problems with Ogg Vorbis.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7149 a1c6a512-1295-4272-9138-f99709370657
2005-07-15 06:24:22 +00:00
Ryan Jackson
4d45987e37 Removed unnecessary code that also caused playback glitches when changing tracks
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7136 a1c6a512-1295-4272-9138-f99709370657
2005-07-14 03:58:22 +00:00
Miika Pekkarinen
20b3897474 Separated buffering stuff from pcm_playback to pcmbuf. Renamed some
function calls (audiobuffer -> pcmbuf etc.).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7131 a1c6a512-1295-4272-9138-f99709370657
2005-07-13 12:48:22 +00:00
Ryan Jackson
d191756286 Resume now starts playback at the point it was stopped, not 2-7 seconds later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7125 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 16:45:38 +00:00
Daniel Stenberg
3f606de6f8 silence the makefile
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7121 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 11:08:57 +00:00
Daniel Stenberg
2d8fd9cf8a I find it weird that there is a private copy of this file here, but I'm
not fixing this now. I'm just making sure that this is in perfect sync
with the firmware one by simply #including it here!


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7119 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 11:04:57 +00:00
Daniel Stenberg
7ba03e6279 removed an extra codec_api struct pointer and the function setting it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7117 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 10:10:02 +00:00
Daniel Stenberg
4d71da006f code-policed, removed commented and ifdef'ed code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7115 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 10:01:55 +00:00
Miika Pekkarinen
fbd4088df8 Replaced some yields with sleep(1) to save battery while paused or
playing files which doesn't require cpu boosting.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7103 a1c6a512-1295-4272-9138-f99709370657
2005-07-11 18:47:47 +00:00
Linus Nielsen Feltzing
c4b7c671f9 Patch #1235763 by Ryan Jackson - Resume/bookmark support for Vorbis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7098 a1c6a512-1295-4272-9138-f99709370657
2005-07-11 06:47:35 +00:00
Miika Pekkarinen
0d63cbba4b Fixed a problem with transition to next album which caused rockbox
virtually to crash.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7096 a1c6a512-1295-4272-9138-f99709370657
2005-07-10 20:37:36 +00:00
Dave Bryant
85e03767f7 Reorganized encoder to allow compressing blocks in smaller chunks and
improved efficiency somewhat by looping through data in tighter passes.
Code is basically ready for an attempt at direct recording.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7088 a1c6a512-1295-4272-9138-f99709370657
2005-07-09 23:14:41 +00:00
Daniel Stenberg
a33fd0f14d build on all h100 units
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7066 a1c6a512-1295-4272-9138-f99709370657
2005-07-08 10:26:23 +00:00
Daniel Stenberg
28bd327559 Fix possible use of uninitialized variable
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7052 a1c6a512-1295-4272-9138-f99709370657
2005-07-07 08:23:21 +00:00
Miika Pekkarinen
3eb962d13b PCM buffering fixes. Made a temporary workaround for playback glitch
bug (see the patch).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7049 a1c6a512-1295-4272-9138-f99709370657
2005-07-07 07:15:05 +00:00
Miika Pekkarinen
5c2c991d14 Applied patch "[ 1232957 ] MP3 metadata fixes for software codec".
Thanks to Magnus Holmgren. Now metadata reading is better with
improved performance for mp3 files.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7030 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 19:55:40 +00:00
Miika Pekkarinen
d6e7942426 Fixed: Crossfading, broken elapsed info with mp3 files, possible cpu
boost problem and track changing.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7027 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 15:19:22 +00:00
Linus Nielsen Feltzing
eaf8b2d76d Patch #1232549 by Ryan Jackson, adds seeking and comments to Vorbis playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7025 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 08:43:36 +00:00
Dave Bryant
dacbc16d5b Added lossless encoding to WavPack library. Also made a few changes to
decoding stuff in preparation for future optimization and eliminated all tabs.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7009 a1c6a512-1295-4272-9138-f99709370657
2005-07-04 06:38:00 +00:00
Jens Arnold
d2456b44f7 Centralised the ICODE_ATTR and IDATA_ATTR #defines. Renamed some musepack and rockboy headers to avoid clashes with rockbox headers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6991 a1c6a512-1295-4272-9138-f99709370657
2005-07-03 14:05:12 +00:00
Miika Pekkarinen
d54811fe22 Fixed mono playback support for mp3. Added two other event handlers in
playback.c.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6986 a1c6a512-1295-4272-9138-f99709370657
2005-07-02 16:52:30 +00:00
Dave Bryant
1983738ea1 Not sure if this is the right way to make "resume" work correctly for WavPack,
but it seems to work and if it's wrong it should only affect WavPack...


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6938 a1c6a512-1295-4272-9138-f99709370657
2005-06-30 06:09:59 +00:00
Daniel Stenberg
c2bf5dfe12 For target builds, make the ELF files depend on its object file, but also
on the generic codec lib and the specific codec lib for each particular
codec. (Initial take, may need to adjusting to get optimal)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6905 a1c6a512-1295-4272-9138-f99709370657
2005-06-28 22:14:02 +00:00
Miika Pekkarinen
c2093538a4 Fixed a simulator warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6899 a1c6a512-1295-4272-9138-f99709370657
2005-06-27 19:52:34 +00:00
Thom Johansen
c6bd12f831 Turned off dithering in MPEG audio codec. It's just too slow.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6896 a1c6a512-1295-4272-9138-f99709370657
2005-06-27 18:06:25 +00:00
Dave Bryant
24d6535b7a Allow WavPack to use new sampling rate converter
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6888 a1c6a512-1295-4272-9138-f99709370657
2005-06-27 00:12:40 +00:00
Miika Pekkarinen
d8cb703b1e Initial DSP implementation. DSP supports resampling audio stream from
codecs (currently works corrently only with mp3's, somebody should fix
that).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6877 a1c6a512-1295-4272-9138-f99709370657
2005-06-26 19:41:29 +00:00
Thom Johansen
8b2531be27 Nicer code, removed rb references.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6829 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 22:02:11 +00:00
Thom Johansen
10426dbe22 Cleaned up code a bit, removed all rb references.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6825 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 21:18:05 +00:00
Daniel Stenberg
091001179a fix sim builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6823 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 21:13:10 +00:00
Daniel Stenberg
055303ad7d rip out all the LCD junk from the codec API
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6821 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 20:40:35 +00:00
Daniel Stenberg
3739d3aa34 codec lib sources
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6819 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 20:13:46 +00:00
Daniel Stenberg
b685ebd4f6 build codecs too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6818 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 20:13:18 +00:00
Daniel Stenberg
31efab4909 removed the use of the 2nd argument to codec_start() since no codec used
it anymore


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6814 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 19:55:09 +00:00
Daniel Stenberg
1f3d08d600 fixed make clean for the codec lib
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6813 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 19:54:43 +00:00
Daniel Stenberg
1dd672fe32 moved and renamed the codecs, gave the codecs a new extension (.codec),
unified to a single codec-only API, made a new codeclib, disabled the building
of the *2wav plugins


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6812 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 19:41:30 +00:00
Pedro Vasconcelos
1b3622d589 Use asm optimised memset() in vorbis_apply_window.
Slight speed improvement. "Toughest" Q10 encodings play without skipping now.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6792 a1c6a512-1295-4272-9138-f99709370657
2005-06-21 20:14:18 +00:00
Miika Pekkarinen
53ce20a1ae Killed all simulator warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6726 a1c6a512-1295-4272-9138-f99709370657
2005-06-15 19:38:13 +00:00
Tomas Salfischberger
88a89e0cdb There is no printf() in rockbox, but DEBUGF() has the intended effect in simulator.
And this was the last warning in iriver builds :D


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6713 a1c6a512-1295-4272-9138-f99709370657
2005-06-14 19:04:47 +00:00