summaryrefslogtreecommitdiff
path: root/apps/playback.h
AgeCommit message (Collapse)Author
2009-01-05Have the codec thread do callbacks instead of messing with the stack which ↵Michael Sevakis
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
2008-12-25Commit FS#8624 by Linus Nielsen, Ryan Press, Craig Elliott, and Kenderes ↵Michael Giacomelli
Tamas. Adds preliminary support for numerous accessories that use the ipod serial port on the dock connector. See IpodAccessories for a list of tested devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19585 a1c6a512-1295-4272-9138-f99709370657
2008-07-15Accept FS#8918: Voice multiple thumbnails and talk race fixes.Stéphane Doyon
-Allows loading multiple thumbnails back-to-back in the one thumbnail buffer. -Mutex to prevent race conditions with talk queue indices and thumbnail buffer state. -Synchronous shutup. -Shutup is a noop if no voice is queued. -mp3_play_stop() does nothing until the audio thread is ready. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18046 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg
later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-05-04Accept FS#6188: study mode.Stéphane Doyon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17355 a1c6a512-1295-4272-9138-f99709370657
2008-04-28Cleaned up playblack.h header file and usage of it.Bertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17276 a1c6a512-1295-4272-9138-f99709370657
2008-04-27Updated use of events.h header file.Bertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17267 a1c6a512-1295-4272-9138-f99709370657
2008-03-28Revert my earlier const madness, we'll keep the parameter lists simple.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16863 a1c6a512-1295-4272-9138-f99709370657
2008-03-28The const police raid playback.c, should be no change to behaviour.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16860 a1c6a512-1295-4272-9138-f99709370657
2008-03-20CODEC_IDX_{AUDIO,VOICE} are already defined in apps/dsp.hAntoine Cellerier
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16725 a1c6a512-1295-4272-9138-f99709370657
2008-03-16Implement the playback event handling as a system-wide multi-purpose event ↵Miika Pekkarinen
system. Unified mpeg.c and playback.c audio event handling. Converted ata_idle_notify to use the new event handling system also. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16682 a1c6a512-1295-4272-9138-f99709370657
2008-03-08Fixed yellow.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16551 a1c6a512-1295-4272-9138-f99709370657
2008-03-07Rewritten playback event handling. Should fix runtime statistics gathering.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16546 a1c6a512-1295-4272-9138-f99709370657
2007-10-31Accept FS#8053 by Bertrik Sikken: playback.c and mpeg.c simplification by ↵Nicolas Pennequin
removal of last_track argument in track_(un)buffer callback. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15384 a1c6a512-1295-4272-9138-f99709370657
2007-10-25Finally commit Metadata on Buffer!Nicolas Pennequin
buffering.c and buffering.h implement the new buffering API. playback.c is translated to that API. For more information about the whole concept, see http://www.rockbox.org/wiki/MetadataOnBuffer. There should be no major visible changes, but most existing bugs remain (though fixing them should be easier now that playback.c is a bit less complex) and there probably will be new ones. Please report any problem! Next step is to adapt cuesheet support, which is partly disabled here, and of course fix as much bugs as possible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15306 a1c6a512-1295-4272-9138-f99709370657
2007-10-02Thanks to Nico_P, struct track_info can now be internal to playback.cSteve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14947 a1c6a512-1295-4272-9138-f99709370657
2007-08-06Accept FS#6159 'Add voice to roughly 100 splash screens and yes-no menus' by ↵Nils Wallménius
Stephane Doyon with some minor tweaks by me. Rerun 'configure' and do a 'make clean' before rebuilding your voice files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14213 a1c6a512-1295-4272-9138-f99709370657
2007-05-07Revert the addition of the steal_codec_stack function. Replace by accessing ↵Dave Chapman
the threads structure to grab the codec stack. Maybe a better solution exists. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13349 a1c6a512-1295-4272-9138-f99709370657
2007-05-07Use a separate thread in test_codec, with the same (IRAM) stack as the main ↵Dave Chapman
codec thread. Add a function to the plugin API to steal the codec thread, which test_codec copies and then restores. Now libmad can be benchmarked. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13347 a1c6a512-1295-4272-9138-f99709370657
2007-05-07Initial version of a test_codec plugin (viewer). This loads the audio file ↵Dave Chapman
into the audio buffer and decodes it as fast as it can via a locally implemented version of the codec API. Intended for use when optimising codecs - so isn't built by default. Remember to add it to both plugins/SOURCES and viewers.config to enable it. Currently the codec is run in the main thread which means mpa.codec doesn't work - it requires more stack than is available on the main thread. The solution will be to create a new thread in the plugin which steals the main codec thread's IRAM stack, but that's not done yet. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13345 a1c6a512-1295-4272-9138-f99709370657
2007-05-07Minor header file cleanup - try and include the minimal number of files, and ↵Dave Chapman
only where they are needed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13344 a1c6a512-1295-4272-9138-f99709370657
2007-03-19SWCODEC: Get rid of extra swap buffer and get back 512K of RAM or 100K if ↵Michael Sevakis
the players RAM is <= 1MB. Make any needed changes to things to stabilize and facilitate this including removing flattening out initialization. Comment some things heavily. Fix a few logfs I didn't want to see the compiler complaining about. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12843 a1c6a512-1295-4272-9138-f99709370657
2007-03-11Reenable aynchronous audio init stage. Really just single stage with ↵Michael Sevakis
aynchronous enabling of outputs. Keeps audio_init last so prior init steps can use the audiobuffer in any desired way. Audio will be fully initialized by the time the UI is entered. Playback of voice or audio will be delayed properly until audio hardware is ready. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12714 a1c6a512-1295-4272-9138-f99709370657
2006-10-25A bit more voice simplification/MAS fixage (FS#6241). Also clear any ↵Steve Bavin
buffered voice when playback is started. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11334 a1c6a512-1295-4272-9138-f99709370657
2006-10-25Only flush PCM buffered voice data when explicitly told to. Patch by ↵Steve Bavin
Stephane Doyen. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11331 a1c6a512-1295-4272-9138-f99709370657
2006-08-30Applied patch #5879 by Andrew Cupper: Fix backward seeking bug.Magnus Holmgren
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10807 a1c6a512-1295-4272-9138-f99709370657
2006-08-28Added FS#2939 Encoder Codec Interface + Codecs by Antonius Hellmann with ↵Michael Sevakis
additional FM Recording support and my modifications git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10789 a1c6a512-1295-4272-9138-f99709370657
2006-08-15Finally, the new button action system is here, thanks to Jonathan Gordon. ↵Linus Nielsen Feltzing
Some button mappings have changed and other things may break. Comments should go to the forum, http://forums.rockbox.org/index.php?topic=5829.0 or the mailing list. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10582 a1c6a512-1295-4272-9138-f99709370657
2006-08-13Memory size checks in .c/.h files should use MEM, not MEMORYSIZEDave Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10557 a1c6a512-1295-4272-9138-f99709370657
2006-08-12Various lower limits and sizes for targets with 1MB of RAM (Iriver iFP7xx).Tomasz Malesinski
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10556 a1c6a512-1295-4272-9138-f99709370657
2006-07-31Checked the rebuffering code. Might fix buffers desyncing and a systemMiika Pekkarinen
crash. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10373 a1c6a512-1295-4272-9138-f99709370657
2006-07-29Define MAX_TRACK_MAX and use it to keep the ring track structureMiika Pekkarinen
inside boundaries. Cleaned identation also. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10361 a1c6a512-1295-4272-9138-f99709370657
2006-04-13Ensure that the buffer doesn't get out of sync on rebuffer track changes. ↵Brandon Low
Remove the concept of pcmuf_boost_mode as it doesn't seem necessary, and adds an unnecessary way for the CPU to stay boosted. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9646 a1c6a512-1295-4272-9138-f99709370657
2006-04-13Add a logf, remove an unused parameter, and an unused member of the ↵Brandon Low
track_info struct, ensure that we unboos on stop even if buffering, make a function take a parameter instead of using a global git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9644 a1c6a512-1295-4272-9138-f99709370657
2006-04-11Rework track skipping. Full playback stop is no longer involved in track ↵Brandon Low
skipping. Further simplification of the play related functions can be achieved with this in place, but that's for later. Known skip related bug, high pitched noise sometimes, otherwise stuff is better git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9601 a1c6a512-1295-4272-9138-f99709370657
2006-04-09Fix another nasty rebuffering bug, and ensure that buffer and unbuffer ↵Brandon Low
events are triggered correctly. Also remove another unused varialbe track_info->filepos git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9582 a1c6a512-1295-4272-9138-f99709370657
2006-03-24Convert playback.c to use unsigned byte counters, and _minor_ refactoring of ↵Brandon Low
buffer callbacks git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9227 a1c6a512-1295-4272-9138-f99709370657
2006-01-27iriver: Init audio on background.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8465 a1c6a512-1295-4272-9138-f99709370657
2005-11-28Enabled playback speed adjustment support for H1x0. Modified the resampler ↵Thom Johansen
to do both channels in one pass. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8099 a1c6a512-1295-4272-9138-f99709370657
2005-11-13removed set audio status method - will be using different approachAnton Oleynikov
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7844 a1c6a512-1295-4272-9138-f99709370657
2005-11-13iRiver: fix for audio kept on while playing a file + new function to set ↵Anton Oleynikov
audio status (to be used later) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7838 a1c6a512-1295-4272-9138-f99709370657
2005-11-10iRiver: more robust folder skip routines + folder navigation on main unit viaAnton Oleynikov
either PLAY+LEFT/RIGHT or short then long LEFT/RIGHT git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7810 a1c6a512-1295-4272-9138-f99709370657
2005-09-21DSP_* constants moved from playback.h to dsp.h.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7529 a1c6a512-1295-4272-9138-f99709370657
2005-08-20Initial voice ui support for software codec platforms. Added also aMiika Pekkarinen
beep when changing tracks. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7360 a1c6a512-1295-4272-9138-f99709370657
2005-08-18Preparation for runtimedb hookup on archos: don't pass software playback ↵Jens Arnold
system specific structures. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7345 a1c6a512-1295-4272-9138-f99709370657
2005-08-10iriver: added a DSP_SWITCH_FREQUENCY config, for on-the-fly sample frequency ↵Linus Nielsen Feltzing
changes git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7298 a1c6a512-1295-4272-9138-f99709370657
2005-07-24ReplayGain support for Ogg Vorbis files (also called VorbisGain) added.Magnus Holmgren
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-05Applied patch "[ 1232957 ] MP3 metadata fixes for software codec".Miika Pekkarinen
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-03(in theory) more efficient (battery wise) runtime database code.Michiel Van Der Kolk
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6999 a1c6a512-1295-4272-9138-f99709370657
2005-07-03Updated the track_unbuffer event callback.Miika Pekkarinen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6995 a1c6a512-1295-4272-9138-f99709370657