1. 20db9cc Playback: removed duplicate functions by Jeffrey Goode · 15 years ago
  2. 04b01e1 pcmbuf: clarify and simplify crossfade code, etc. by Jeffrey Goode · 15 years ago
  3. 5ce8e2c Clarify track transition code in pcmbuf and playback. No functional changes yet. by Jeffrey Goode · 15 years ago
  4. 8f04d5a Playback.c: Eliminate repetitive watermark calculation when the buffer is idle. Also fix evil comment by Jeffrey Goode · 15 years ago
  5. 5822259 Tweak logf statements by Jeffrey Goode · 15 years ago
  6. e8eefe9 Code cleanup in codec_thread, playback and pcmbuf; more elegant solution to leftover samples by Jeffrey Goode · 15 years ago
  7. 03c5cb6 Fix yellow, defines by Jeffrey Goode · 15 years ago
  8. 9a4420b FS#10739: playback.c code split by Jeffrey Goode · 15 years ago
  9. 774bacc Correct wrong usage of event callbacks all over the place. It's not supposed to return anything, and should take a data parameter. by Thomas Martitz · 15 years ago
  10. 1016ee4 Initial custom statusbar commit. by Thomas Martitz · 15 years ago
  11. e9c1018 Rework albumart buffering internally to allow for mutliple albumart sizes. by Thomas Martitz · 15 years ago
  12. 6bfce3b Remove unused defines by Maurus Cuelenaere · 15 years ago
  13. 0307cd1 Remove some unused #includes by Bertrik Sikken · 15 years ago
  14. 3b75c86 A bit mroe wps/skin engine cleanup so that the structs the wps uses can be static: by Thomas Martitz · 15 years ago
  15. 5f5d105 Change the naming scheme for codecs found in different containers. by Mohamed Tarek · 15 years ago
  16. e96da7e Get cuesheets working again (hopefully fixes FS#10460), on swcodec only read the cuesheet from the buffer once by Jonathan Gordon · 15 years ago
  17. c46669a fix FS#10453 - the cuesheet changes broke playback on swcodec, rework it so it uses the audio buffer instead of a temp buffer from the start (which also removes one pretty big memcpy) by Jonathan Gordon · 15 years ago
  18. 24b136f rework cuesheet support: by Jonathan Gordon · 15 years ago
  19. 3d4701a FS#10080 by Nils Wallménius · 15 years ago
  20. 16e339d Bugfix for FS#10157 - "inaccurate seeking while paused" by Jeffrey Goode. by Thomas Martitz · 15 years ago
  21. 8c5c92d FS#10377 - "PCM buffer remainder is played under too many conditions" by Jeffrey Goode. by Thomas Martitz · 15 years ago
  22. d52c661 Commit FS#10335 from Jeffrey Goode. by Dan Everton · 15 years ago
  23. fc0c2fb Fix FS#10101 and FS#8999. Buffering was stopped prematurely if a manual track skip occured in between, leaving the CPU boosted, because audio_fill_file_buffer() returned if a new track was requested no matter of the filling state. Now keep buffering if it's currently filling the buffer. by Thomas Martitz · 15 years ago
  24. 0023943 Fix duplicate #includes by Bertrik Sikken · 15 years ago
  25. 7f94a9d In audio_current_track(), don't overwrite thistrack_id3 when it is being used by the codec. This fixes divide by zero errors when selecting other files while a FLAC file is playing. See FS#10102. by Boris Gjenero · 16 years ago
  26. 745e35c Fix red introduced in r20747 by Boris Gjenero · 16 years ago
  27. b71aad6 Add anti-skip buffer time when calculating watermark. This fixes the "Anti-Skip Buffer" setting. Since the minimum and default value is 5 seconds, this is relevant even when that setting isn't changed. It prevents playback pauses on the 5G iPod, and it should also prevent pauses on other SWCODEC hard drive based players, including FS#10115. by Boris Gjenero · 16 years ago
  28. 140c7e6 fix FS#10102 (progress doesnt get updated on the first track of a boot) and hopefully dont introduce any extra wierdness... by Jonathan Gordon · 16 years ago
  29. 265d855 Remove unnecessary copying of current track id3 data back into the buffer. It was used before when track_unbuffer_callback existed, but now PLAYBACK_EVENT_TRACK_FINISH takes care of this. by Boris Gjenero · 16 years ago
  30. 843c7ef FS9795 - some playback cleanup. by Jonathan Gordon · 16 years ago
  31. 66cf3a3 Clean up some #includes by Bertrik Sikken · 16 years ago
  32. 76be948 Correct comment and log message for failed AlbumArt bitmap loading. by Antonius Hellmann · 16 years ago
  33. 5355f34 Bugfix: If AlbumArt bitmap loading fails, dont try loading it over and over again, but simply ignore AlbumArt in this case. by Antonius Hellmann · 16 years ago
  34. 6a67539 Remove some unused code. bufopen for TYPE_ID3 can only return ERR_BUFFER_FULL (or a valid id of course) and no other error anyway. by Thomas Martitz · 16 years ago
  35. 2c59de5 make audio_get_buffer() properly invalidate the buffer (FS#9935, fix by Nicolas Pennequin) by Frank Gevaerts · 16 years ago
  36. 25b4334 Now that filling is supposed to be reliable we can safely calculate the watermark at the end of buffering, not after every single track. by Thomas Martitz · 16 years ago
  37. d7dee56 Set filling properly when codec doesn't fit too. by Thomas Martitz · 16 years ago
  38. 5e1bab1 Fix two rare bugs which caused playback to not unboost. The filling state was not set properly, if there was no space left for the handle for albumart or audio data. but for the handle for metadata. This also adds specific checks for ERR_BUFFER_FULL and appropriate logf messages. by Thomas Martitz · 16 years ago
  39. 56f4723 Check for buffer low condition in AlbumArt bitmap loading to assure correct AA display for all tracks. by Antonius Hellmann · 16 years ago
  40. 21f0c9a Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE. by Michael Sevakis · 16 years ago
  41. 91948d1 FS#9638 - temp_cue is unused and wasting memory. by Bertrik Sikken · 16 years ago
  42. 53a76de Increased default watermark from 3 to 5 seconds. by Björn Stenberg · 16 years ago
  43. 6427d12 Calculate watermark from bitrate and harddisk spinup time. by Björn Stenberg · 16 years ago
  44. 42d88cb Better just do some cache maintenence there for good luck. by Michael Sevakis · 16 years ago
  45. 2054627 Have the codec thread do callbacks instead of messing with the stack which is much simpler and safer. Remove threads array from plugin API since it now serves no purpose. Up minimum API version and sort. by Michael Sevakis · 16 years ago
  46. 70e9c7a Commit FS#8624 by Linus Nielsen, Ryan Press, Craig Elliott, and Kenderes 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. by Michael Giacomelli · 16 years ago
  47. 93572e2 Keyclick fixup take two. It is only 88 samples (2msec) long so keep a small 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. by Michael Sevakis · 16 years ago
  48. 826688e PCM buffer beeping needs the audio buffer reset in order to work after operations that trash the buffer or keyclick won't be audible until playback is restarted. by Michael Sevakis · 16 years ago
  49. 5e73f9f Fix FS#8660-Recording hardlocks with keyclick enabled and FS#9388-keyclicks too late. Introduce audio_buffer_state to check whether PCM buffer is useable or disabled (trashed). by Michael Sevakis · 16 years ago
  50. 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
  51. 89da432 Meg F/X can beep and click using a hardware timer so let us try it out. To match things up better, fix PCM beeping to give correct frequency (and get a pointer wrap bug too). Do some minor adjustments to compensate for corrections. by Michael Sevakis · 16 years ago
  52. fb11a83 playback: sanity check for pcmbuf_init() requirement (enabled in DEBUG) by Rafaël Carré · 16 years ago
  53. 7bc50d1 Fix FS#8282 - if next-dir fails resume the old playlist by Jonathan Gordon · 16 years ago
  54. 8c23a36 FS#8814 - remove the "restarting playback" splash because its pointless.. by Jonathan Gordon · 16 years ago
  55. 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
  56. 1b9991c Try to fix FS#9502: end playback properly if no valid files were found in a playlist. by Magnus Holmgren · 16 years ago
  57. 7b77910 fix FS#8124 - pressing STOP after seeking while paused causes playback to start again for a second or 2 by Jonathan Gordon · 16 years ago
  58. 2f50cd5 Codec memory reorganization by Nils Wallménius · 16 years ago
  59. 00a228f Accept FS#7482 by Klaas Bosteels - return the full path of a file which doesnt have valid tags yet (and use the end of the filename for the title) instead of before which was only using the filename by Jonathan Gordon · 16 years ago
  60. 71898e5 Accept FS#9480 - centralise and organise the events in the apps/ layer. by Jonathan Gordon · 16 years ago
  61. f30430f Added #include pcm_record.h by Björn Stenberg · 16 years ago
  62. 4657301 add HAVE_DISK_STORAGE, and use that instead of HAVE_FLASH_STORAGE when checking for an actual disk (i.e. related to spindown, skipping,...) by Frank Gevaerts · 16 years ago
  63. 01729e7 FS#9281 Rename of splash functions. by Nils Wallménius · 16 years ago
  64. c893aff Accept FS#8918: Voice multiple thumbnails and talk race fixes. by Stéphane Doyon · 16 years ago
  65. f69982b Fix FS#8977. The issue was caused by multiple successive calls to audio_load_track() happening before the corresponding calls to audio_finish_load_track(), resulting in disappearing tracks. I added the track_load_started boolean flag as a means to prevent audio_load_track() from doing anything if a call to audio_finish_load_track is pending. by Nicolas Pennequin · 16 years ago
  66. 0441afe Fix FS#9110 and its maybe-dupes. by Nicolas Pennequin · 16 years ago
  67. 2acc0ac Updated our source code header to explicitly mention that we are GPL v2 or by Daniel Stenberg · 16 years ago
  68. ef5fa8e Restore Zagor's copyright from before the WPS tokenizer. I shouldn't have removed it. Also add mine in playback.c, alongside Slasheri's. by Nicolas Pennequin · 17 years ago
  69. c97e503 Cleaned up playblack.h header file and usage of it. by Bertrik Sikken · 17 years ago
  70. 2cf6345 bufgetid3 should be used carefully, as it can return NULL. by Nicolas Pennequin · 17 years ago
  71. 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 · 17 years ago
  72. babd3be audio_current_track: take wps_offset into account when no buffered metadata is available, and avoid using playlist_peek, which hits on the disk when dircache isn't enabled. This should make skipping nicer. by Nicolas Pennequin · 17 years ago
  73. b36d3c0 Some bugfixes after r17109: by Nicolas Pennequin · 17 years ago
  74. e50202c Remove a global variable which is (hopefully) not needed. Also fixes a very minor bug where restarting playback after a playlist ends would play the final 3 seconds again. by Steve Bavin · 17 years ago
  75. 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 · 17 years ago
  76. a5ad74f Revert what was left of r17018 until I find a better way. It had quirks in some cases, and doesn't play well with what I'm about to commit. by Nicolas Pennequin · 17 years ago
  77. 3c96259 FS#8882: Fix the bug where skipping backwards with Ogg files could result in a skip forward (FS#8508). The problem was introduced by a one-line change in r16025, so we revert it. At the time I thought that line had become useless but obviously I was wrong. Thanks to Greg Erwin for finding the fix. by Nicolas Pennequin · 17 years ago
  78. 9a946f6 Commit FS#8822 by Magnus Holmgren. Fixes resuming previously playing WMA files after a reboot. by Michael Giacomelli · 17 years ago
  79. 977069a Bring the WPS playlist index display into sync with the track being played by using the index field of the ID3 info struct instead of directly asking the playlist code. by Nicolas Pennequin · 17 years ago
  80. 0509914 Enable nocache sections using the linker. PP5022/4 must use SW_CORELOCK now with shared variables in DRAM (it seems swp(b) is at least partially broken on all PP or I'm doing something very wrong here :\). For core-shared data use SHAREDBSS/DATA_ATTR. NOCACHEBSS/DATA_ATTR is available whether or not single core is forced for static peripheral-DMA buffer allocation without use of the UNCACHED_ADDR macro in code and is likely useful on a non-PP target with a data cache (although not actually enabled in config.h and the .lds's in this commit). by Michael Sevakis · 17 years ago
  81. fe9eb68 Fix FS#8513 (Playback occasionally repeats a track when rebuffering occurs) and hopefully others by essentially reverting r16019, parts of r16425 and most bugfix followups. This means we're back to having a desynchronized playlist index in the WPS. audio_check_new_track() needs a serious rework before we can make improvements in that area without breaking things. by Nicolas Pennequin · 17 years ago
  82. 33f522d Migrate the buffering code to the new events system. by Nicolas Pennequin · 17 years ago
  83. a3ed952 Fix an issue introduced by r16930 where rebuffering would happen one track too early because track were counted after moving to the next one instead of before. by Nicolas Pennequin · 17 years ago
  84. 73a71a4 Move audio_set_elapsed to mpa.c, as recommended by the TODO note. Please correct me if affecting ci->id3->elapsed directly (ie without using ci->set_elapsed) is wrong. by Nicolas Pennequin · 17 years ago
  85. bb40e6e Fix a possible (though unlikely) deadlock condition spotted by jhMikeS. It would involve both the buffering and the audio thread sending synchronous messages to one another. by Nicolas Pennequin · 17 years ago
  86. 03b54c2 Fix for FS#8601 by pondlife: the disk no longer spins up on a track change when dircache is disabled. This issue was introduced by me in r16019 by adding a call to playlist_peek() in audio_check_new_track(). This fix adds a new playlist API call to work around the problem until we find a better solution. There are also a few simplifications and comment corrections. by Nicolas Pennequin · 17 years ago
  87. 63acf3e Fixes FS#8597 (dropouts while crossfading) via keeping CPU boosted while crossfading is active. by Andree Buschmann · 17 years ago
  88. 12b6c84 Fix sim warnings. by Nicolas Pennequin · 17 years ago
  89. 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
  90. b71cbd5 Use queue_empty instead of queue_peek again now that we don't care about the event type anymore. by Nicolas Pennequin · 17 years ago
  91. 4855e73 Move codec_get_file_pos somewhere else like the comment said should be done. Codec API version increment was needed so update all codecs. by Michael Sevakis · 17 years ago
  92. f68147e Track playback filling state with a state-machine approach. There shouldn't be any change in behaviour but things are simpler. by Nicolas Pennequin · 17 years ago
  93. 135cc75 Revert my earlier const madness, we'll keep the parameter lists simple. by Steve Bavin · 17 years ago
  94. 3d0b7c6 Oops, another pondlife puddle of red. by Steve Bavin · 17 years ago
  95. c9df8fd The const police raid playback.c, should be no change to behaviour. by Steve Bavin · 17 years ago
  96. 7669103 Oops, more red. That can't be static yet. by Steve Bavin · 17 years ago
  97. 38ed901 A little more consting/staticing, no functional change. by Steve Bavin · 17 years ago
  98. 27cf677 Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed. by Michael Sevakis · 17 years ago
  99. a67e5d8 It makes more sense for the callback registrar to decide if its a "oneshot" then the callback caller. by Jonathan Gordon · 17 years ago
  100. 19c6e66 Implement the playback event handling as a system-wide multi-purpose event system. Unified mpeg.c and playback.c audio event handling. Converted ata_idle_notify to use the new event handling system also. by Miika Pekkarinen · 17 years ago