summaryrefslogtreecommitdiff
path: root/apps/talk.h
AgeCommit message (Collapse)Author
2013-12-23playback,talk: Share audiobuffer via core_alloc_maximum().Thomas Martitz
This fixes the radioart crash that was the result of buffering.c working on a freed buffer at the same time as buflib (radioart uses buffering.c for the images). With this change the buffer is owned by buflib exclusively so this cannot happen. As a result, audio_get_buffer() doesn't exist anymore. Callers should call core_alloc_maximum() directly. This buffer needs to be protected as usual against movement if necessary (previously it was not protected at all which cased the radioart crash), To get most of it they can adjust the willingness of the talk engine to give its buffer away (at the expense of disabling voice interface) with the new talk_buffer_set_policy() function. Change-Id: I52123012208d04967876a304451d634e2bef3a33
2011-12-15Add conditionals for functions only needed on SWCODEC targets.Boris Gjenero
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31296 a1c6a512-1295-4272-9138-f99709370657
2011-08-14GSoC/Buflib: Replace all direct accesses to audiobuf with buffer API functions.Thomas Martitz
Namely, introduce buffer_get_buffer() and buffer_release_buffer(). buffer_get_buffer() aquires all available and grabs a lock, attempting to call buffer_alloc() or buffer_get_buffer() while this lock is locked will cause a panicf() (doesn't actually happen, but is for debugging purpose). buffer_release_buffer() unlocks that lock and can additionally increment the audiobuf buffer to make an allocation. Pass 0 to only unlock if buffer was used temporarily only. buffer_available() is a replacement function to query audiobuflen, i.e. what's left in the buffer. Buffer init is moved up in the init chain and handles ipodvideo64mb internally. Further changes happened to mp3data.c and talk.c as to not call the above API functions, but get the buffer from callers. The caller is the audio system which has the buffer lock while mp3data.c and talk mess with the buffer. mpeg.c now implements some buffer related functions of playback.h, especially audio_get_buffer(), allowing to reduce #ifdef hell a tiny bit. audiobuf and audiobufend are local to buffer.c now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30308 a1c6a512-1295-4272-9138-f99709370657
2011-02-20FS#11939: Simplify talk_time_unit().Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29347 a1c6a512-1295-4272-9138-f99709370657
2011-02-15Undo unwanted commit r29310.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29311 a1c6a512-1295-4272-9138-f99709370657
2011-02-15All AAC-HE files will double the frame sample count, not only AAC-HE files ↵Andree Buschmann
with SBR upsampling. This change fixes issues with some m4a files reported in the forums. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29310 a1c6a512-1295-4272-9138-f99709370657
2008-09-29Delete unused function, const police, minor style policeNils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18664 a1c6a512-1295-4272-9138-f99709370657
2008-07-15talk.c helper functions to voice a filename, in a more generic wayStéphane Doyon
than from tree.c Voice a file or dir's thumbnail from path components, or spell last path component. Ability to prefix the thumbnail or spelling with some talk ids. This is the talk_file patch from FS#6323, just refactored a bit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18048 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-05Convert the whole codebase to UTF-8, except docs/COMMITTERS and ↵Nicolas Pennequin
tools/creative.c, which need checking. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-04-20Fix speaking of decimal values to work when decimals != 1, spell the ↵Nils Wallménius
fractional part instead of speaking it like a number, break out a part of output_dyn_value into a separate function and use it git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17185 a1c6a512-1295-4272-9138-f99709370657
2008-04-19Introduce support for passing decimal numbers in talk ids and speak them, ↵Nils Wallménius
use in the settings menu to fix FS#7622 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17168 a1c6a512-1295-4272-9138-f99709370657
2008-03-25Code police raid on the settings code, consting and putting headers ↵Steve Bavin
alongside their implementation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16798 a1c6a512-1295-4272-9138-f99709370657
2007-11-20Make id's created with the TALK_ID macro work in 64 bit simsNils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15723 a1c6a512-1295-4272-9138-f99709370657
2007-11-18Make speex the new voice format for SWCODEC targets (non-Archos). Remove ↵Michael Sevakis
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
2007-11-15Actually check if a voice file has the correct version before using itNils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15629 a1c6a512-1295-4272-9138-f99709370657
2007-11-07fix redJonathan Gordon
fix Björn's name in the (c) fix FS#8105 - backing out of the submenus in the context menus shuoldnt leave the context menu completly (expect playlist which possibly makes sense?) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15513 a1c6a512-1295-4272-9138-f99709370657
2007-11-07compile talk.c on hwcodec sim. it wont actually talk thoughJonathan Gordon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15512 a1c6a512-1295-4272-9138-f99709370657
2007-11-03Accept FS#7798: Voice unit for time Stéphane Doyon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15416 a1c6a512-1295-4272-9138-f99709370657
2007-10-24Complete info screen voicing; now consistent with displayed screenSteve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15284 a1c6a512-1295-4272-9138-f99709370657
2007-10-19FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not ↵Steve Bavin
just menus), hopefully save some space. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-10Export shutup() function from talk.c.Stéphane Doyon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15061 a1c6a512-1295-4272-9138-f99709370657
2007-10-07Accept FS#7897 with some changes by me. moves the code to talk time/date out ↵Jonathan Gordon
of main_menu.c to make it hopefully more useful. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15011 a1c6a512-1295-4272-9138-f99709370657
2007-08-29Fix flushing of voice during playback, patch in FS#6239 by Stephane Doyon ↵Nils Wallménius
and Daniel Dalton git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14517 a1c6a512-1295-4272-9138-f99709370657
2007-08-18Make peakmeter release setting work in units per tick (was units per read), ↵Peter D'Hoye
add the unit and make it voiced. Make old leftover in lang file deprecated git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14390 a1c6a512-1295-4272-9138-f99709370657
2007-08-06Fix red archos sims and make some minor cleanupNils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14216 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-06-11..and add a couple of comments.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13617 a1c6a512-1295-4272-9138-f99709370657
2007-06-11When recording, disable voice menus without actually modifying user ↵Steve Bavin
settings. Patch FS#7272, fixes bug FS #6163 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13615 a1c6a512-1295-4272-9138-f99709370657
2006-12-25Next round of static'ing and related fixes.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11836 a1c6a512-1295-4272-9138-f99709370657
2006-11-28SWCODEC: Audio-related threads must be free of further tasks before ↵Michael Sevakis
returning buffers. Cleanup declarations of related functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11618 a1c6a512-1295-4272-9138-f99709370657
2006-11-18SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines ↵Michael Sevakis
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
2006-09-26Fixed voice units in recording quality and filesplit by size options.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11063 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-15Patch #5766 by Steve Bavin - Fix for various voice related crashesLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10590 a1c6a512-1295-4272-9138-f99709370657
2006-07-22Added options to timesplit recording feature (now renamed filesplit). Choose ↵Martin Scarratt
to split file by either time or filesize. Also have the option to either start a new file or stop recording at split point. Bumped config version so save your settings before you update your build. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10285 a1c6a512-1295-4272-9138-f99709370657
2006-04-01Thorough .lang rework: Removed all deprecated strings, combined string which ↵Jens Arnold
were only split because long ago we had no splash(), sorted strings into logical groups to ease the transition to langv2. Bunped binary .lng version. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9398 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-02-12long policyJean-Philippe Bernardy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5929 a1c6a512-1295-4272-9138-f99709370657
2004-10-21Improvement for talking filenames: While loading the directory, already ↵Jörg Hohensohn
cache for which files are clips available. This avoids unsuccessful spinups while browsing. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5317 a1c6a512-1295-4272-9138-f99709370657
2004-10-06patch #978765 by Carsten Tschach, new option for voice filenames: every file ↵Jörg Hohensohn
may have an optional .talk companion, with a filename clip. While at it, I removed the "on enter" directory talking, nobody used it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5194 a1c6a512-1295-4272-9138-f99709370657
2004-08-18 Const policed pointer arguments to functions, part 3Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4999 a1c6a512-1295-4272-9138-f99709370657
2004-08-01More const policeing step 2Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4980 a1c6a512-1295-4272-9138-f99709370657
2004-07-23New way of defining menus and options allows to declare them static const, ↵Jörg Hohensohn
which saves the code to runtime-assemble them. Rockbox just got 6 KB smaller. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4931 a1c6a512-1295-4272-9138-f99709370657
2004-04-04Voice UI: option to spell dirs/files, say (known) extension with file ↵Jörg Hohensohn
number, minor fixes git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4465 a1c6a512-1295-4272-9138-f99709370657
2004-03-27Step 4 of voice UI:Jörg Hohensohn
- "talkbox" functionality added, but yet without thumbnail recording - menu under "general settings" to configure voice - directories and folders can be voiced as a numbers git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4440 a1c6a512-1295-4272-9138-f99709370657
2004-03-20Overlooked to "voice" the set_int() function, this is why many numerical ↵Jörg Hohensohn
setting remained silent. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4416 a1c6a512-1295-4272-9138-f99709370657
2004-03-19Third step of the voice-UI: numerical settings are spoken (composed at ↵Jörg Hohensohn
runtime), needs new voicefont at the new location ".rockbox/langs/english.voice" git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4414 a1c6a512-1295-4272-9138-f99709370657