summaryrefslogtreecommitdiffstats
path: root/firmware/export/pcm_playback.h
AgeCommit message (Collapse)AuthorFilesLines
2007-10-06Unify PCM interface just above the hardware driver level for all targets ↵Michael Sevakis1-65/+0
including the sims. Perform lockout of audio callback when changing states. Weird new playback or recording trouble? Check before and after this revision first though things seem quite sound. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15006 a1c6a512-1295-4272-9138-f99709370657
2007-03-11Audio Init: Just can't stand that heirarchy. Add one level of abstraction. ↵Michael Sevakis1-0/+1
Might come in handy anyhow. Use sound.h instead of the conditional includes for audio hardware headers. If someone doesn't like that, yell at my evil twin. :) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12718 a1c6a512-1295-4272-9138-f99709370657
2007-03-05More catching up on old work. Refine audio interface setup on Coldfire. Stop ↵Michael Sevakis1-1/+1
the funky glitching on the iAudio stuff when starting recording esp. at 88.2kHz. (probably due to the bidi interface). iRivers don't seem to care what you do. TLV320 still seems to have a little trouble selecting it's filters correctly for 88.2kHz or it could be some odd phasing effect. Get rid of the horrible reset parameter in pcm_apply_settings as it can decide for itself. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12618 a1c6a512-1295-4272-9138-f99709370657
2006-12-06Small change to PCM recording API for low latency effects. Latency can be as ↵Michael Sevakis1-0/+1
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 Sevakis1-0/+13
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 Sevakis1-2/+14
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 Low1-2/+3
* 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 Pekkarinen1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8416 a1c6a512-1295-4272-9138-f99709370657
2005-07-22More accurate playback position calculation.Miika Pekkarinen1-0/+1
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 Pekkarinen1-0/+2
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 Pekkarinen1-28/+2
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 Pekkarinen1-1/+0
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 Pekkarinen1-0/+1
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 Pekkarinen1-0/+2
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 Pekkarinen1-3/+3
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 Pekkarinen1-1/+7
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 Pekkarinen1-1/+1
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 Arnold1-1/+0
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 Pekkarinen1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6725 a1c6a512-1295-4272-9138-f99709370657
2005-06-14Playlist changed are recognized correctly.Miika Pekkarinen1-1/+1
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 Pekkarinen1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6647 a1c6a512-1295-4272-9138-f99709370657
2005-06-09Added Crossfade setting for iRiverLinus Nielsen Feltzing1-0/+1
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 Pekkarinen1-0/+1
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 Pekkarinen1-0/+1
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 Feltzing1-0/+6
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6574 a1c6a512-1295-4272-9138-f99709370657
2005-04-14New API for buffered PCM playbackLinus Nielsen Feltzing1-0/+10
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 Feltzing1-0/+2
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 Kolk1-0/+2
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 Feltzing1-0/+27
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6210 a1c6a512-1295-4272-9138-f99709370657