Semplice - Changelog


This page describes the changes made in each point release of Semplice since its first release as version 1.00 in November 2022.

Release 1.02 - April 23rd 2023

  • Bugfix: Added xterm as an explicit dependency
  • Bugfix: NAMEBITS was not set on by default as it should have been. Now fixed.
  • Bugfix: When replacing album art, the prior art removal code was not quite right. Now fixed.
  • Enhancement: GPLv2 License can be displayed by taking a menu option
  • Enhancement: When tagging with non-square art smaller than 500x500, Semplice now just squares-up the album art to its largest dimension but doesn't try to enlarge it to a fixed 300x300.
  • Enhancement: PERFORMER tag was always COMMENT, cut off at first comma. Now it also strips out anything in brackets. So "Fred (piano), Bill (tenor)" now becomes "Fred", not "Fred (piano)" as before. The same is also true for colons. "Amadeus Quartet: Frank Smith" becomes "Amadeus Quartet".
  • Enhancement: Code to set the PERFORMER tag now finds the correct name, no matter what order it's listed in the COMMENT tag, using the surname in ALBUM to determine which name to pick.
  • Enhancement: AUTOBOOST can be set to 1, and this means taking Main Menu Option 14 will result in the automatic application of any detected possible volume boost, plus the automatic deletion of the original, unboosted source file.
  • Enhancement: Operations which themselves clean tags now prevent an extra, unnecessary tag cleaning task on program exit. That is, the 'q' option now cleans tags when it has to, not every time it's invoked.

There are some minor bugfixes in this version. There are also a number of enhancements related to the way Semplice automatically works out a PERFORMER tag without explicitly asking for it: it always chopped off the COMMENT tag at the first comma-delimited item. Now it can chop off at colons and strips out bracketed terms, so the PERFORMER tag should be 'cleaner' than before. The PERFORMER can now not be just the first item in the COMMENT tag, too, no matter how it's delimited. If ALBUM is set to (Bliss - 2020), then Semplice will now search for a delimited item containining the word 'Bliss' anywhere within the COMMENT tag. Thus, if COMMENT is set to "Vladimir Ashkenazy, Vienna Philharmonic Orchestra, Martin Bliss (clarinet)", then PERFORMER will be set to "Martin Bliss", even though he's the last-named individual. [...] 

Continue Reading

Installing Semplice on Raspbian for Raspberry Pi

1.0 Introduction

The Raspberry Pi single board computer is a remarkable piece of computing technology: about the size of a 2.5" solid state hard disk, the Pi 4B I'm using manages to pack in an ARM processor, 4GB RAM, gigabit Ethernet, twin USB 3 ports, twin USB 2 ports and twin HDMI outputs. It has, in short, everything required to be a capable (if slightly slow) home PC... for about £55. (That's the usual list price when the midget computers are actually in stock: they are currently in short supply worldwide right now, so prices have sky-rocketed to £150+, which makes them much less desirable as daily driver PCs). I think that's a good deal (when you can get it!) and what the Pi perhaps lacks in raw speed and CPU power, it greatly makes up for by running entirely silently: whilst you can certainly fit fans to keep things cool, a good case can keep the temperatures down entirely passively. In a music room, silence is definitely golden!

By design and default, a modern Raspberry Pi is generally kitted out with 'Raspbian' or 'Raspberry Pi OS', which is an ARM-specific port of Debian, packaged with an allegedly user-friendly front-end that makes Fisher-Price look advanced. I am not a fan of it, put it that way! On the other hand, it is lightweight enough to make the Pi feel quite 'snappy'. That maybe because it uses the LXDE desktop environment by default, rather than a heavyweight, 'conventional' desktop such as KDE. [...] 

Continue Reading

Semplice on Windows - Distilled

Here are the instructions on getting Semplice running on Windows 10, distilled into their most concise form. All you get are the instructions on what to type and what to do: no screenshots, no explanations -and if there's a sequence of actions that happen as a result of typing in something, you're supposed to know how to work through those by yourself!

If you want or need the long-form version that does take the time to describe things carefully, step-by-step and with pictures and explanations, click here[...] 

Continue Reading

Installing Semplice on Windows 10

1.0 Introduction

Running Semplice on Windows is not exactly difficult, but it's not trivially to document either! The basic premise is that Semplice is a Bash script and so Windows needs to be able to run Bash scripts for it to work on that platform. There are various ways that can be arranged, but in these days of Windows 10 and 11, the simplest is probably to install and run the Windows Subsystem for Linux, Version 2 -or 'WSL2' for short.

WSL2 is a fairly transparent way to run a real Linux distro 'within' Windows -and, in its most recent incarnations, it's fairly easy to get Linux programs that output graphics to 'pipe them' onto the Windows desktop. All that needs to be present on Windows for that to happen is an X server. [...] 

Continue Reading

Semplice's Persistent Configuration File

1.0 Introduction

Semplice's behaviour is controlled by the value assigned to a number of configuration parameters. Those parameters are contained within the persistent configuration parameter file, which is a plain text file stored within the $HOME/.local/share/semplice folder and called semplice.conf. A default parameter file is downloaded from this website whenever you first install Semplice. It can be edited at any time using your own preferred text editor (or by typing 'e' from the main Semplice program menu, which opens the file in whatever text editor the EDITOR environment variable has been set to). Changed parameters will be applied the next time the program is run.

Whenever you edit the persistent configuration parameter file, it's important that you make no changes whatsoever to the first 10 lines (the ones bounded by a double-lined box). Semplice validates the configuration file by assessing these ten lines. If you add so much as a full-stop or comma to any of the lines contained within that box, the configuration file will be declared invalid. If you accidentally invalidate your configuration file, you can simply delete the file completely: next time Semplice runs, it will download a fresh copy of the default configuration file, and you can start clean from there. [...] 

Continue Reading

Semplice Runtime Parameters

1.0 Introduction

Usually, Semplice is run by typing the bare command semplice. However, Semplice can also be invoked with the addition of one of three possible runtime parameters: that is, keywords prefixed with a doulbe-hyphen. These parameters trigger Semplice to do specific things which none of its main menu items allow for. They are not things you would commonly do, which is why no convenient menu options are available to trigger the same behaviour!

The three available runtime parameters are as follows: [...] 

Continue Reading

Semplice's Audio Codec Capabilities

1.0 Introduction

This site believes that classical music deserves to be listened to in the highest possible audio quality. It also believes in not using proprietary technologies to achieve that goal, wherever possible. Practically, that means it encourages you to store your classical digital music files in the FLAC (free, lossless audio codec) format. A FLAC file preserves the entire audio signal that was released by the record company. That contrasts with formats such as MP3 or OGG, which are lossy audio codecs: part of the audio signal is thrown away, though it's meant to be the part which most normal human ears couldn't hear anyway. Since MP3s and OGGs throw some of the audio data away at the point of their creation, they are usually significantly smaller than a FLAC of the same music (potentially, an MP3 can be around 10 times smaller than the corresponding FLAC). In the days of expensive, small hard disks, this size difference made MP3s attractive to music collectors; in the modern day of 6TB hard disks for less than £100, there is much less need to worry about storage space, and the higher audio quality associated with the FLAC format therefore ceases to be a concern.

On the other hand, I have a car audio player that can read an SD card, but only in FLAC, WMA and MP3 formats -and given the noisy environment of a car which renders the perfect audio quality of FLAC unnecessary, together with the limited storage space in most SD cards, I often find myself needing to copy a selection of music out of my main FLAC-based music collection and convert it to MP3 before copying the MP3 files onto an SD card. [...] 

Continue Reading

Volume Boosting with Semplice

1.0 Introduction

For reasons that needn't detain us, loudness (measured in "decibels", abbreviated as "dB") in music recordings is usually worked on a negative scale, where 0 dB is the loudest and -1 dB is a little bit quieter and -11dB is considerably quieter than that and so on. In theory, a CD recording should have its loudest music recorded at 0dB. That would be the theoretical maximum volume an audio signal could get without introducing 'clipping' or other distortion.

Quite often, however, and usually for various technical reasons to do with the need to prevent complex digital recording and processing equipment introducing audible artefacts into a music signal, CD recordings are sometimes mastered at levels much lower than 0dB. Famously, for example, SACD recordings are generally recorded with an absolute reduction in volume of around -6dB. The result is that an SACD recording ripped to a hard drive will sound considerably fainter than it really ought to. [...] 

Continue Reading

SuperFLACs

1.0 Introduction

Back at the beginning of January 2021, I wrote a blog post in which I deplored the tendency of classical music to be presented (on CDs, the radio and so on) as a series of 'tracks', rather than as a 'whole composition'. I pointed out back then that 78s didn't come with 'tracks' (though they were short-playing enough probably not to need any!), and that quite a lot of 33⅓ LPs also didn't. Tracks didn't really become a 'thing' until the invention of the CD -and they are totally inappropriate for classical music, anyway.

By this I mean: Beethoven didn't write four separate 'things' he threw together to make a symphony. He wrote a single symphony that happens to be comprised of four distinct, but related, movements. Accordingly, I would want my music collection to have a single 'item' for 'Symphony No. 5'. I might well be cognizant of the fact that it has 'sections' within it with names such as 'Allegro con brio' or 'Andante con moto', whose existence might be acknowledged by some piece of logical metadata; but I certainly wouldn't want to organise my physical music structures around the existence of movements. It's a bit like quarks in physics: they have no separate existence and cannot (should not, in the case of music!) be accessible individually. [...] 

Continue Reading

Semplice's Tagging Model

1.0 Introduction

One of the main reasons for Semplice to exist is its ability to 'tag' FLAC files with metadata describing the contents of the music contained within the FLAC. Semplice's first 9 main menu options are all geared to this end: each option allows you to type mostly free-form text describing the exact nature of the music being catalogued. You can specify its composer, the composition name, the performers on this particular recording... and so on.

Technically speaking, we don't 'tag FLACs': we add 'Vorbis Comments to FLACs' instead... but it amounts to the same thing and this guide will refer to 'tags' and 'tagging' henceforth. [...] 

Continue Reading

Installing Semplice on macOS

1.0 Introduction

Semplice has been tested to work on a physical Sierra Mac Mini, a physical Catalina iMac, the same iMac with Monterey installed and a Big Sur installation on a VirtualBox. I am therefore pretty confident that Semplice will run on any version of macOS (i.e., from 10.12 [Sierra] upwards), though I haven't tested every single one of them and I have no idea what will happen with anything Apple releases later in 2022 (I definitely have not tested on Ventura, for example, and will never be able to do so). However, anything which claims to be macOS and isn't one of the versions I've just listed has not actually been tested and I do not have the physical resources required to provide support on those macOS versions (unless you'd like to donate hardware that's capable of running those other versions: please get in touch if you do!) For similar reasons, I cannot say whether Semplice will run on M1 Macs: I've only ever used Intel chips.

Semplice has several package dependencies -that is, programs which must also exist on your Apple computer for it to be able to work. The simplest way of ensuring all those dependencies are installed correctly is to install them with a package manager called 'MacPorts'. Once MacPorts exists, installing almost any other piece of software is just a matter of issuing an appropriate 'port install... ' command. Note that if you have already installed MacPorts in order to get Giocoso (or Niente) working, you do not need to re-install it and can basically skip Sections 2 and 3 below and move straight on to installing Semplice and its software dependencies itself (see Section 4 below). [...] 

Continue Reading

What is Semplice?

1.0 Introduction

Semplice is an all-in-one digital music file management application for classical music (and it's pronounced Sém-pl-chay, with emphasis on the first syllable and the middle syllable more or less thrown away, or swallowed!): it lets you tag digital music files; merge them; split them; give them a volume boost; or convert them to and from different audio formats.

What makes Semplice a specifically "classical music" management application? Well, in truth it will tag, merge, split, volume boost or convert a file containing Polo G "music" equally as well as one containing some Beethoven or Mozart: it doesn't make moral judgments about the music files it's asked to work on (though this author might!). But Semplice talks of composers, compositions and performers, rather than 'albums', 'tracks' or 'songs' and 'artists'. Rather more fundamentally, it adheres to this site's view on how classical music files should best be tagged and what metadata belongs in which specific tags. Likewise, it only tags and manages FLAC files, not OGGs or MP3s because it believes classical music deserves to be heard in the best quality -and that mandates a lossless audio codec. Its author also believes in patent-free, open source, non-proprietary and platform-independent software wherever possible, so FLACs are in and ALACs are not. So no, it's not restricted to managing classical music files -but it's definitely aimed at people who 'do' classical music above any other form of music. [...] 

Continue Reading