fre:ac Developer Blog
fre:ac development status update 12/2016 Print
Written by Robert   
Wednesday, 28 December 2016 17:53

Merry Christmas and a Happy New Year everybody! Thank you for reading this fre:ac status update for December 2016!

It's been a long time since the last update as I've been busy with non-fre:ac related things for the greater part of the year. Thus, progress had been slow until about mid-November, but now we are on track again with two releases in the past four weeks and more to come.

20161129 snapshot release

The 20161129 snapshot mainly fixes an issue on OS X El Capitan that riddled me for almost the whole year.

Soon after the release of El Capitan, users started reporting that fre:ac would hang indefinitely when trying to query the freedb database. Unfortunately, I could not reproduce this on a virtual machine running El Capitan and a friend's MacBook still running Mavericks also showed no issues.

It turned out later that the issue occurred only on multi-core systems (which would probably be almost every system except for my virtual machine). I'm running different versions of OS X in VirtualBox VMs in order to test fre:ac on any OS X from Leopard through Sierra, but unfortunately, VirtualBox does not support more than one CPU core for OS X VMs. That's why that multi-core bug would never happen on my VM...

While trying to reproduce the issue once more in November, I stumbled upon a trick to make multi-core work in VirtualBox. It turned out it's as simple as assigning the VM a pre-Haswell CPUID and it will gladly run with lots of CPU cores. That way I could suddenly reproduce the issue on my own system (and finally run things like parallel conversions on modern OS X too) and fix it after only one or two days.

Besides that fix, the 20161129 snapshot updates codecs to the latest versions and fixes some issues with handling cover art.

fre:ac 1.0.27 and upcoming 1.0.28

After pushing out the 20161129 snapshot, I turned to the 1.0.x branch again and decided to make a new release with some fixes that stacked up in the past months. I originally planned to wait for the release of FLAC 1.3.2 which had been considered on the FLAC developer mailing list in January, but still not been released.

In the meantime (since the fre:ac 1.0.27 release) we finally had some FLAC 1.3.2 preview releases, though, and it looks like it will be ready in a couple of days. As soon as it's finished, I will make a fre:ac 1.0.28 release with the FLAC update and a fix for handling files with broken cover art tags.

Work for the next snapshot

The next snapshot will probably be ready in January and I can already confirm the following changes:

  • Reading cuesheets embedded in tags
    Some programs, like foobar2000, write cuesheets to Vorbis Comment or APEv2 tags when ripping CDs to a single audio file. The next snapshot release will be able to interpret such tags and display the individual tracks when loading such files.
  • More stability fixes
    Another issue affecting mainly the OS X version on multi-core systems has been found and fixed. This made fre:ac prone to crash when interacting with the UI while loading new tracks to the joblist.
  • Haiku port
    fre:ac running on Haiku OSAs a side-project, I ported fre:ac to the Haiku OS, an Open Source reimplementation of the 90ies BeOS operating system.

    Making such ports is fun and often uncovers bugs affecting other operating systems as well. In this case, the aforementioned stability issues on OS X have been discovered mainly because of the Haiku port.

This closes this fre:ac development status update. I will have some additional features and hopefully a new snapshot release to announce in the January issue.