Skip to content
Lars Viklund edited this page Jan 9, 2015 · 49 revisions

long-term progress

  • Revamp of analysis phase, with pre-emption and magic unicorns.

0.2.45.1 (2015/01/09)

  • Thread pool backend replaced, preparation for pre-emptible scans.
  • Direct2D made DPI-aware, no more blur.
  • Improved Wine compatibility.

0.2.45 (2014/02/08)

  • Mitigate assorted state corruption.

0.2.44 (2014/02/01)

  • Flip channel order for D3D mode, was accidentally reversed.

0.2.43 (2014/01/28)

  • Add config to disable scroll-to-seek in advanced preferences.
  • Make Ctrl-Drag to render to clipboard actually render to clipboard.

0.2.42 (2014/01/21)

  • Implemented adaptive scroll-to-seek intervals, scaling in the same manner as the DUI built-in seekbar.

0.2.41 (2014/01/17)

  • Use libuv for almost all concurrency, it should now run in a limited fashion on Wine; watch out for new threading bugs.
  • Restrict the set of files that are considered frontends.
  • Shrink effect editor dialog slightly for netbooks.
  • Scrolling the bar seeks by a minute per notch.
  • Delay-load D3D9/D2D1, only use RGBA8 textures instead of RGBA32F or RGB10A2.
  • Draw each channel in Direct3D 9 as a single triangle instead of a pair of triangles, due to interpolation problems.
  • Clear GDI background properly instead of to black for streams and missing waveforms.

0.2.40 (2013/07/04)

  • Build with Visual Studio 2013 and Boost 1.54.0.
  • Replace most of the Boost usage with (supposedly) equivalent standard library parts. Functionality should remain the same. Report things that surprise you.
  • Optimize GDI frontend, only redraw changed sections of the window contents.
  • Be more resilient against non-fatal database corruption.
  • Do less work when not playing.

0.2.39.6 (2013/06/13)

0.2.39.3 (2013/06/10)

0.2.39 (2013/06/08)

  • Return correct duration for very short tracks.
  • Bundle VC11 runtime with component for now.
  • Load cache data and frontend modules off-thread during startup.
  • Avoid repeated re-initializations of UI panel, thanks to Columns UI being stupid.

0.2.38 (2013/05/19)

0.2.37 (2013/05/13)

  • Moved playback notifications out of individual elements, will have less overhead if using more than one waveform seekbar.
  • Implemented the popular request to clear out waveforms for forbidden and unscannable tracks and streams.
  • Removed pre-emptive scanning of the next track for now.

0.2.36.1 (2013/05/04)

0.2.35 (2013/05/03)

0.2.34 (2013/04/03)

0.2.33 (2013/03/26)

  • Removed a job debug output file (profile/seekbar-jobs.log) created by the last few versions.
  • Defer mass-enqueue/remove operations to run on the worker thread instead of blocking the GUI. May delay shutdown until fully processed if exiting immediately.

0.2.32 (2013/03/24)

  • Discard LFE channel when downmixing, it's just in the way.
  • Fix accidental time-based attenuation for RMS analysis.

0.2.31 (2013/03/24)

  • Rewrite scan logic to cope with tracks having strange and unpredictable lengths, once and for all.

0.2.30.1 (2013/03/23)

  • Fix migration code for legacy settings.
  • Workaround eternal scan bug.

0.2.30 (2013/03/22)

  • Analysis code should be significantly faster.
  • Add mode to downmix display to stereo in addition to keeping display as-is or mixing to mono.

0.2.29 (2012/11/11)

  • Handle lost devices for Direct2D, fixes frozen display after locking/suspending Windows 8.

0.2.28 (2012/11/05)

  • Compatible with Windows 8 SDK and VS2012 compiler, not currently used.
  • Ensure that seekbar storage is properly shaped to work around broken inputs.
  • Remove some dependencies on D3DX.
  • Only load DLLs when looking for frontends.

0.2.27 (2012/07/17)

  • Gracefully refuse analysis of tracks longer than a month.

0.2.26 (2012/07/07)

  • Avoid analysis stalling on tracks longer than a day.

0.2.25 (2012/07/02)

  • Change per-instance configuration backend away from Boost.Serialization. Settings will not be downgradable.

0.2.24 (2012/07/02)

  • Unreleased.

0.2.23 (2012/06/10)

  • Downmix 5.0 channel content somewhat decently.
  • Fall-back naïve downmixing for other unsupported channel configurations.

0.2.21 (2012/04/24)

  • Works around crash when resuming from sleep/hibernation when using the D3D9 frontend.

0.2.20, 0.2.19

  • Unreleased versions with broken screenshot functionality.

0.2.18 (2012/03/10)

  • Menu commands work before playback is started.

0.2.17 (2012/02/26)

  • Avoid crash when falling back to the GDI frontend.
  • Built against Boost 1.49.0.
  • Built with Scintilla 3.0.3.

0.2.16 (2012/02/22)

  • Honor abort callbacks in the case where inputs do not.
  • Initialize the waveform state properly when creating elements during playback.

0.2.15 (2012/01/17)

  • Some non-fatal bugs revealed by static analysis were fixed, stack usage should be less prominent now.
  • Forcing user-initiated scans via the preferences option now works.

0.2.14.2 (2011/12/14)

  • Downmixing of the channels on the right side was flawed, rescans of any waveforms made with analysis downmixing enabled is recommended.

0.2.14.1 (2011/11/14)

  • Sample rate query compatibility fix for legacy DSD/SACD decoder plugins.

0.2.14 (2011/10/18)

  • Disabled Direct2D debugging.

0.2.13.13 (2011/09/30)

  • The padding fix in 0.2.13.10 led to negative allocations for tracks that are longer than they promise. The extra few samples are ignored.

0.2.13.12 (2011/09/27)

  • Fix crash in effect editor on some configurations, caused by careless usage of the STL.

0.2.13.11 (2011/09/26)

  • Fixed eternal analysis for tracks of particular kinds of length.
  • Removed meta-hook for channel count, caused horrible overall performance.
  • Using a static VC10 runtime, size grew by around 600 KiB as a result.

0.2.13.10 (2011/09/11)

  • Silence padding done in smaller chunks to avoid blowing up on tracks that lie a lot about their length.

0.2.13.9 (2011/09/09)

  • Direct3D9 now updates at 100 Hz (typically capped by vsync) instead of 10 Hz.
  • Frontend settings button now has the right enabled state depending on the frontend selected.
  • Extract/Remove context menu commands are now under Utilities.

0.2.13.8 (2011/09/09)

  • Does not cache the LZMA encoders between encodings, caused a 400 MiB commit footprint per thread.
  • Reduced LZMA compression level to reduce memory footprint while retaining the same amount of compression.

0.2.13.7 (2011/08/25)

  • Now requires the Visual Studio 2010 SP1 (x86) redist.
  • Fixes some crashes and memory leaks, especially when the profile directory is in a path with fancy characters.
  • Experimental CUI toolbar, may be unstable.
  • New default effect file for the Direct3D9 frontend, new shader editor integrated.
  • Effects are now per-instance and edited through the configuration dialog for the element/panel.
  • The database now leverages LZMA compression for the waveforms, resulting in significant space savings.
  • Frontends separated into separate DLLs, which should be in the same directory as the component.
  • Experimental feature which exports audio data to the clipboard when holding Ctrl and dragging the seekbar slider.
  • Advanced preferences item for adjusting the display update rate of the seekbars.
  • Support for flipping the waveform.
  • Much much more.

0.2.12 (2010/04/24)

  • Hide tooltip when dragging outside acceptable area.
  • Change in archive format, effect is now kept inside the DLL and extracted to profile directory on launch, if no effect file exists there already.
  • Effects will only be loaded from profile directory now, if you have the effects directory in the application directory, move it to the profile directory (somewhere in the roaming application data, to get there, navigate to %APPDATA%\foobar2000\effects or use the hidden [hold shift] Browse configuration folder command on the file menu).

0.2.11 (2010/04/24)

  • Tooltip appears when dragging to indicate target time.

0.2.10 (2010/04/22)

  • Added advanced preference to omit tracks not in media library from scans.

0.2.9 (2010/04/22)

  • Fail gracefully when some of the D3DX DLLs are missing, as some people can't install the redist properly.
  • Fallback more properly to GDI on frontend creation failures.
  • Placeholder waveform now has all channels present.

0.2.8 (2010/04/21)

  • Fixed rare device loss when drawing.

0.2.7 (2010/04/19)

  • Filter out any rogue code units (high bytes) in effect source.
  • Load effect source manually to avoid paths with silly glyphs in them.

0.2.6 (2010/04/18)

  • Added advanced preference for maximum number of scanning threads.
  • Fixed scaling and clamping for integer texture formats.
  • Code foundation for seeking tooltip, nothing displayed yet.

0.2.5 (2010/04/06)

  • Fixed long configuration dialog load time.
  • Waveform backbuffer does not stretch in an ugly way anymore in Direct3D mode on resize/maximize.

0.2.4 (2010/04/06)

  • Crash less on track/state change while Direct3D device is lost.

0.2.3 (2010/04/06)

  • Fixed the blocking on track change and 100% CPU when display is locked or some game are running.

0.2.2 (2010/04/06)

  • Fixed a rather nasty data clobbering occurring if shutting down while scanning.

0.2.1 (2010/04/03)

  • Ignore more last.fm stuff.

0.2.0 (2010/04/01)

  • First public release in a good while, lots of fun stuff, including the interim unreleased releases 0.1.12 to 0.1.14.
  • Added menu item for rescanning all tracks in waveform database.
  • Moved menu items to separate Waveform Seekbar group under Library.