summaryrefslogtreecommitdiff
path: root/firmware/export/pcm_playback.h
AgeCommit message (Collapse)Author
2006-12-06Small change to PCM recording API for low latency effects. Latency can be as ↵Michael Sevakis
low as 14 samples from input to output including the FIFOs (ColdFire) but 16 is more reasonable an expectation if only tranferring one sample per interrupt (\!). May convert PCM playback to use the same method as it can still be used in the old manner with some slight mods but has the potential to enable new features since it is more flexible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11668 a1c6a512-1295-4272-9138-f99709370657
2006-11-29PCM: A few tiny changes. 1) Recording a) Flush all pending files if filename ↵Michael Sevakis
queue is full or else perpetual flushing of 1 will occur at low bitrates and short split times. b) #ifdef out currently unused bits and save little less than 1/2K 2) Cleanup some declarations. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11623 a1c6a512-1295-4272-9138-f99709370657
2006-11-06Big Patch adds primarily: Samplerate and format selection to recording for ↵Michael Sevakis
SWCODEC. Supprort for samplerates changing in playback (just goes with the recording part inseparably). Samplerates to all encoders. Encoders can be configured individually on a menu specific to the encoder in the recording menu. File creation is delayed until flush time to reduce spinups when splitting. Misc: statusbar icons for numbers are individual digits to display any number. Audio buffer was rearranged to maximize memory available to recording and properly reinitialized when trashed. ColdFire PCM stuff moved to target tree to avoid a complicated mess when adding samplerate switching. Some needed API changes and to neaten up growing gap between hardware and software codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11452 a1c6a512-1295-4272-9138-f99709370657
2006-02-07Rework PCM bufferBrandon Low
* Linked list instead of static array buffer pointers * Variable sized chunks * Improved mix handling * Reduction in duplicated code * Reduced IRAM usage w/o sacrificing performance * Converted to almost entirely unsigned math * Add pause function to reduce pcm_* exposure to playback. This WILL break playback on the iPod until linuxstb makes a followup commit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8612 a1c6a512-1295-4272-9138-f99709370657
2006-01-22Muting trick to prevent tiny pops and glitchless mp3 seeking.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8416 a1c6a512-1295-4272-9138-f99709370657
2005-07-22More accurate playback position calculation.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7218 a1c6a512-1295-4272-9138-f99709370657
2005-07-17Initial attempt to support peak meter on iriver. It still has someMiika Pekkarinen
strange behaviour and readings might not be correct. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7182 a1c6a512-1295-4272-9138-f99709370657
2005-07-13Separated buffering stuff from pcm_playback to pcmbuf. Renamed someMiika Pekkarinen
function calls (audiobuffer -> pcmbuf etc.). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7131 a1c6a512-1295-4272-9138-f99709370657
2005-06-29Small copy/paste error..Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6934 a1c6a512-1295-4272-9138-f99709370657
2005-06-29Always use crossfade if it's enabled.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6933 a1c6a512-1295-4272-9138-f99709370657
2005-06-29Fixed slow track switching and track pre-buffering. Fixed rockboyMiika Pekkarinen
crash while audio is playing. Some buffering adjustments made. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6930 a1c6a512-1295-4272-9138-f99709370657
2005-06-27Replaced some size_t with longs. That might solve some problems. FixedMiika Pekkarinen
also problem where codec buffer length indicator goes negative. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6898 a1c6a512-1295-4272-9138-f99709370657
2005-06-26Initial DSP implementation. DSP supports resampling audio stream fromMiika Pekkarinen
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-20Crossfade fixes.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6778 a1c6a512-1295-4272-9138-f99709370657
2005-06-18Iriver UDA1380 volume and balance handling is now done in sound.c, similar ↵Jens Arnold
to archos player; removed pcm_set_volume(). Implemented a dB-linear scale. Sorted & bumped plugin api. Removed audio test from the debug menu. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6741 a1c6a512-1295-4272-9138-f99709370657
2005-06-15Fixed the "last song bug".Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6725 a1c6a512-1295-4272-9138-f99709370657
2005-06-14Playlist changed are recognized correctly.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6711 a1c6a512-1295-4272-9138-f99709370657
2005-06-10Better handling for cpu_boost(). Small buffering fix.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6647 a1c6a512-1295-4272-9138-f99709370657
2005-06-09Added Crossfade setting for iRiverLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6636 a1c6a512-1295-4272-9138-f99709370657
2005-06-09Fixed forward next track bugs (still some pause issues though). AddedMiika Pekkarinen
experimental cross-fader. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6632 a1c6a512-1295-4272-9138-f99709370657
2005-06-07Fixed: Ogg Vorbis crashing, MP3 file seeking, USB mode and a littleMiika Pekkarinen
faster file buffering. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6591 a1c6a512-1295-4272-9138-f99709370657
2005-06-05First audio codec playback attempt by Miikka PekkarinenLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6574 a1c6a512-1295-4272-9138-f99709370657
2005-04-14New API for buffered PCM playbackLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6284 a1c6a512-1295-4272-9138-f99709370657
2005-03-31iRiver: Major PCM DMA code cleanup, added pcm_init() and pcm_play_pause()Linus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6234 a1c6a512-1295-4272-9138-f99709370657
2005-03-28Sound api improvements, rockboy sound, contributed by xshock.Michiel Van Der Kolk
Playback of sound currently only works in boost mode, needs fixing. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6226 a1c6a512-1295-4272-9138-f99709370657
2005-03-18PCM playback for iRiverLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6210 a1c6a512-1295-4272-9138-f99709370657