Waveform Minibar (mod)

By: Case

Seekbar that shows the waveform of the track. Lighter, fully software implemented version of the original Waveform Seekbar. Heavily based on zao's excellent Minibar component.

This version is for foobar2000 v1.4+. Alternate version for foobar2000 v1.3+ can be found on the home page.

1.0.16 (2018-07-14): Changed halt status into a saved setting. Unhalting will now automatically process the current waveform. Added experimental feature where automatic waveform extraction gets terminated when decoding happens too slowly.
1.0.15 (2018-06-18): Added third waveform display method that prefers playing track and reverts to selected track in stopped state. Added menu command to temporarily stop waveform processing.
1.0.14 (2018-05-29): Added option to reverse the mouse wheel seeking direction.
1.0.13 (2018-05-27): Added vertical scaling setting for waveform. Fixed config having unintentionally editable comboboxes.
1.0.12 (2018-03-02): Fixed a typo in the code so sync-with-library can actually be started. Changed SQLite not to allow opening the database in read-only mode. Made the component refuse to perform long scan operations if database can't be written. Added file names to console scan reports. Switched compression routines to use the zlib1.dll bundled by the player. Whitelisted tone:// and sweep:// protocols so their waveforms are shown.
1.0.11 (2018-02-28): Added support for seeking with mouse wheel.
1.0.10 (2018-02-25): Fixed crash with decode errors.
1.0.9 (2018-02-23): Enabled waveform display for local files that report no length. Added a hack to allow seeking in non-seekable local files.
1.0.8 (2018-01-21): Fix to waveform not updating when stopping from a paused state. Made waveform not disappear when layout is modified
1.0.7 (2018-01-20): Made refresh rate configurable. Screen updating is halted while playback is paused or stopped
1.0.6 (2018-01-10): Added option not to show the waveform for active track when player is started and nothing is playing
1.0.5 (2018-01-06): Fixed a situation where database was loaded too late and the first track after player start was rescanned unnecessarily. Dynamic C runtime version for foobar2000 v1.4
1.0.4 (2017-12-16): Fixed a bug that waveforms scanned with the context menu tool were always saved in the database. Added option to always show playback position cursor. Normally it's visible only when waveform can't be shown
1.0.3 (2017-12-11): Seekbar now allows starting playback of the viewed track from the selected position by clicking on the waveform. Modified selection based waveform viewing to require single selected track
1.0.2 (2017-12-09): Moved configuration from advanced preferences to regular preferences. Added ability to use UI colors and changed the waveform to use UI colors by default
1.0.1 (2017-12-08): Fixed scanning hanging with very short files
1.0 (2017-12-07): First released modified version of zao's Waveform Minibar component. Changed database name not to conflict with the original. Added some safety checks to prevent crashing on errors. Modified the waveform display to show waveform shape for short files. Fixed RMS rendering not to overlap with waveform. Added ability to optionally show waveform for selected track instead of currently playing track

Current version

1.0.16, released on 2018-07-14

Works with foobar2000 v1.4 alpha and newer


Home page

More components

Browse all
Browse by author: Case
Tags: Columns UI panel, Default UI element, playback control

How to install a component?