Foobar2000:Version 2.0 Beta Change Log: Difference between revisions

From Hydrogenaudio Knowledgebase
No edit summary
No edit summary
 
(19 intermediate revisions by the same user not shown)
Line 123: Line 123:
=== Beta 19 ===
=== Beta 19 ===
* Crash regression fix.
* Crash regression fix.
=== Beta 20 ===
* Added "low memory mode" in 32-bit build, restoring pre-beta18 style tag caching semantics.
** Located in advanced preferences / general.
** If foobar2000 cannot start up due to memory usage, it can be emergency-enabled by putting "enable_low_mem_mode" file in the profile folder.
* Misc search bug fixes.
* Playlist group layout optimizations reverted (no more scrollbar jumping around stupidly), unless in the new low memory mode.
* Fixed various RIFF64 WAV reading bugs.
* Fixed blank edit menu shown when no items are enabled.
=== Beta 21 ===
* Fixed accidental twin Peak Meters.
* Fixed a bug resulting in nonsensical channel mask being passed around.
* No longer recreates all DSPs when manually cycling tracks in playlist.
* Removed untested code for float16 & float24 audio reading. If you run into actual samples of such files, please let me know.
* Worked around ages old problem with external changes to file tags causing loss of foo_playcount data (needs new foo_playcount).
* Added 'icon' column in default playlist view.
=== Beta 22 ===
* Fixed total playback time not being remembered since beta 18.
* Fixed problems with accessing some non-UTF8-compliant FTP servers.
* DSP bug fixes.
* Fixed FPL writer regression causing some of written playlists to be unreadable.
* Fixed a bug that prevented some internet radio station names from being shown.
=== Beta 23 ===
* Fixed missing CListControl accessibility support in 64-bit version.
* Fixed crash after loss of audio output device while playing.
* Fixed random shutdown crash when using Album List or ReFacets with filters.
* Fixed wrong content shown in left pane of File Operations pattern picker.
=== Beta 24 ===
* Made fast DSP reset (introduced in previous version) opt-in, as it breaks certain third party DSPs.
* File Operations: Dark mode bug fixes.
* Preferences / Shell: changed default target playlist name.
* Fixed outdated info shown after editing tags in low-memory mode.
* Properties Autofill logic amended.
* Album List & ReFacets: improved handling of | character in tags.
=== Beta 25 ===
* Fixed portable mode relative paths not being respected by playlist load/save operations.
* Fixed bad MD5 verification of AIFF sourced WavPacks.
* Reworked fb2k::configStore, now less prone to silly errors saving random configuration bits, should recover from momentary problems with the configuration file instead of crashing.
* Slightly better communication between output device checkboxes vs output picker toolbar.
* Better console logging if internet stream reconnect events.
* Workaround for disappearing windows when dismissing certain DSP dialogs.
* Dark Mode: Fixed some prompt headers having odd color.
* Dark Mode: Fixed tri-state checkboxes.
* Darkened classic MP3 utility dialogs.
* Reworked first run & import of old foobar2000 settings. Import of old foobar2000 configuration is now optional.
=== Beta 26 ===
* Portable install playlist save lag regression from beta 25 fixed.
* Made more edit boxes recognize ctrl+backspace.
* Better info reporting for lossless DTS files.
=== Beta 27 ===
* Fixed playlist layout glitch causing unwanted scrolling during certain events.
* Implemented fb2k::playlistColumnProvider::flag_alignCenter, was missing until now.
* Disabled slow meta autocomplete in low-memory mode.
* Properties: Log tag update errors to console.
* Dark mode: fixed listbox scrollbars.
* Worked around foo_input_dvda bugs, no longer crashes on null album art data returned.
* Disabled behind-the-scenes unicode normalization of metadata, caused bugs with playback statistics pinning.
* First run will rebuild index for playback statistics, might stall for a few seconds on startup. This is due to the above, corrects potential bad data.
* New API: metadb_pre_update_callback, mainly intended to reliably notify foo_playcount about meta changes preventing data loss in corner cases.
* ReFactes: Added multi value columns similar to original Facets.
* ReFacets: Enter key in search box sends results to playlist.
=== Beta 28 ===
* Native foobar2000 for ARM is finally available.
* Supports ARM builds of components but doesn't actually require them, can transparently load x64 code.
* Native ARM version requires Windows 11. If you run Windows 10, you can still run legacy 32-bit foobar2000 through x86 emulation.
* FFmpeg updated to 6.0.
* Built-in Monkey's Audio support now uses FFmpeg. As Monkey's Audio is under rapid development, it's once again available as a [https://www.foobar2000.org/components/view/foo_input_monkey separate component] that can be updated separately from foobar2000 itself. The component has just been updated to latest Monkey's Audio library and fully supports modern CPU architectures.
* Added extra sanity checks to tag update operations in built-in codecs: made sure that attempts to remove covers from files that didn't have them in first place don't alter files at all.
=== Beta 29 ===
* Converter fixes in 64-bit build, made possible to write 32-bit fixed-point and 64-bit floating-point output.
* Converter vs LAME: allowed 32-bit floating-point pass-thru, as current LAME version supports it.
* Fixed Windows logoff/shutdown causing foobar2000 not to save playback position.
* Fixed main window position/size not respecting system DPI settings.
* Updated exclusive output device-specific workarounds.
=== Beta 30 ===
* Fixed beta 29 regression, maximized main window state is remembered again.
=== Beta 31 ===
* Fixed glitching when seeking with smooth playback and CPU-heavy DSPs active.
* Made image viewer maximized state remembered again.
* Fixed status bar dark mode bugs with dim/highlight formatting.
* Fixed File Operations dark mode glitching.
* Fixed Converter bit depth vs lossy codec regression.
* Verifier: Don't use decode postproc for AccurateRip checking.
* Switched to 32-bit x86 installer for ARM foobar2000, was using 64-bit before. Fixes stall during install / regsrv32.exe forkbomb.
* Removed the ability to toggle low-memory mode in 32-bit build, due heavy performance issues that it causes if toggled accidentally. Another way to toggle it will be added later, for now it's a hidden setting.
=== Beta 32 ===
* Fixed dark mode in "Batch attach pictures" dialog.
* Resolved a disagreement with foo_openlyrics resulting in startup crashing.
=== Beta 33 ===
* Release candidate build.
* Removed FFmpeg Monkey's Audio decoder which was incorrectly playing specific files, included latest Monkey's Audio library instead.
* Made installer remember last used portable installations per CPU architecture.
* Removed obsolete/meaningless verifier option for verbose AccurateRip output.
=== Beta 34 ===
* Release candidate build.
* Fixed a timer manipulation issue that resulted in missing search query & autoplaylist refresh events when using time-based queries.
* Fixed wrong scrollbar context menus in various places.
* Fixed an internal regression that prevented Classic User Interface playlist from live-tracking title formatting configuration changes.
* Added ctrl+del handling to various edit boxes.
=== Beta 35 ===
* Release candidate build.
* Better detection of non-dark-mode-supported systems. Dark mode features disabled on Windows 10 older than 1809.
* Dark mode: fixed scroll bars in dropdown lists not being darkened.
* Fixed startup lockup with certain library viewer configurations.
=== Final ===
* Fixed Converter beta 29 regression, an internal logic error caused 32bit fixedpoint audio being sent to some encoders instead of floatingpoint, mainly causing lossy-to-lossy transcoding errors.
* That's it. I hope you all enjoy using foobar2000 v2.0.

Latest revision as of 13:03, 26 April 2023

Beta 2

  • Fixed crash on old configuration import.

Beta 3

  • Component loader no longer probes menu command GUIDs, which was crashing some components. Was meant to prevent specific known incompatible components from loading.
  • Now shows CPU architecture (x86 or x64) in about box.
  • Fixed Media Library performing unnecessary tag reloads in some scenarios.
  • Crash bugs fixed.
  • Made Preferences / Output / Devices usable without a mouse.

Beta 4

  • MP4 tagging: do not set Various Artists if itunescompilation is present but set to 0.
  • Crash bugs fixed.
  • Made installer refuse to upgrade old non-portable installs containing profile data in application folder, which is no longer supported.
  • Fixed metadb lock up with large queryInfoMulti() batches.
  • Fixed library search by rating not working.
  • Added ReFacets to library viewers list.
  • Fixed missing double click to fullscreen in Default UI visualisations.
  • Fixed disappearing live playback info on playback statistics update.
  • Fixed longer-than-necessary gap when reopening exclusive-mode output on format change.
  • Fixed seekbar & visualisation glitches when playing very short audio tracks with exclusive-mode output.

Beta 5

  • Fixed various crash bugs.
  • Improved rendering performance of very large playlists with grouping & album art enabled.
  • Made ReFacets sorting remembered.
  • Fixed inverted titles of "Add Files" vs "Open" dialogs.
  • Reduced output reopen delay when input format (channel count etc) changes.
  • Improved dark mode rendering of checkboxes.
  • Suppressed library error log lines about folder.jpg etc inside archive files.

Beta 6

  • Fixed playlist layout glitch regression from beta 5.

Beta 7

  • libFLAC 1.4, made possible to decode 32 bits per sample FLAC files.
  • Upgrading from v1.x retains file timestamps of profile folder contents.
  • Fixed bad handling of user-components folder in upgraded legacy portable installs without a "profile" folder.
  • Playlist rendering and manipulation performance fixes.
  • DTS decode_postprocessor now works, for decoding DTS in WAV, FLAC, etc.
  • Fixed incorrect behavior after a watched media library folder disappears then reappears.
  • Allowed blank meta values in metadb.
  • Made possible to enable album art columns in Default UI playlist even without grouping enabled - the old behavior was confusing.
  • Added dark mode to Default UI toolbar buttons configuration dialog.
  • Made settings of old foo_albumlist & foo_sanitizer imported on startup, if present.

Beta 8

  • Fixed beta 7 regression with wrong handling of blank meta values.
  • Fixed some visual glitches in Converter.
  • Rare crash bug workarounds.
  • Improved crash log writer in 64-bit version.

Beta 9

  • Updated WavPack library to 5.5.0.
  • Updated Monkey's Audio library to 8.70.
  • Changed replacement for slash character in file naming.
  • Fixed a regression that made it impossible to play certain M4A HE-AAC files from remote (HTTP etc) sources.
  • Various ReFacets glitches fixed.
  • Made new library search implementation more robust.
  • Cleaned up Ogg reader, made possible to seek in remote (HTTP etc) Ogg files.
  • Crash bugs fixed.

Beta 10

  • Fixed Ogg seeking regressions from the previous beta.
  • Made column order correctly remembered per-playlist.
  • libFLAC 1.4.1.
  • Rewritten asymmetric library search feature.
  • Library search speed optimizations, made more queries utilize search index.
  • Restored multi-folder-selection for "add folder".

Beta 11

  • Fixed incorrect MD5 verification of 32-bit FLAC files.
  • Fixed non-decoding of DTSHD files.
  • Added option to override DRC behavior on AC-3 audio.
  • Various crash bugs fixed.

Beta 12

  • Improved behavior when watched library folders are on temporarily unavailable network shares.
  • Fixed audio glitching on screen resolution change in certain configurations.
  • Improved exclusive output behavior with uncommon channel layouts, 4.1/5.0 would not play on a device expecting 5.1-side.
  • Fixed failure to read specific odd FPL files.

Beta 13

  • Fixed poor search performance with asymmetric search enabled.
  • Fixed dark mode in Converter overwrite prompt.
  • Reverted visualisations to GDI rendering by default. Use advanced preferences toggle to enable D2D. Too many systems fail at D2D rendering.
  • Mitigated media indexing crash on Wine by cutting down use of std::current_exception() / std::rethrow_exception().
  • libFLAC & zlib update.
  • Channel mask display fixes.
  • Fixed wrong length reporting in Binary Comparator.
  • No longer reports FLAC files with ID3 tags as corrupted.
  • Workarounds for poor performance of metadb_index operations compared to v1.x series (affects third party components only).
  • Programming interface extensions for components:
    • Made possible to apply DSP config changes without reinitializing affected DSPs.
    • Allowed DSPs to manipulate their shown name depending on preset data.
    • Addded non-blocking DSP configuration popups.
    • Added library_manager_v5 with extra status info methods (new SDK needed to utilize).

Beta 14

  • Enabled search indexing of file paths by default.
    • Because this somewhat affects performance and some people just don't care, an advanced option to turn it off has been added.
  • WavPack library update.
  • More compatible reading of exotic AIFF files.
  • Fixed a very old bug in 8-bit AU writer.
  • Added sanitization of internet radio metadata as certain station was serving nonsensical sample rate info.
  • Improved compatibility with MP4 files made with yt-dlp.
  • Improved compatibility with stripped down Windows 10 distributions.

Beta 15

  • Fixed various library search expression handling bugs.
  • Made FLAC tag updater remove ID3v2 garbage prefixing FLAC stream.
  • Made ERROR_BAD_LENGTH condition crash to debug specific network share compatibility issue.
  • Made MP3 reader report MP3 frame count not matching Xing/LAME header info when verifying integrity.

Beta 16

  • Improved compatibility with network shares - worked around specific server refusing GetFileInformationByHandle() resulting in previous foobar2000 v2.0 betas being unable to play or index media from such.
  • More search regression fixes.
  • Fixed missing ES_AUTOHSCROLL in ReFacets search box - was limiting length of typed search pattern to size of the editbox.
  • Added lock toggle to Default UI splitter.
  • Rating field handling fixes - %rating% now looks up rating meta if no rating is present in the database.
  • Reverted larger font in Properties tabs as everyone seems to hate it.
  • Fixed 64-bit setup being unable to close running foobar2000 instance before updating.
  • Fixed archive content being invisible in Album List's folders view, possibly in other components too (library_manager::get_relative_path).

Beta 17

  • libvorbis is once again used for decoding Vorbis format instead of FFmpeg, as some rare files continue to cause compatibility issues.
  • Default Playlist View: Fixed column size remembering bugs.
  • Updated Properties / Automatically Fill Values logic, better results if searched pattern appears more than once.
  • Fixed missing quotation mark recognition in new library search system.
  • Fixed bad import of old foo_playcount ratings (0.5 added), made first run clean up existing database and badly imported values from the old version.
  • Fixed Console not obeying color settings.

Beta 18

  • Made all track info cached in memory like it was in old foobar2000 versions. The performance loss from keeping all info in SQLite only was not acceptable.
  • Rewritten search index. If you find a case where new foobar2000 search is slower than 1.x series, please let us know.
  • Removed internal playback statistics, made Playback Statistics component (foo_playcount) operational again. First run of new foo_playcount imports foobar2000 v2.0 beta database back.
  • 64-bit version no longer moves user-components folder to user-components-x64 on first run.
  • Fixed playback of 8-channel Vorbis, beta 17 regression.

Beta 19

  • Crash regression fix.

Beta 20

  • Added "low memory mode" in 32-bit build, restoring pre-beta18 style tag caching semantics.
    • Located in advanced preferences / general.
    • If foobar2000 cannot start up due to memory usage, it can be emergency-enabled by putting "enable_low_mem_mode" file in the profile folder.
  • Misc search bug fixes.
  • Playlist group layout optimizations reverted (no more scrollbar jumping around stupidly), unless in the new low memory mode.
  • Fixed various RIFF64 WAV reading bugs.
  • Fixed blank edit menu shown when no items are enabled.

Beta 21

  • Fixed accidental twin Peak Meters.
  • Fixed a bug resulting in nonsensical channel mask being passed around.
  • No longer recreates all DSPs when manually cycling tracks in playlist.
  • Removed untested code for float16 & float24 audio reading. If you run into actual samples of such files, please let me know.
  • Worked around ages old problem with external changes to file tags causing loss of foo_playcount data (needs new foo_playcount).
  • Added 'icon' column in default playlist view.

Beta 22

  • Fixed total playback time not being remembered since beta 18.
  • Fixed problems with accessing some non-UTF8-compliant FTP servers.
  • DSP bug fixes.
  • Fixed FPL writer regression causing some of written playlists to be unreadable.
  • Fixed a bug that prevented some internet radio station names from being shown.

Beta 23

  • Fixed missing CListControl accessibility support in 64-bit version.
  • Fixed crash after loss of audio output device while playing.
  • Fixed random shutdown crash when using Album List or ReFacets with filters.
  • Fixed wrong content shown in left pane of File Operations pattern picker.

Beta 24

  • Made fast DSP reset (introduced in previous version) opt-in, as it breaks certain third party DSPs.
  • File Operations: Dark mode bug fixes.
  • Preferences / Shell: changed default target playlist name.
  • Fixed outdated info shown after editing tags in low-memory mode.
  • Properties Autofill logic amended.
  • Album List & ReFacets: improved handling of | character in tags.

Beta 25

  • Fixed portable mode relative paths not being respected by playlist load/save operations.
  • Fixed bad MD5 verification of AIFF sourced WavPacks.
  • Reworked fb2k::configStore, now less prone to silly errors saving random configuration bits, should recover from momentary problems with the configuration file instead of crashing.
  • Slightly better communication between output device checkboxes vs output picker toolbar.
  • Better console logging if internet stream reconnect events.
  • Workaround for disappearing windows when dismissing certain DSP dialogs.
  • Dark Mode: Fixed some prompt headers having odd color.
  • Dark Mode: Fixed tri-state checkboxes.
  • Darkened classic MP3 utility dialogs.
  • Reworked first run & import of old foobar2000 settings. Import of old foobar2000 configuration is now optional.

Beta 26

  • Portable install playlist save lag regression from beta 25 fixed.
  • Made more edit boxes recognize ctrl+backspace.
  • Better info reporting for lossless DTS files.

Beta 27

  • Fixed playlist layout glitch causing unwanted scrolling during certain events.
  • Implemented fb2k::playlistColumnProvider::flag_alignCenter, was missing until now.
  • Disabled slow meta autocomplete in low-memory mode.
  • Properties: Log tag update errors to console.
  • Dark mode: fixed listbox scrollbars.
  • Worked around foo_input_dvda bugs, no longer crashes on null album art data returned.
  • Disabled behind-the-scenes unicode normalization of metadata, caused bugs with playback statistics pinning.
  • First run will rebuild index for playback statistics, might stall for a few seconds on startup. This is due to the above, corrects potential bad data.
  • New API: metadb_pre_update_callback, mainly intended to reliably notify foo_playcount about meta changes preventing data loss in corner cases.
  • ReFactes: Added multi value columns similar to original Facets.
  • ReFacets: Enter key in search box sends results to playlist.

Beta 28

  • Native foobar2000 for ARM is finally available.
  • Supports ARM builds of components but doesn't actually require them, can transparently load x64 code.
  • Native ARM version requires Windows 11. If you run Windows 10, you can still run legacy 32-bit foobar2000 through x86 emulation.
  • FFmpeg updated to 6.0.
  • Built-in Monkey's Audio support now uses FFmpeg. As Monkey's Audio is under rapid development, it's once again available as a separate component that can be updated separately from foobar2000 itself. The component has just been updated to latest Monkey's Audio library and fully supports modern CPU architectures.
  • Added extra sanity checks to tag update operations in built-in codecs: made sure that attempts to remove covers from files that didn't have them in first place don't alter files at all.

Beta 29

  • Converter fixes in 64-bit build, made possible to write 32-bit fixed-point and 64-bit floating-point output.
  • Converter vs LAME: allowed 32-bit floating-point pass-thru, as current LAME version supports it.
  • Fixed Windows logoff/shutdown causing foobar2000 not to save playback position.
  • Fixed main window position/size not respecting system DPI settings.
  • Updated exclusive output device-specific workarounds.

Beta 30

  • Fixed beta 29 regression, maximized main window state is remembered again.

Beta 31

  • Fixed glitching when seeking with smooth playback and CPU-heavy DSPs active.
  • Made image viewer maximized state remembered again.
  • Fixed status bar dark mode bugs with dim/highlight formatting.
  • Fixed File Operations dark mode glitching.
  • Fixed Converter bit depth vs lossy codec regression.
  • Verifier: Don't use decode postproc for AccurateRip checking.
  • Switched to 32-bit x86 installer for ARM foobar2000, was using 64-bit before. Fixes stall during install / regsrv32.exe forkbomb.
  • Removed the ability to toggle low-memory mode in 32-bit build, due heavy performance issues that it causes if toggled accidentally. Another way to toggle it will be added later, for now it's a hidden setting.

Beta 32

  • Fixed dark mode in "Batch attach pictures" dialog.
  • Resolved a disagreement with foo_openlyrics resulting in startup crashing.

Beta 33

  • Release candidate build.
  • Removed FFmpeg Monkey's Audio decoder which was incorrectly playing specific files, included latest Monkey's Audio library instead.
  • Made installer remember last used portable installations per CPU architecture.
  • Removed obsolete/meaningless verifier option for verbose AccurateRip output.

Beta 34

  • Release candidate build.
  • Fixed a timer manipulation issue that resulted in missing search query & autoplaylist refresh events when using time-based queries.
  • Fixed wrong scrollbar context menus in various places.
  • Fixed an internal regression that prevented Classic User Interface playlist from live-tracking title formatting configuration changes.
  • Added ctrl+del handling to various edit boxes.

Beta 35

  • Release candidate build.
  • Better detection of non-dark-mode-supported systems. Dark mode features disabled on Windows 10 older than 1809.
  • Dark mode: fixed scroll bars in dropdown lists not being darkened.
  • Fixed startup lockup with certain library viewer configurations.

Final

  • Fixed Converter beta 29 regression, an internal logic error caused 32bit fixedpoint audio being sent to some encoders instead of floatingpoint, mainly causing lossy-to-lossy transcoding errors.
  • That's it. I hope you all enjoy using foobar2000 v2.0.