Niente – A New FLAC Integrity Checker

I recently signed up to a Personal Backblaze cloud backup subscription. The product has some severe limitations: it only runs on Windows, for example; and it takes no notice of -and refuses to back up- anything a Windows PC is connected to via the network. It’s one huge saving grace, however, is that for US$55 per year, you get unlimited backup capacity. If, for example, you plug in a 12TB external hard disk via USB to your Windows PC… that counts as local storage and therefore gets backed up to Blackblaze within the personal backup allowance. Add two more 12TB USB drives to the PC and you’ve just got 36TB of cloud storage for peanuts!

Yes, not working on Linux is a bit of a drawback for someone who stopped using Windows at all in about 2016 (and had spent the 20 years before that trying to!)… but it’s not exactly hard to find an old PC and throw Windows 10 on it and then script something on Linux to push my music collection across to it. Once the music collection has been copied to the Windows PC, it heads off to the cloud, courtesy of Backblaze. I already have six copies of my music collection on various NAS devices and external USB drives. I even have an offline copy, on a pair of disks which only get plugged into a PC once a month for a refresh. But thanks to Backblaze, I now have an offsite backup. You know, for those times when the house catches fire or falls into a sinkhole. [...] 

Continue Reading

AMP Per-Cycle Pause

Today, I’m releasing yet another new version of AMP (version 1.28 if you’re keeping count).

It’s main reason for existence is that it contains a new feature: you have been able to get AMP to do multiple ‘cycles’ of play since the very earliest versions, by setting the ––selections=x run-time parameter. Replace ‘x’ with 2, for example, and AMP will randomly select one piece of music to play, play it from start to finish, then pick a second piece of music and play it from start to finish, and only then stop playing anything further. [...] 

Continue Reading

Another AMP Release

Just a day or two after the last one, there’s a new AMP release (version 1.27). I am heroically trying to reduce the rate of version releases, I hasten to add! But if I come across a bug that needs fixing, my hands are rather tied to making the fixes available as soon as possible!

Sure enough, whilst this releases introduces a useful new feature, it also fixes a quite significant bug I just encountered. [...] 

Continue Reading

The Loudness Wars…

Just a quick note to report that I’ve just released a couple of software fixes related to the problem of sub-optimal loudness levels in music files ripped from CDs or other sources.

Firstly, MAXV has been bumped to version 1.08, because of the addition of a tiny bux-fix that stops the grep utility sometimes thinking that what it’s being asked for is a binary file rather than a text file. It’s not a major deal, and if you choose not to upgrade, you probably won’t be missing out on much, as the bug raises its head only exceptionally rarely. But, it’s there if you want it. Run maxv ––checkver to get it. [...] 

Continue Reading

AMP Version 1.26 Released

Just a quick note to mention that I’ve today released a new version of AMP: version 1.26.

The new version contains a couple of new features, rather than any bug-fixes (for once!). Firstly, I’ve increased the maximum time-bar for a composer to 999 hours (up from the previous maximum of just 9 hours). That’s approximately 42 days, so by running amp ––timebar=999, you are effectively saying ‘don’t randomly select a composer for a new play that has previously had anything played within the past month or so’. Added as a new feature largely because I kept being offered Beethoven things to play and there’s only so much Beethoven a man can take one month at a time! [...] 

Continue Reading

Progress…

May has been a month of progress on something I made a New Year’s resolution to do (but then put off for four months!): catalogue the enormous pile of ripped CD files I’ve built up over the past year or so. Click on the graph at the left and you’ll see how I’ve done: I started the month with 485.1GB of music files sitting in the ‘temporary’ area of my hard disk (which has been pretty permanent for at least 2 years now!), in the form of 10,007 individual FLAC files. As of this afternoon, I’m down to 13.6GB and just 625 files. Most of that is a ‘collected works of Messiaen’ box set, which will take ages to catalogue and tag-up properly, because French is slow to type, what with all its accents (but maybe not as slow as German. And definitely way faster than Czech!)

Undertaking all this cataloguing has meant using my own CCDT tagging program, of course. As a result, I decided to make a couple of little changes to CCDT. The important one is a new run-time switch, called ––namereplace. Run CCDT with that in the launching command and CCDT changes the way it handles music files that already have a track title tag. [...] 

Continue Reading

CPU Shenannigans

Fresh from my war with a new mini PC (which I lost, you’ll recall), I remained determined to do something to upgrade my old workstation-class desktop PC. I bought it second-hand a few years ago: it’s a Dell Precision T3610, which is a bit of a monster, and was originally constructed (I think) in around 2012 or 2013: its warranty says it started in February 2014 and expired in February 2017, so it’s somewhere in that ball-park.

It shipped with a Xeon E5-1620 v2 CPU CPU, which was launched in the third quarter of 2013, so that also helps date the machine. That CPU has (inevitably, as far as Intel was concerned back then!) 4 cores and thus 8 threads when hyperthreading was enabled. Nothing too remarkable, but not exactly shabby, either. I think when I bought it, it came with 16GB of RAM: I soon bumped that up to 96GB. So, it’s not memory constrained either! It also shipped with an Nvidia Quadro K4000, which was cutting edge at the time, but has long since been eclipsed by newer graphics cards: since I don’t play games beyond Solitaire, however, I don’t particularly care how out-of-date my graphics capabilities are! [...] 

Continue Reading

Mishaps and Minisforum Mayhem

Yesterday was not a happy day!

At the end of April (the 23rd, to be precise), I took delivery of the small form factor PC you see at the left. It’s a “Minisforum UM250” and comes with 16GB RAM, a 512GB M2-SSD hard drive and an AMD Ryzen 8-core processor. It is my first brush with an AMD Ryzen processor, which I’ve been keen to get my hands on for quite some time… so I was pretty excited. I was concerned at how noisy a small form factor PC might be: the thermals in such a small space are not great, and my intention was to use this as my main music-playing PC, so quietness is quite important. A review I read on Ars Technica suggested the sound levels were acceptable, so I bit, paid up, and took delivery the very next day. [...] 

Continue Reading

tiny…

Yeah, I know I promised last time no more tinkering with AMP and the next release would be called version 2.

But version 1.22 is out anyway, representing a tiny, tiny, puny little bug-fix! [...] 

Continue Reading

AMP: Are we there yet?

I am aware that as new AMP feature follows new AMP feature, it can feel like a never-ending ride to who-knows-where, prompting the ‘Oh God, not another one!’ reaction, as well as the ‘Will it never end?’ one -as well as the one alluded to in the thumbnail at the right!

For the record, I think we are closing in on a feature-complete AMP that needs no major bug-fixes nor has use for substantial new pieces of functionality. [...] 

Continue Reading

CAO: A Bug Fix

A quick mention that CAO (“Composition-At-Once”) has been updated to fix a mildly serious bug.

CAO turns standalone FLACs into single-file ‘superFLACs’ with an embedded cuesheet, so you still know within the one big file where all the separate tracks are meant to start and finish. CAO can also use that same information to split a superFLAC apart back into its constituent single-file FLACs. It’s an important design requirement of CAO, in other words, that it should always be completely reversible: what it joins together, it should be able to split apart later, should the user so desire. [...] 

Continue Reading