summaryrefslogtreecommitdiff
path: root/firmware/export/audio.h (follow)
Commit message (Collapse)AuthorAge
* Move c/h files implementing/defining standard library stuff into a new libc ↵Thomas Martitz2010-05-06
| | | | | | | | directory, also standard'ify some parts of the code base (almost entirely #include fixes). This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
* Move audio_peek_track declaration from skin_display.c to audio.hBertrik Sikken2010-04-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25670 a1c6a512-1295-4272-9138-f99709370657
* FS#10756 - Free unused init codeThomas Martitz2010-03-03
| | | | | | | Introduce a new .init section for initialisation code, so that it can be copied to an area which is later overwritten before calling. The stack/bss can then overwrite that code, effectively freeing the code size that the initialisation routines need. Gives a few kB ram usage back. Only implemented for PP and as3525 so far. More targets could be added, as well as more functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25013 a1c6a512-1295-4272-9138-f99709370657
* mpeg.h/c cleanupJeffrey Goode2009-11-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23652 a1c6a512-1295-4272-9138-f99709370657
* Cleanup audio.h, related functionsJeffrey Goode2009-11-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23651 a1c6a512-1295-4272-9138-f99709370657
* FS9795 - some playback cleanup. Jonathan Gordon2009-04-06
| | | | | | | | | | | * Use events to notify things when the track has changed instead of the nasty has_track_changed() * Event for when the mp3entry for the next track is avilable (which allows alot more tags to be static which means less redrawing in the WPS) * virtually guarentee that the mp3entry sturct returned by audio_current/next_track() is going to be valid for the duration of the current track. The only time it wont be now is during the time between the codec finishing the previous track and the next track actually starting (~2s), but this is not an issue as long as it is called again when the TRACK_CHANGED event happens (or just use the pointer that gives) It is still possible to confuse the WPS with the next tracks id3 info being displayed but this should fix itself up faster than it used to (and be harder to do) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20633 a1c6a512-1295-4272-9138-f99709370657
* Keyclick fixup take two. It is only 88 samples (2msec) long so keep a small ↵Michael Sevakis2008-12-13
| | | | | | static buffer around for beeps less than or equal to keyclick duration. This way it operates no matter the buffer state and still won't interfere with alternate PCM operations like recording or plugin playback. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19415 a1c6a512-1295-4272-9138-f99709370657
* PCM buffer beeping needs the audio buffer reset in order to work after ↵Michael Sevakis2008-12-13
| | | | | | operations that trash the buffer or keyclick won't be audible until playback is restarted. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19413 a1c6a512-1295-4272-9138-f99709370657
* Fix FS#8660-Recording hardlocks with keyclick enabled and FS#9388-keyclicks ↵Michael Sevakis2008-12-13
| | | | | | too late. Introduce audio_buffer_state to check whether PCM buffer is useable or disabled (trashed). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19411 a1c6a512-1295-4272-9138-f99709370657
* FS#9609 FM radio support for the Gigabeat S, seeking/scanning is not yet Nils Wallménius2008-12-09
| | | | | | | | | implemented but manual tuning works nicely. Thanks to Rafaël Carré, Bertrik Sikken and Robert Menes for suggestions and debugging help. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19372 a1c6a512-1295-4272-9138-f99709370657
* Moved pcm_record from firmware to apps. Cleaned up some. Now all code using ↵Björn Stenberg2008-10-14
| | | | | | struct mp3entry is in apps. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18807 a1c6a512-1295-4272-9138-f99709370657
* New recording setting to configure how mono recordings are made. Previously, ↵Peter D'Hoye2008-10-08
| | | | | | this was always L+R, which was kinda silly if your signal was on L only. This setting allows for L, R or L+R. SWCODEC only for now, to be added for HWCODEC (although that will only be L and L+R probably) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18745 a1c6a512-1295-4272-9138-f99709370657
* add HAVE_DISK_STORAGE, and use that instead of HAVE_FLASH_STORAGE when ↵Frank Gevaerts2008-10-07
| | | | | | checking for an actual disk (i.e. related to spindown, skipping,...) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18735 a1c6a512-1295-4272-9138-f99709370657
* Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg2008-06-28
| | | | | | | | | 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
* Revert my earlier const madness, we'll keep the parameter lists simple.Steve Bavin2008-03-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16863 a1c6a512-1295-4272-9138-f99709370657
* The const police raid playback.c, should be no change to behaviour.Steve Bavin2008-03-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16860 a1c6a512-1295-4272-9138-f99709370657
* Make sure initial menu item is voiced at startup. Voice thread must wait for ↵Michael Sevakis2007-11-19
| | | | | | the audio thread to finish initializing hardware. A known issue at speex commit time (perhaps only by myself ;). The behavioral refinement time begins. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15682 a1c6a512-1295-4272-9138-f99709370657
* Make speex the new voice format for SWCODEC targets (non-Archos). Remove ↵Michael Sevakis2007-11-18
| | | | | | codec swapping and build speex voice decoding directly into the core binary. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
* Album art support. Based on FS#3045, but heavily modified to adapt to MoB ↵Nicolas Pennequin2007-11-11
| | | | | | | | | | | | and for cleanness. The cover pictures are loaded from external bitmaps. JPEG and embedded art are not supported. The pictures will only be drawn on the main display. There is no resizing but it is possible to specify the WPS bitmap size in the bitmap names (e.g. cover.100x100.bmp). The bitmaps are stored in the main buffer and read directly from there. Currently, duplicate bitmaps will simply be present several times in the buffer, but this will be improved. To enable for a target, #define HAVE_ALBUMART in its config file. For more information, see the wiki page: http://www.rockbox.org/wiki/AlbumArt. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15572 a1c6a512-1295-4272-9138-f99709370657
* Unify PCM interface just above the hardware driver level for all targets ↵Michael Sevakis2007-10-06
| | | | | | 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
* Even more optimizing for the recording name change...Peter D'Hoye2007-08-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14148 a1c6a512-1295-4272-9138-f99709370657
* Disable 'Disk spindown' and 'Anti skip buffer' settings and some related ↵Nils Wallménius2007-08-01
| | | | | | stuff for flash storage targets as they make no sense git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14110 a1c6a512-1295-4272-9138-f99709370657
* Straighten out some audio path APIs and misc. audio stuff. Having recording ↵Michael Sevakis2007-06-08
| | | | | | is not a prerequisite to having input/output source selection which is probably most useful when adding a audio input features like FM to a new port without forcing recording to be implemented first. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13599 a1c6a512-1295-4272-9138-f99709370657
* e200: Add recording. Just from MIC right now and FM integration will happen ↵Michael Sevakis2007-06-05
| | | | | | soon. Most every bit of weirdness is nescessary and no problems seem to exist that the retailos doesn't exhibit too (namely noise when LCD is on when recording from MIC). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13557 a1c6a512-1295-4272-9138-f99709370657
* Use bitmasks to define which inputs are available. Makes it easier to remove ↵Michael Sevakis2007-05-20
| | | | | | old assumptions of which are available. Inspired by e200 being unique in having FM Radio and Mic but no Line. Doesn't remove the assumption that Mic is available or that one of Mic and/or Line is available just to avoid excessive #ifdef'ing until needed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13448 a1c6a512-1295-4272-9138-f99709370657
* Fix remaining CONFIG_TUNER checks.Jens Arnold2007-02-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12385 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC recording: More cleanup of stuff after queue additions and audio ↵Michael Sevakis2006-12-17
| | | | | | driver unification. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11783 a1c6a512-1295-4272-9138-f99709370657
* Place all recording functionality on pcmrec thread to serialize all ↵Michael Sevakis2006-12-10
| | | | | | recording operations. Button mash problems should be ruled out of pcm_record.c. Add additional lightweight checks by default and display any warnings that occurred during recording in first line of recording screen when they occur by blinking back and forth from warning display to normal line (Warning: <hex bitmask>). Warnings are cleared when beginning a new recording so write the number down if you see it and file a report. Add heavier checks when PCMREC_PARANOID is defined in the player config header (encoders and pcm_record must be aware of the define since it changes the chunk header format). These checks are mainly concerned with things that may cause skipping but also add unwanted overhead for normal operation. Best used with logf enabled. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11705 a1c6a512-1295-4272-9138-f99709370657
* iRiver/iAudio: Added audio_set_recording gain and sound_default to plugin ↵Michael Sevakis2006-11-23
| | | | | | API. Simplified plugin recording by target/-ing some audio functions. UDA1380 records with WSPLL as a result. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11577 a1c6a512-1295-4272-9138-f99709370657
* Changed #ifdef USE_IRAM to #ifdef IRAM_STEAL. Also want to check if results ↵Michael Sevakis2006-11-18
| | | | | | are the same again since another person also built a red one successfully. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11545 a1c6a512-1295-4272-9138-f99709370657
* SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines ↵Michael Sevakis2006-11-18
| | | | | | two macros for declaring and initializing IRAM. Plugins should use these instead. See mp3_encoder, doom, etc. for details. Further tweaks in buffer restoration after other use. Hiding of some interfaces that should only be used by buffer management. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11544 a1c6a512-1295-4272-9138-f99709370657
* H100/General: HAL for S/PDIF and refinement/bufixes in optical output ↵Michael Sevakis2006-11-13
| | | | | | powering/source selection. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11523 a1c6a512-1295-4272-9138-f99709370657
* Big Patch adds primarily: Samplerate and format selection to recording for ↵Michael Sevakis2006-11-06
| | | | | | 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
* Patch #5166 by Robert Keevil - Last.fm loggingLinus Nielsen Feltzing2006-10-19
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11269 a1c6a512-1295-4272-9138-f99709370657
* Minor simplification #2; replace unneeded variable filebufused with a macroSteve Bavin2006-10-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11201 a1c6a512-1295-4272-9138-f99709370657
* Added FS#2939 Encoder Codec Interface + Codecs by Antonius Hellmann with ↵Michael Sevakis2006-08-28
| | | | | | additional FM Recording support and my modifications git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10789 a1c6a512-1295-4272-9138-f99709370657
* Iriver: Moved the handling of the UDA1380 split gain (analog preamp + ↵Jens Arnold2006-05-14
| | | | | | decimator gain) into the UDA driver. * All: Settings structure sorted & cleaned up. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9927 a1c6a512-1295-4272-9138-f99709370657
* Optical S/PDIF recording and monitoring for Iriver H1x0. Removed unsupported ↵Thom Johansen2006-05-11
| | | | | | recording options on Iriver. Sample rate displayed in recording screen reflects the real S/PDIF sample rate when doing S/PDIF recording. Testing would be appreciated. Thanks to Jens Arnold for fixing the DMA hang issue. Will reset settings! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9916 a1c6a512-1295-4272-9138-f99709370657
* Recording buffer offset must be passed on to the firmware calls, not the ↵Peter D'Hoye2006-04-30
| | | | | | other way around. Should fix yellow builds. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9842 a1c6a512-1295-4272-9138-f99709370657
* Fix bad rebuffering bug, and kill the track_count variableBrandon Low2006-04-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9571 a1c6a512-1295-4272-9138-f99709370657
* Fix seeking on swcodec, but probably break some cases of skipping. Another ↵Brandon Low2006-04-06
| | | | | | important rework here, buffer management is serialized along with most other operations on the audio thread. This has some minor performance issues on ipod that can lead to audio skips during buffer fill as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9529 a1c6a512-1295-4272-9138-f99709370657
* More work on swcodec. No significant pcmbuf functions are called from the ↵Brandon Low2006-04-05
| | | | | | audio thread now. Do not be surprised if seek or skip behavior gets weird after this, but it Works for Me (TM), and is a significant step in the right direction. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9510 a1c6a512-1295-4272-9138-f99709370657
* More 64bit simulator fixes, coinciding with the long policy this time.Jens Arnold2006-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8890 a1c6a512-1295-4272-9138-f99709370657
* Patch #1403437 by Peter D'Hoye & Martin Scarratt: Recording gain.Hristo Kovachev2006-02-08
| | | | | | | | | | | | | | | | | | | | Changes: ***1. all platforms: 1.1 corrects gain display bug; 1.2 allows combined setting of stereo gain without an extra line on the display; 2. iRiver H1xx and H3xx specific: 2.1 correctly named the decimator variables, they were called 'gain'; 2.2 splitted decimator gain settings for mic and line-in so that they are saved separately; 2.3 added combined analog and decimator gain setting giving a smooth gain range with the best analog/decimator gain combination git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8627 a1c6a512-1295-4272-9138-f99709370657
* Add seamless seeking support, this is needed for AB-repeat mode on swcodec.Brandon Low2006-01-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8408 a1c6a512-1295-4272-9138-f99709370657
* Removed monitor option from audio_set_recording_options and the global ↵Andy2005-11-12
| | | | | | setting rec_monitor. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7821 a1c6a512-1295-4272-9138-f99709370657
* iRiver: Initial support for wav-recording in recording menu. Supports ↵Andy2005-11-12
| | | | | | mic/line-in (and radio), monitor mode, time-splitting (and byte-splitting), pause/resume etc. Things todo: Prerecording, peakmeter (should be simple), frequency other than 44.1 kHz, etc.. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7818 a1c6a512-1295-4272-9138-f99709370657
* Patch #1105616 by Ray Lambert - A-B Repeat for Archos studio/recorder, still ↵Linus Nielsen Feltzing2005-08-21
| | | | | | not 100% complete, but I wanted to commit it before the 2.5 feature freeze git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7380 a1c6a512-1295-4272-9138-f99709370657
* It's now possible to select the crossfading mode: "Off, Crossfade,Miika Pekkarinen2005-07-22
| | | | | | | Mix". If set to mix, no fading is applied but tracks are mixed up. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7224 a1c6a512-1295-4272-9138-f99709370657
* Forgot to commit these files.Miika Pekkarinen2005-07-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7211 a1c6a512-1295-4272-9138-f99709370657