Tuesday, January 9, 2024

Version 1.5.03 available

Version 1.5.03 is out, and here are the main improvements over its predecessor:

  • A long-standing bug causing crashes with network and USB drives has finally been fixed. (Hopefully it's the only bug leading to this crash, and this problem finally goes away.)
  • After a complete rewrite of the code that talks to MusicBrainz, querying it works again.
  • A number of UI glitches have been fixed.
  • Handling of files with long names has been improved, so now you get an explanation.
  • For those building the program themselves, the build system was switched to CMake and the build instructions updated.

Monday, November 27, 2023

New stable version - 1.4.01 and CMake for unstable

I finally found a little time to fix some things for MP3 Diags, so I'll be using the Unstable branch for this, meaning that I had to port most changes from the past years to the Stable branch.

There isn't much that changed (a new transformation and some bug fixes, here's the change log), but the size of the packaged program increased significantly due to a switch to a newer library - Qt 5. This is also pretty old, but it is what is currently used in Unstable and there is no urgency to update it.

There are no Linux binaries for this version, as nobody seemed to want them.

Regarding the Unstable branch, it now has experimental support for CMake, which will probably become the only means of building the project. This isn't in any release yet, but it is available in the source code at GitHub or SourceForge.

Sunday, April 7, 2019

Version 1.5.01 - port to Qt 5 and switch to git

I've been working on this for a while, but with long interruptions so it felt like it took forever. Well, the port to Qt5 is finally here.

For the program itself, there's nothing worth mentioning: just a detector of progressive JPEGs. Also, a bit of a downgrade: Now integration with both MusicBrainz and Discogs is disabled. It looks like this part needs a complete rewrite. Anyway, it's been a while since I saw either of them working, so disabling them seems better..

Things should be more interesting for developers and packagers (if any are still left):
  • I finally ported the code to Qt 5, so now it compiles on modern systems. Hopefully I fixed all the issues, but chances are some remain.
  • I switched to git, and now I publish the sources to both SourceForge and GitHub. It should be easier for others to make contributions
The build instructions are mostly the old ones, therefore incorrect. How fast I update them depends on how much interest there is for this to happen.

Also, right now there are no Linux binaries available from me for 1.5.01. I intend to look into providing them, but, again, it depends on interest.

So for now there are just the sources, except for Windows, which has binaries. The main reason to use the new binaries is if the current version has random bugs. The new one is built with many things that are different, and the code is now compiled with Visual Studio rather than MinGW, so switching to something else might make a difference. (Not necessarily the one you hoped for, though.)

Bugs are to be expected, as there have been significant changes to get Qt5 to compile, but hopefully nothing huge, and I'll try to address them.

Saturday, July 30, 2016

New versions - 1.2.03 and 1.3.04

There are new releases available, but not a whole lot has happened, at least in the unstable branch.

The arguably most important thing is that the code compiles now with GCC 6.

Then, as usual, the stable branch gets whatever was new in the previous unstable one while the unstable one gets a few small features and bug fixes, including:
  • There are now retries when a file read fails, which is supposed to help with crashes that happened to some users when using external (USB, network, ...) drives. Since I was never able to reproduce this, I'm not too confident that it will actually help
  • The non-ASCII file names when running mp3gain should show correctly on Linux systems
  • There's a new transformation: "Remove Xing or LAME streams from CBR files"
  • The "Sessions" button is always shown if there are more than 1 sessions

Sunday, March 8, 2015

Versions 1.2.02 and 1.3.03 released

New stable and unstable builds are available, but there isn't that much to say about them, especially about the stable one, 1.2.02.

1.2.02 simply got into the stable branch all the changes from 1.3.01, which are a few bug fixes that didn't affect most users, plus the acknowledgment that Discogs integration no longer works, so it got disabled.

Unstable version 1.3.03 has a few changes that may be more important:
  • Some error messages during / after crashes should make more sense
  • An additional cache is included in the hope of helping with speed (and maybe errors) when scanning external drives. As I don't have hardware that exhibits this issue, I don't know if it actually does any good. Perhaps reports from users will clear this up.
  • VBR files whose Xing/LAME headers incorrectly include themselves in the frame count are now treated differently, and they don't get deleted by "Repair VBR data". The reason is that such headers don't usually cause problems, even if they are wrong, and may contain useful information (like gapless play details) which until now got discarded by "Repair VBR data".

Thursday, July 17, 2014

Crash fix and Discogs integration disabled in 1.3.01

Due to Discogs API removing its XML interface and switching to a JSON-only format, MP3 Diags can no longer access Discogs. This integration will have to be rewritten. Until then, the button that was supposed to call Discogs is disabled, so users no longer try to access it only to see it fail.

There is also a fix for crash that occurred when trying to save very small images (containing just several pixels) in the tag editor.

Saturday, January 18, 2014

Note to packagers about translations

One thing I didn't mention in my previous post was that translations are available in the binaries that I provide but some changes may be needed when building binaries without using Install.sh or BuildBz2.sh. You should call MakeTranslations.sh to create some .qm files, then copy them somewhere the program can find, probably /usr/share/mp3diags/translations.

If the binary is in a folder <bin_folder>, the programs looks for translations in <bin_folder> and in <bin_folder>/../share/mp3diags/translations