Overview | News | Windows | macOS | Android | iOS | Audio Formats | Components | Encoder Pack | Screenshots | Help & Support | Developer | Old Versions | Other Projects | Blog & Rants
Releases of Waveform Seek Bar
0.5.3 current version, released on: 2026-09-19
- Validate cached waveforms against source file size [change]
- Replace PFC containers with standard types [developer]
- Construct cache abort callback on first use [developer]
- Adapt to updated foobar2000 SDK [developer]
0.5.2 released on: 2026-09-17
- Add optional filtered waveform resampling [feature]
- Forward ignored mouse buttons during fullscreen [change]
- Preserve played waveform colors when shading is disabled [bug]
-
Update foobar2000 SDK to 2026-09-17 [developer]
- Avoid `abort_callback_impl` service lookup during startup
0.5.0 released on: 2026-09-17
- Simplify waveform and renderer internals [developer, breaking change]
- Make alternate renderers an advanced option [breaking change]
- Add option to ignore mouse thumb buttons [change]
- Add Alt+double-click fullscreen shortcut [change]
- Restore Direct2D selection brush after drawing seek marker [bug]
- Limit Direct3D contour antialiasing at one pixel [bug]
- Normalize configuration dialog control IDs [developer]
0.4.17 released on: 2026-09-14
- Normalize fullscreen and popup handling [feature]
- Update window icon [change]
- Gate Default UI popup command on foobar2000 2.26 [change]
0.4.16 released on: 2026-09-12
- Add cursor and gap scaling factors for fullscreen [feature]
- Allow comments in preset JSON [change]
- Disable opening Preferences page during fullscreen [change]
- Regenerate window icon [change]
- Improve configuration dialog display at various DPIs [bug]
0.4.15-beta0 released on: 2026-09-08
-
Stabilize fullscreen transitions and activation
- Preserve pseudo-transparent backgrounds in fullscreen
- Toggle fullscreen with mouse thumb buttons
- Add a dedicated Columns UI toolbar extension
- Make scrub seek marker coloring configurable
- Restore GDI edge fade with contour rendering
- Keep the cursor visible while fullscreen menus are open
- Fix the window caption text
0.4.14-beta0 released on: 2026-09-04
- Guard cache migration against null waveforms [bug]
- Fix dangling captures in asynchronous waveform delivery [bug]
- Restore GDI edge fade bloom in legacy full-wave rendering [bug]
0.4.13-beta0 released on: 2026-09-04
-
Resample short tracks before waveform analysis [feature]
- Apply Mitchell-Netravali filtering to sampled traces and short tracks
- Add waitable cursor repaint scheduling [feature]
- Increase waveform resolution to 4096 buckets [change, breaking]
- Move waveform cache reads off the UI thread [change]
- Limit repaint rate choices to standard values [change]
- Clarify waveform transform labels [change]
- Reduce placeholder waveform update cost [change]
- Ignore unrelated waveform preference updates [bug]
- Preserve playback state for the selected playing track [bug]
- Rescan unreadable cached waveforms [bug]
- Use the linked Direct2D factory directly [developer]
0.4.12-beta10 released on: 2026-09-01
- Diagnostic release
0.4.12-beta0 released on: 2026-08-28
- Catch the first "halt processing" toggle
- Read silent columns as background in GDI renderer
- Add fractional cursor and gap widths
- Add a soft cursor option
- Show a lingering marker while scrubbing during playback
- Confine Direct2D zero line to silent passages
- Restore GDI edge fade bloom
- Fix light mode static text repaint stacking
- Refine the configuration dialog layout
0.4.11-beta0 released on: 2026-08-28
- Compute only the mono envelope for "store in mono" scans
- Elide cached scans before the library membership round trip
- Boost worker thread priority for interactive waveform scans
- Render the waveform progressively as it scans in
- Scale Direct2D waveform bitmaps for the system DPI
- Compose GDI frames off-screen to stop cursor flicker
- Apply the edge fade in the GDI renderer
- Preview seeks like a slider and play the previewed track on click
- Repaint the render surface when the panel becomes visible
- Flag a failed renderer load in the configuration dialog
- Add advanced option to disable flip-model presentation
- Resolve C++ Code Analysis warnings
0.4.10-beta0 released on: 2026-08-26
- Prepend the shared HLSL header to custom shaders automatically
- Theme the seek, configuration and preference tooltips for dark mode
- Keep the display awake and auto-hide the idle cursor during fullscreen while also limiting it to one panel
- Freeze the play cursor immediately when playback is paused
- Fix Direct2D render DPI scaling
0.4.9-beta0 released on: 2026-08-25
- Add borderless fullscreen
- Separate played and unplayed waveform opacity
- Add option to darken channel gap
- Add option to flip alternating channels in half-wave mode
-
Improve cursor look and behavior
- Size cursor width as logical pixels (DPI-scaled)
- Render the play/seek cursor with sub-pixel anti-aliasing
- Smooth the played/unplayed boundary at sub-pixel positions
- Separate playback active state from the cursor line marker
- Skip redundant redelivery on play/stop of the shown track
- Refresh on-screen waveform on regeneration or removal (context menu)
-
Improve scan performance
- Run scan worker threads at `BELOW_NORMAL` instead of `IDLE` priority
- Skip library synchronization scans for tracks that already have a waveform
- Cache the compiled Title Format script per scan worker thread
- Resolve identity on the scan worker thread
- Fix scan worker crash due to calling `is_item_in_library()` off the main thread
- Fix shutdown crash from dangling promise in waveform scan
- Add cache operation progress information and controls
-
Support custom Direct3D 11 shaders via drag-and-drop and preset
- Precompile the built-in Direct3D 11 shaders
- Handle tracks without ReplayGain in those scale modes
- Recover from graphics device removal or reset
-
Update configuration dialog and add button to open Preferences page
- Centralize the flip alternate enable state
- Add a component icon and show the version in the configuration dialog
- Avoid front end rebuild flash for non-structural settings changes
- Type seek bar as both panel and toolbar in Columns UI
- Remove obsolete waveform pull path
- Adopt latest versioned foobar2000 interfaces
- Consolidate SDK headers into precompiled header and normalize include order
- Normalize message handler and foobar2000 SDK signatures
- Build at Warning Level 4 (`/W4`) with warnings as errors (`/WX`)
- Remove the unused DirectXTK project
- Update README
0.4.8-beta0 released on: 2026-08-23
- Add "reveal played" waveform render mode
- Scale transparent played shade by panel opacity
- Deselect disabled channel list and center dialog on main window
- Embed persistent settings snapshot in front end callback
- Remove unused `visual_frontend_config` and generic strings
- Generate JSON via `reflect()` archive
- Collapse tuning setters via `set_setting()` template
- Reorder MSBuild project files
- Extract configuration dialog into "ConfigDialog.h"
- Modernize class design, encapsulation and handler conventions
- Rename GDI render class to `gdi_frontend`
- Reorganize the source code files into a "source\" tree
- Wire up the reorganized "source\" tree
- Fix GitHub Actions workflow
0.4.7-beta0 released on: 2026-08-23
- Precompute accurate mono downmix during scan and store it in the cache
- Apply mono/stereo downmix independent of channel selection
- Abort waveform scan on EOF at first chunk instead of faking silence
- Add vertical flip (mirror amplitude) display option
- Add configurable dB floor for logarithmic amplitude scaling
- Make pseudo-transparent background a per-panel setting
- Move concurrent scanning thread count from Advanced Preferences to Preferences page
- Rework context menu and expose it during Default UI layout editing mode
- Reuse in-progress waveform scan when a previewed track starts playing
- Shade played region when background is transparent
- Reorganize dialog layouts
- Rewrite tooltips and context menu descriptions
- Disable channel selection controls while downmixing
- Add `%wavebar_channels%` field via cache channel count lookup
- Open cache store before `start()` returns and defer job replay past worker startup
- Repaint Direct2D panel when the asynchronous waveform bitmap is ready
- Enable renderer dropdown when default initialization is disabled
- Release the GPU front end for hidden panels
- Add configurable gap between channel bands
- Add per-panel waveform opacity
- Add named panel presets
- Scale cursor width and color swatches with display DPI
- Refine dark mode and high-DPI configuration dialog rendering
- Simplify downmix labels
- Space channels with an even gap in Direct3D 11
0.4.5-beta0 released on: 2026-08-21
- Preserve waveform envelope when downsampling
- Fix cursor width calculation
- Move visual tuning to per-panel settings
- Reorganize preferences and analysis options
- Add a default settings template
- Load front ends via static entry points
- Share device resources and frame helpers
- Add JSON at 3.12.0
- Remove the DirectXTK dependency
- Update formatting configuration and metadata
0.4.4-beta0 released on: 2026-08-19
- Release completed waveform requests
- Harden playback callback initialization
- Clarify waveform context menu commands
- Fall back to the selected waveform on startup
- Derive palette colors from the active UI
- Modify seek bar host registrations
- Forward modeless configuration dialog messages
- Uncheck unavailable color overrides
- Abide by cursor visibility preference in Direct2D
- Separate Direct3D waveform channels visually
- Fix seek bar Columns UI type
- Synchronize waveform cache with the Media Library
0.4.3-beta0 released on: 2026-08-18
- Start stopped playback at the clicked position
- Refresh the selected waveform after playlist activation
- Replace double-click playback toggling with middle click
- Use active UI colors for the palette template
- Add configurable ReplayGain waveform boost
- Implement per-instance four-color rendering mode
- Refresh GDI pseudo-transparent backgrounds
- Modernize types and tighten const-correctness
0.4.2-beta0 released on: 2026-08-18
- Vendor third-party dependencies
-
Port CMake/vcpkg build scripts to MSBuild
- Organize Visual Studio project filters
- Rename component to foo_wavebar
- Replace Boost serialization with foobar2000 SDK stream formatters
- Replace Effects11 and Scintilla with a built-in Direct3D HLSL shader
- Remove unused ASIO header and XP ATL thunk
- Fix minimum and maximum function references
- Complete the standard library coverage in the pre-compiled header
- Update license headers
- Format repository using Clang-Format
- Modernize for Windows 10 and C++20
- Modernize foobar2000 SDK service accessors
- Delay-load "sqlite3.dll" from foobar2000's bundled copy
- Add Minibar configuration options
- Add packaging scripts and external dependency projects
- Add GitHub Actions build workflow
- Derive component information from "Version.h"
- Centralize ordering of Advanced Preferences
- Route console output through `SEEKBAR_CONSOLE_*`
- Rename "Seekbar" to "Seek Bar"
- Correct downmix coefficients
-
Add screenshot capture via WIC
- Store waveform screenshots in the "wavebar" folder
- Include pseudo-transparent background in D3D11 screenshots
- Clear stale waveform when the cached one is missing
- Gate debug-only cache diagnostics under `_DEBUG`
- Update and consolidate service GUIDs
- Honor waveform cache storage modes
- Fix `CF_WAVE` clipboard copy
- Use the full panel height for waveform rendering
- Add ReplayGain waveform scaling
- Skip disabled channels in the Direct3D 11 renderer
- Add configurable Direct3D 11 waveform edge fading ("lerp" factor)
- Add click and double-click playback controls
- Add per instance waveform color overrides
- Add dark mode support to settings dialogs
- Add pseudo-transparency capabilities for all renderers
- Disable context menu commands while dialogs are open
- Add zero line rendering
- Fix Direct3D UTF-8 string conversion
- Improve the system color palette template
- Synchronize newly-registered waveform listeners
-
Restore per-instance renderer selection
- Render front ends in a dedicated child window
- Refresh renderers after global settings changes
- Align Direct3D waveform channels to pixel boundaries
- Upgrade the Direct3D renderer to 11.1
- Move Direct2D rendering to a DXGI swap chain
0.4.1-alpha0 released on: 2026-08-16
- Update service GUIDs [bug, breaking change]
0.4.0-alpha0 released on: 2026-08-16
- Initial release