- d35a18f Buffering: Missed converting one case assuming const handle size. by Michael Sevakis · 7 years ago
- 786fbbf Buffering: Get rid of disabled code I have no intention of using by Michael Sevakis · 7 years ago
- dfff938 Get rid of useless playlist probing and fix up some data types. by Michael Sevakis · 7 years ago
- cd3ea08 Buffering: Remove statically-sized path buffer from handle struct by Michael Sevakis · 7 years ago
- 6ee3b6f buffering.c: Fix oopses with caching handle pointer by Michael Sevakis · 7 years ago
- 8be4074 Remove recursion from shrink_buffer() by Michael Sevakis · 7 years ago
- c1a01be Playback: Move internal track list onto buffer by Michael Sevakis · 7 years ago
- 65c6a14 Buffering: Switch to a more general handle caching type by Michael Sevakis · 7 years ago
- eefc7c7 Fix some problems with playback crashing by Michael Sevakis · 7 years ago
- 47d6d26 Cleanup unused function by Mihail Zenkov · 10 years ago
- 5b08f1a Remove I/O priority. It is harmful when used with the new file code. by Michael Sevakis · 10 years ago
- 8375b69 buffering.c: Patch up some straggling strlcpy warnings by Michael Sevakis · 11 years ago
- f9d60e1 Apparently some builds still need string.h in buffering.c by Michael Sevakis · 11 years ago
- 3661581 Buffering: Remove buf_ridx and buf_widx; these data are verbose. by Michael Sevakis · 11 years ago
- 9b990bd SWCODEC Audio: Add some INIT_ATTR's to get a few bytes back. by Michael Sevakis · 11 years ago
- 89b05af Fix whitespace by Michael Sevakis · 11 years ago
- 0ebfb93 Fix some lockup caused by handles not being initialized to < 0... by Michael Sevakis · 12 years ago
- 5a8f5b8 Provide a reasonable fix for FS#12093 - Playback hanging after codec/playback rework. Also, get rid of an impossible buffering case (BUF_USED is always less than buffer_len) and remove a buffering API that is not used anywhere and shouldn't be needed (plugin API has to be incompatible). by Michael Sevakis · 13 years ago
- c537d59 Commit FS#12069 - Playback rework - first stages. Gives as thorough as possible a treatment of codec management, track change and metadata logic as possible while maintaining fairly narrow focus and not rewriting everything all at once. Please see the rockbox-dev mail archive on 2011-04-25 (Playback engine rework) for a more thorough manifest of what was addressed. Plugins and codecs become incompatible. by Michael Sevakis · 13 years ago
- 4823b2b Buffering should truncate if read() returns 0 since it's not a valid return there as there should be data left to read. The loop wouldn't break until there was a message in the queue. I just experienced the case with crosslinked files and read stopped making progress, returning 0 each time it was called. by Michael Sevakis · 14 years ago
- 56dd75d Purge buffer and codec APIs existing exclusively in support of mpa.codec and fix that to not require them: buf_get_offset and ci.advance_buffer_loc. Sort APIs; everything must become incompatible. :( by Michael Sevakis · 14 years ago
- 7cac18f Use ringbuf_add in buffering when incrementing for initial allocation of non-wrapping data. The result of the shortcut would have been wrong if the handle used space exactly to the end of the buffer since buf_widx wouldn't have been properly wrapped to index 0. by Michael Sevakis · 14 years ago
- 05e180a Do the ridx > widx check where it should be done. A small rebuffering request must completely succeed before buffer can later shrink a handle or else it must reset the handle. by Michael Sevakis · 14 years ago
- 64647f3 buffering: Unusual cases when a handle ridx is briefly seeked ahead of widx need to be handled properly. In the best case, buffer useful would be wrong and in the worst, a packet audio move_handle delta would be quite incorrect, causing the handle to be moved too far. by Michael Sevakis · 14 years ago
- b15aa47 All kernel objects in code shared amongs targets (core, plugins, codecs) should be declared SHAREDBSS_ATTR as any core could potentially touch them even though they seem only to involve threads on one core. The exception is target code for particular CPUs where proper allocation is fixed. playlist.c was a little odd too-- use one mutex for the current playlist and a separate one for created playlists (still pondering the necessity of more than one). by Michael Sevakis · 14 years ago
- 8f14357 Code police buffering.c a little - use already predominant style - shorted lines over 80 cols. by Michael Sevakis · 14 years ago
- 6938255 Buffering: tin cup. Update threading structure and handle rebuffer more reliably on buffer thread using a single message send. by Michael Sevakis · 14 years ago
- 0fde635 Leave a gap between all handles because ringbuf_add_cross interprets equal pointers as empty, corruption guard check could fail to detect overlap if buffering ran right up to the next handle and it gets asked to buffer again before freeing the following handles (adds a byte on average). Storage alignment on handle reset must at times avoid alignment increments if after a stopped rebuffer, the handle was shrunk too close to the next one or the reading position in a prior rebuffer. by Michael Sevakis · 14 years ago
- efdf496 Needed to do a few more things to have r29291 correct. by Michael Sevakis · 14 years ago
- b474d0d Change add_handle to never have side effects on the buffer if it fails. It actually seems ok and I'm not sure if's responsible for anything, but it's more sane and keeps buffer_handle from regressing buf_widx later if buffering cur_handle. by Michael Sevakis · 14 years ago
- 50c727c Oops. Put back some changes to go only with others. by Michael Sevakis · 14 years ago
- 3c81bf0 Fix move_handle in buffering. Calculating wraps by buffer_len - 1 is incorrect. Switch handle movement to memmove calls exclusively. by Michael Sevakis · 14 years ago
- 88d91fa buffering: Don't execute move-handle-ony case if handle is of metadata type (atomic) and must be kept fully buffered. Manage handle corruption guard and handle buffering with one set of logic which allows reading of the maximum amount of data without overflow. 'FIXME' regarding handle corruption guard is really part of expected operation when thread that does the handle closing hasn't yet performed the delegated task before rebuffering starts. by Michael Sevakis · 14 years ago
- 86cab2e Disable buffering codecs (and code generally) on RaaA. by Thomas Martitz · 14 years ago
- f577a6a Embedded album art support in MP3/ID3v2 tags. by Thomas Martitz · 14 years ago
- 0d902c8 Buffering should align itself and not rely on buffering_reset parameters when storage alignment matters so that wrapped reads maintain alignment. by Michael Sevakis · 14 years ago
- 19ea72f buffering: Fix a case that could allow widx to fully wrap to ridx and overflow the ringbuffer. by Michael Sevakis · 14 years ago
- 6b476e7 Roll back unintentionally submitted file. by Andree Buschmann · 14 years ago
- 7345ac1 Submit FS#11918: Add 2 more codec types to be able to differentiate between AAC / AAC-HE and MPC SV7 / SV8. Additionally handle ATARI soundfiles in get_codec_base_type() as intended. by Andree Buschmann · 14 years ago
- 5d849a9 Clean up multiple definitions of RAM size. Remove -DMEM (make) and MEM (code), use the already defined MEMORYSIZE instead. by Andree Buschmann · 14 years ago
- 9c00d1a Fix FS#11586. Corrects rebuffering behaviour which did not allow to play several m4a files. Thanks to Magnus Holmgren. by Andree Buschmann · 14 years ago
- ed033c0 Oops, committed before finishing the removal of "#include "memory.h"" by Thomas Martitz · 14 years ago
- 5565a28 Remove some redundant #include's by Bertrik Sikken · 14 years ago
- 2494afc playback.c: don't assume cacheline size is 16 bytes by Rafaël Carré · 14 years ago
- 35e8b14 Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). by Thomas Martitz · 14 years ago
- 9c13b6e fix: when move_handle() is successful, the return value corrects valid type. by Yoshihisa Uchida · 14 years ago
- 7d5e0d7 FS#11263 - Radio Art support! %C and %Cl tags work in the radio screen and Base Skin when the radio is running. by Jonathan Gordon · 14 years ago
- 6ef04a7 Eliminate %zd tag in printf format strings, replace them with %ld. The %z formatter kept generating type mismatch warnings. by Jeffrey Goode · 14 years ago
- 759cfec Hopefully the last warning by Frank Gevaerts · 14 years ago
- ed56682 Fix various size_t related warnings and errors by Frank Gevaerts · 14 years ago
- 84cd376 cast ssize_t to long by Rafaël Carré · 14 years ago
- 50a6ca3 Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes). by Thomas Martitz · 14 years ago
- a8d1690 Make storage alignement use cache alignement macros by Rafaël Carré · 15 years ago
- abb3dd4 Use a helpfer function to avoid ugly casting and correct some data types (no functional change). by Thomas Martitz · 15 years ago
- 4c78eca Hopefully fix yellow now, I don't understand why %ld works for ssize_t but %lu not for size_t (and still no warnings on my system). by Thomas Martitz · 15 years ago
- 81187d8 Fix yellow caused by signedness. by Thomas Martitz · 15 years ago
- df79ac2 Fix FS#11004 - Buffering crashes when skipping back from end of song. by Thomas Martitz · 15 years ago
- b11c819 Convert RINGBUF_* macros to inline functions, saving binsize and improving type safety. by Thomas Martitz · 15 years ago
- c4e051b Align addresses in the buffering code to STORAGE_ALIGN_MASK if the target has one. by Torne Wuff · 15 years ago
- f620103 buffering.c: cosmetics by Rafaël Carré · 15 years ago
- ecd9bcf Commit FS#10605 - stable playback on low memory swcodec targets by Matthias Schneider. Should allow stable playback on targets with less then 4MB of RAM and sofware decoding such as the Sandisk Clip, c200v2, m200v4 and probably others. Fixes several problems in buffering that occured when the files to be buffered weren't much smaller then the ring buffer size. Fixes a bug where move_handle would corrupt the audio buffer when trying to copy a handle that both wrapped around the highest address in the ring buffer and overlapped part of the source and desination ranges. Moves the decision in playback.c about when to update the current track handle from audio_check_new_track to after the metadata has been buffered. Corrects several other minor pieces of code. I've logged about 100 hours without a crash on various players with this patch but its possible it breaks some combination of players and features I haven't thought to test. by Michael Giacomelli · 15 years ago
- 59dd433 Removed unneeded includes by Jeffrey Goode · 15 years ago
- f3944cb buffering: leave a comment to explain what is broken in the code and link to FS#10605 by Rafaël Carré · 15 years ago
- e9c1018 Rework albumart buffering internally to allow for mutliple albumart sizes. by Thomas Martitz · 15 years ago
- 3d4701a FS#10080 by Nils Wallménius · 15 years ago
- 00d6cfd Fix yellow when building with HAVE_ALBUMART, without HAVE_JPEG/HAVE_BMP_SCALING. by Andrew Mahone · 15 years ago
- 216424a Fix the lock contention stall during cover art load, by adding a separate modify mutex for the buffer. Operations that modify contents of a buffer entry can still proceed, but ones that add or remove buffer entries, or move them by Andrew Mahone · 15 years ago
- 20f76d6 Make JPEG and BMP scaler optional with HAVE_JPEG and HAVE_BMP_SCALING, both defined for all targets that have HAVE_ALBUMART. Disable JPEG in PictureFlow and pluginlib album art search with 32KiB plugin buffer until PictureFlow by Andrew Mahone · 15 years ago
- 54e6eb3 Search for, and load, JPEG album art files. by Andrew Mahone · 15 years ago
- 66cf3a3 Clean up some #includes by Bertrik Sikken · 16 years ago
- fcbfef8 Show the watermark in the "Show buffering thread" screen (in bytes). by Thomas Martitz · 16 years ago
- 0055f13 This should fix the occasional data aborts mainly in conjunction with AlbumArt on PP targets. See FS#9827 for details. by Antonius Hellmann · 16 years ago
- 6427d12 Calculate watermark from bitrate and harddisk spinup time. by Björn Stenberg · 16 years ago
- 9058620 Make scaler output truly pluggable, add an 8-bit greyscale output to by Andrew Mahone · 16 years ago
- 8cfbd36 Use cookies for thread identification instead of pointers directly which gives a buffer against wrongly identifying a thread when the slot is recycled (which has been nagging me for awhile). A slot gets 255 uses before it repeats. Everything gets incompatible so a full update is required. by Michael Sevakis · 16 years ago
- 781421a resize-on-load for bitmap files on 2bpp and color targets by Andrew Mahone · 16 years ago
- 3625be4 Fix FS#9319 and its (probably) duplicate, FS#9576. They both describe the boost remaining active after a change of the dynamic playlist, an issue added in r17109. by Nicolas Pennequin · 16 years ago
- 2f8a008 Apply FS#9500. This adds a storage_*() abstraction to replace ata_*(). To do that, it also introduces sd_*, nand_*, and mmc_*. by Frank Gevaerts · 16 years ago
- 71898e5 Accept FS#9480 - centralise and organise the events in the apps/ layer. by Jonathan Gordon · 16 years ago
- f397c25 Fix a possible deadlock if the album art loading fails by Jonathan Gordon · 16 years ago
- cf36957 Add handle values to the buffering LOGFQUEUE messages for easier debugging. by Nicolas Pennequin · 16 years ago
- 929d5e9 Fix FS#9137 and FS#8194 (the end of a track is cut off after rebuffering): the cause was a confusion between regular subtraction and subtraction in a ring-buffer. by Nicolas Pennequin · 16 years ago
- 7c84ede Hopefully fix FS #9153, as well as another bug (in fill_buffer) that could cause problems when rebuffering. by Magnus Holmgren · 16 years ago
- a2191b9 Fix FS#8964 (CPU remains boosted after buffering). 'filling' needs to be set to false when there's nothing left to buffer. by Nicolas Pennequin · 16 years ago
- 2acc0ac Updated our source code header to explicitly mention that we are GPL v2 or by Daniel Stenberg · 16 years ago
- f7e0e6b Lock the linked list mutex when accessing the memory handles. This should fix the invalid values appearing for short times in the buffering debug screen. by Nicolas Pennequin · 16 years ago
- e02d031 Remove unused #define. by Steve Bavin · 16 years ago
- c97e503 Cleaned up playblack.h header file and usage of it. by Bertrik Sikken · 16 years ago
- de026dc Fix FS#8902 (NSF files get skipped). The cause was too strict metadata checking (the NSF metadata parser doesn't fill the 'length' field). Hopefully there won't be any problems with that anymore. by Nicolas Pennequin · 16 years ago
- 4e2de44 A rather big change to how tracks are loaded: there are now two parts to the process and metadata loading is done by the buffering thread (except for the first unbuffered track). The audio thread now calls audio_load_track, and once the metadata is loaded, the buffering thread sends an event which will make the audio thread call audio_finish_load_track. This one then takes care of the rest of the loading. by Nicolas Pennequin · 16 years ago
- 2bf4178 Make mpegplayer sleep the disk after buffering to save battery. * Add a simulator stub for ata_sleep(), and un-ifdef most calls to it. by Jens Arnold · 16 years ago
- 33f522d Migrate the buffering code to the new events system. by Nicolas Pennequin · 17 years ago
- 8a6fd3f Just change PRIORITY_BUFFERING to 15. Seems a teeny tiny bit helpful to mpegplayer as well. by Michael Sevakis · 17 years ago
- 9120c85 Change the default buffer filechunk back to 32KB and bump the buffering thread priority up by one. by Michael Sevakis · 17 years ago
- 12b6c84 Fix sim warnings. by Nicolas Pennequin · 17 years ago
- 732df38 Boost the audio thread while it's filling the buffer. In the audio and the buffering threads, only cancel cpu boost when not filling. by Nicolas Pennequin · 17 years ago
- 4fd2774 Correct some windows line endings back to unix. by Nicolas Pennequin · 17 years ago
- 135cc75 Revert my earlier const madness, we'll keep the parameter lists simple. by Steve Bavin · 17 years ago
- c9df8fd The const police raid playback.c, should be no change to behaviour. by Steve Bavin · 17 years ago
- 73f9863 More consts that require no functional change. by Steve Bavin · 17 years ago