Author Topic: OK to update out of date EXE + DLL FLAC files?  (Read 564 times)

LedHarvest

  • Newbie
  • *
  • Posts: 15
MusicBee appears to be running obsolete FLAC files from 2017. There have been many updates to FLAC EXE + DLL since then - see https://xiph.org/flac/changelog.html

I've just updated to the latest EXE and DLL from http://downloads.xiph.org/releases/flac/ and they seem to work OK (playing FLAC and Convert Format).

Anyone know any reason not to update these files? Or why MusicBee is running with files from 2017?

Zak

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 2466
Short answer is because the flac.exe version 1.3.2 included with MusicBee still works perfectly fine.

The majority of the latest changes are updates to the source code for people who need to compile their own libraries, or address very specific cases that won't affect MusicBee users in any significant way. The same is true for any codec now in wide use - I'm not aware of any recent updates to any codec that makes significant improvements for everyday file conversion tasks.

MusicBee uses the BASS libraries from www.un4seen.com for decoding audio - specifically bassflac.dll for FLAC files.
It only uses libFLAC.dll released by Xiph.org for writing tags to FLAC files, so there is no benefit in updating that.

You can replace the flac.exe encoder for converting other formats to FLAC if you like.
The release notes do mention some improvements in encoding speed and/or efficiency, so I ran a few comparisons on tracks of varying length. I also included the latest version of FFmpeg which would avoid the need for always updating separate codecs.
Converting WAV files to FLAC, using compression level 8

===================================================================================
TRACK #1 (Instrumental)
Duration: 2 min 56 sec

Encoder                  FLAC  1.3.2     FLAC 1.4.3                   FFmpeg 6.0
Encoding time (sec)      1.73            1.81         (+0.8 )         1.97
File size (bytes)        20,901,560      20,846,712   (-54,848)       20,931,474

===================================================================================
TRACK #2 (Instrumental)
Duration: 10 min 07 sec

Encoder                  FLAC  1.3.2     FLAC 1.4.3                   FFmpeg 6.0
Encoding time (sec)      10.11           9.57         (-0.54)         9.26
File size (bytes)        102,509,544     100,382,810  (-2,126,734)    100,988,236

===================================================================================
TRACK #3 (Rock)
Track Duration: 23 min 25 sec

Encoder                  FLAC  1.3.2     FLAC 1.4.3                   FFmpeg 6.0
Encoding time (sec)      22.08           19.79        (-2.29)         20.31
File size (bytes)        191,844,015     187,758,779  (-4,085,236)    188,249,082

===================================================================================
TRACK #4 (Classical)
Duration: 19 min 48 sec

Encoder                  FLAC  1.3.2     FLAC 1.4.3                   FFmpeg 6.0
Encoding time (sec)      8.68            7.24         (-1.44)         7.38
File size (bytes)        90,006,813      89,838,940   (-167,873)      90,265,725

Although there are some minor improvements, I wouldn't say it's a compelling reason to upgrade unless you regularly convert entire albums to FLAC from some other format, where it might save you a few seconds and/or megabytes. Any benefits would also be seen when ripping CDs to FLAC files.

A more thorough comparison across many different albums and genres would also give a better indication of average gains. Also, my computer is a few years old - newer architectures may perform quite differently.
Bee excellent to each other...

The Incredible Boom Boom

  • Sr. Member
  • ****
  • Posts: 1287
@Zak posted essentially the same thing while I had typed this up, then went to run some errands, but I don't want to waste the keystrokes, so...

Quote
Or why MusicBee is running with files from 2017?

MusicBee is in active development by a single, very busy person. Keeping up with minor updates to the various components needed to make it work is a largely unnecessary and time-consuming task. Reviewing the changelogs, there was have only been two releases, in my opinion, since 2017 that would warrant updating the FLAC encoder. I rarely ever use MB's encoding tools, so this isn't something as important to me. That being said, I would support updating FLAC to 1.4.3, as there have been some significant changes.
Last Edit: April 25, 2024, 12:35:58 PM by The Incredible Boom Boom

sveakul

  • Sr. Member
  • ****
  • Posts: 2487
I agree that updating flac.exe would not be a bad idea.  Those who do should keep in mind that the latest builds (like 1.4.3) also require the presence of the libFLAC.dll included with flac.exe in the download packages from Xiph in order to run properly; from the readme:

"The directories Win32 and Win64 contain 32-bit and 64-bit builds
respectively. Each directory contains flac.exe, metaflac.exe,
libFLAC.dll and libFLAC++.dll. The executables depend on libFLAC.dll
but not on libFLAC++.dll. If you just need the executables to work,
you can delete libFLAC++.dll."

I know there is already a libFLAC.dll in the main MusicBee directory for tagging, but I have the feeling you would still need the supplied newer version in the same directory as flac.exe for the 1.4.3 version to work properly.

FWIW, there is a unified build of flac.exe 1.4.3 that doesn't require presence of the separate dll available in the Foobar Free Encoder Pack (https://www.foobar2000.org/encoderpack).  After downloading the pack, extract the contents with 7-Zip and you'll find the flac.exe.

LedHarvest

  • Newbie
  • *
  • Posts: 15
you would still need the supplied newer version in the same directory as flac.exe for the 1.4.3 version to work properly.

That doesn't seem to be the case - I had only the exe in my codec folder and everything seems to have been working fine for the last year. Although, I did update the libFLAC.dll in the MusicBee.exe directory.

I just returned to this thread to post sources for various libraries that I've updated:

opusenc.exe - https://github.com/Chocobo1/opus-tools_win32-build
lame.exe - https://www.rarewares.org/mp3-lame-bundle.php
bassflac.dll - https://www.un4seen.com/download.php?bassflac24
flac.exe, libflac.dll - https://xiph.org/flac/download.html
mp3gain.exe - https://sourceforge.net/projects/mp3gain/files/mp3gain/ + https://mp3gain.sourceforge.net/download.php