Brandon Low
4bde8982f1
Fix a fixme in flac and make the usage of the read_filebuf codec api more consistent with its actual contract.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15303 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 18:58:44 +00:00
Magnus Holmgren
01a010fd19
Fix several printf-style warnings in logf builds.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12830 a1c6a512-1295-4272-9138-f99709370657
2007-03-18 09:50:53 +00:00
Michael Sevakis
97f369a587
SWCODEC: Annoying neatness update. Use intptr_t for codec_configure_callback and dsp_configure and stop all the silly type casting of intergral types to pointers to set dsp configuration and watermarks. Shouldn't have any effect on already compiled codecs at all. Will fix any important patches in the tracker so they compile.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12259 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 16:34:16 +00:00
Michael Sevakis
aba6ca0881
Fix resampling clicking as much as possible at the moment. 1) Upsampling clicked because of size inaccuracies returned by DSP. Fix by simplifying audio system to use per-channel sample count from codec to pcm buffer. 2) Downsampling affected by 1) and was often starting passed the end of the data when not enough was available to generate an output sample. Fix by clamping input range to last sample in buffer and using the last sample value in the buffer. A perfect fix will require a double buffering scheme on the resampler to sufficient data during small data transients on both ends at all times of the down ratio on input and the up ratio on output.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12218 a1c6a512-1295-4272-9138-f99709370657
2007-02-07 00:51:50 +00:00
Jens Arnold
7ebb2911b8
Fixed 64 bit warning.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12192 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 12:35:44 +00:00
Magnus Holmgren
7c9f4e3a3a
Try to fix the simulator build warnings.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12189 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 10:24:37 +00:00
Magnus Holmgren
39bd2375fa
Fix playback of mono FLAC files, so they don't play in the left channel only.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12188 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 10:04:42 +00:00
Adam Boot
5931ab2e13
Minor corrections to FLAC seeking calculations
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11687 a1c6a512-1295-4272-9138-f99709370657
2006-12-07 20:13:58 +00:00
Tomasz Malesinski
80da8b141c
FS#6357, patch 1: let iramcopy and bss share the same space in codecs and
...
plugins. Currently, in case of plugins using IRAM bss is cleared twice,
once in the loader, once in PLUGIN_IRAM_INIT. For codecs, bss is cleared only
during codec initialization. Also, removed double variables in codecs
storing a pointer to codec_api.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11606 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 18:31:41 +00:00
Michael Sevakis
bbef13eddf
SWCODEC: Stop clicks between tracks when resampler is active by only switching the DSP frequency and not resetting the resampler at track boundaries. Will make sure DSP is correctly flushed at dicontinuities but don't hear any problems currently.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11600 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 12:02:47 +00:00
Tomasz Malesinski
5c54ba49d5
Added macros controlling what goes to IRAM on different targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11483 a1c6a512-1295-4272-9138-f99709370657
2006-11-09 21:59:27 +00:00
Adam Boot
c1916afa41
Sample-accurate seeking for FLAC
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11474 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 22:00:45 +00:00
Thom Johansen
354770088e
Re-enable the currently unused and broken dithering and noise shaping code already in Rockbox, and make it a user option instead of a codec-controlled option. The majority of people probably will not even hear any difference with this enabled, but feedback is welcome. Save your settings!
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11368 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 20:41:33 +00:00
Magnus Holmgren
f95dd56a2c
Fix bug 5341: Resume in Wav and Flac doesn't start from the position where it was left off. Mark Arigo helped with the Flac fix.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10051 a1c6a512-1295-4272-9138-f99709370657
2006-06-04 15:04:03 +00:00
Brandon Low
f3bc1efc49
First commit of reworking voice to be mroe stable on swcodec
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9758 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 14:40:13 +00:00
Brandon Low
ebadcc633a
Put new_track on the codec_api, and use it instead of the reload_codec variable in most places. Should help with problems people have had with GUI vs. playback sync.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9670 a1c6a512-1295-4272-9138-f99709370657
2006-04-15 02:03:11 +00:00
Brandon Low
c76904be53
Fix warnings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9230 a1c6a512-1295-4272-9138-f99709370657
2006-03-24 14:02:27 +00:00
Brandon Low
86f1e2ead2
Convert playback.c to use unsigned byte counters, and _minor_ refactoring of buffer callbacks
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9227 a1c6a512-1295-4272-9138-f99709370657
2006-03-24 13:43:15 +00:00
Dave Chapman
b0302f0cbb
Prevent unaligned memory accesses whilst reading seektable - fixes FLAC playback on iPod
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8477 a1c6a512-1295-4272-9138-f99709370657
2006-01-29 01:31:28 +00:00
Brandon Low
1060e447f8
Part of the profiling patch to use a consistent return path in all codecs to facilitate 'on exit' functionality
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8374 a1c6a512-1295-4272-9138-f99709370657
2006-01-18 20:22:03 +00:00
Jens Arnold
b8749fdf21
New codec loader, using the same mechanism as the new plugin loader. API version numbering restarted for the new system. Uses the target ID from configure, so don't change that too often. * Fixed sim_plugin_load_ram() to truncate the tempfile. * Reduced plugin buffer size to 512KB for iriver and iPod.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8362 a1c6a512-1295-4272-9138-f99709370657
2006-01-18 00:05:14 +00:00
Jens Arnold
07c4254135
Don't include the .bss and .ibss sections in the binary image for codecs and plugins. Saves quite some disk space (and buffer space in case of codec changes during playback).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8308 a1c6a512-1295-4272-9138-f99709370657
2006-01-08 22:50:14 +00:00
Miika Pekkarinen
9c0f1a9e39
More stable playback with reduced stuttering when skipping tracks.
...
Removed CODEC_SET_FILEBUF_LIMIT setting; now playback.c determines how
to buffer the files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7970 a1c6a512-1295-4272-9138-f99709370657
2005-11-18 20:21:13 +00:00
Thom Johansen
c8193b8da5
The seek_time member of the codec API needs to be decremented before use as a seeking time.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7768 a1c6a512-1295-4272-9138-f99709370657
2005-11-06 19:18:04 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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