<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.bbritten.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.bbritten.com/feed.php">
        <title>BBritten.com</title>
        <description>A Voyage Around My Ears</description>
        <link>https://www.bbritten.com/</link>
        <image rdf:resource="https://www.bbritten.com/_media/wiki/dokuwiki.svg" />
       <dc:date>2026-04-03T18:00:15+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.bbritten.com/composers"/>
                <rdf:li rdf:resource="https://www.bbritten.com/softwares/giocoso/changelog"/>
                <rdf:li rdf:resource="https://www.bbritten.com/blog/giocoso_version_3.37_released"/>
                <rdf:li rdf:resource="https://www.bbritten.com/softwares/niente/neninstall"/>
                <rdf:li rdf:resource="https://www.bbritten.com/softwares/semplice/seminstall"/>
                <rdf:li rdf:resource="https://www.bbritten.com/softwares/giocoso/gioinstall"/>
                <rdf:li rdf:resource="https://www.bbritten.com/articles/dshensmith"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.12.32.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.00.57.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=software%3Agiocoso%3Agiocosoico.png&amp;ns=software%3Agiocoso&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/articles"/>
                <rdf:li rdf:resource="https://www.bbritten.com/softwares/semplice/semchange"/>
                <rdf:li rdf:resource="https://www.bbritten.com/blog/semplice_version_2.13_released"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.18.31.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.01.23.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.00.13.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=software%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=software&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.52.13.png&amp;ns=blog&amp;do=media"/>
                <rdf:li rdf:resource="https://www.bbritten.com/blog/niente_version_5.05_released"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.bbritten.com/_media/wiki/dokuwiki.svg">
        <title>BBritten.com</title>
        <link>https://www.bbritten.com/</link>
        <url>https://www.bbritten.com/_media/wiki/dokuwiki.svg</url>
    </image>
    <item rdf:about="https://www.bbritten.com/composers">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-03T04:02:31+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>composers</title>
        <link>https://www.bbritten.com/composers</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;composer_catalogue&quot;&gt;Composer Catalogue&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
This index lets you access pages about the complete set of composers in my music collection -though, of course, it&amp;#039;s not a complete and definitive list of every composer who has ever lived! Each name is hyper-linked to a page dedicated to describing the particular composer and why they&amp;#039;re in my collection.
&lt;/p&gt;

&lt;p&gt;
At the last count, there are &lt;strong&gt;628&lt;/strong&gt; of them, so you&amp;#039;ll understand if most linked pages don&amp;#039;t contain complete and polished articles as yet. Currently, 19.61% of composer pages are in decent, properly-written shape. Hopefully, that percentage goes up to approaching 100% in a reasonable amount of time (but don&amp;#039;t hold your breath, please!): I&amp;#039;m tackling them in mostly alphabetical order. The presence of birth/death dates against a composer&amp;#039;s name indicates that a linked page &lt;em&gt;has&lt;/em&gt; been written for that composer.
&lt;/p&gt;

&lt;p&gt;
Whilst not a definitive list of composers, you should nevertheless regard this list as &amp;#039;prescriptive&amp;#039;: that is, it shows how you &lt;em&gt;should&lt;/em&gt; spell their names when tagging your own music CDs, even if people like Wikipedia or Last.fm beg to differ. Where appropriate, I explain the reasoning behind the choice of spelling. In most cases, it&amp;#039;s going to be because the &lt;strong&gt;&lt;a href=&quot;https://www.oxfordmusiconline.com/grovemusic/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.oxfordmusiconline.com/grovemusic/&quot; rel=&quot;ugc nofollow noopener&quot;&gt;New Grove Dictionary of Music and Musicians&lt;/a&gt;&lt;/strong&gt; begs to have the final word on the subject…
&lt;/p&gt;
&lt;hr /&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;plugin_wrap_start&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;0-&amp;quot;} --&gt;&lt;div class=&quot;wrap_compbuttons plugin_wrap&quot;&gt;
&lt;p&gt;
 |&lt;a href=&quot;https://www.bbritten.com/composers/acomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:acomp&quot; data-wiki-id=&quot;composers:acomp&quot;&gt;A&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/bcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:bcomp&quot; data-wiki-id=&quot;composers:bcomp&quot;&gt;B&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ccomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ccomp&quot; data-wiki-id=&quot;composers:ccomp&quot;&gt;C&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/dcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:dcomp&quot; data-wiki-id=&quot;composers:dcomp&quot;&gt;D&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ecomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ecomp&quot; data-wiki-id=&quot;composers:ecomp&quot;&gt;E&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/fcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:fcomp&quot; data-wiki-id=&quot;composers:fcomp&quot;&gt;F&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/gcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:gcomp&quot; data-wiki-id=&quot;composers:gcomp&quot;&gt;G&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/hcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:hcomp&quot; data-wiki-id=&quot;composers:hcomp&quot;&gt;H&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/icomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:icomp&quot; data-wiki-id=&quot;composers:icomp&quot;&gt;I&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/jcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:jcomp&quot; data-wiki-id=&quot;composers:jcomp&quot;&gt;J&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/kcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:kcomp&quot; data-wiki-id=&quot;composers:kcomp&quot;&gt;K&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/lcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:lcomp&quot; data-wiki-id=&quot;composers:lcomp&quot;&gt;L&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/mcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:mcomp&quot; data-wiki-id=&quot;composers:mcomp&quot;&gt;M&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ncomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ncomp&quot; data-wiki-id=&quot;composers:ncomp&quot;&gt;N&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ocomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ocomp&quot; data-wiki-id=&quot;composers:ocomp&quot;&gt;O&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/pcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:pcomp&quot; data-wiki-id=&quot;composers:pcomp&quot;&gt;P&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/qcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:qcomp&quot; data-wiki-id=&quot;composers:qcomp&quot;&gt;Q&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/rcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:rcomp&quot; data-wiki-id=&quot;composers:rcomp&quot;&gt;R&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/scomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:scomp&quot; data-wiki-id=&quot;composers:scomp&quot;&gt;S&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/tcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:tcomp&quot; data-wiki-id=&quot;composers:tcomp&quot;&gt;T&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ucomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ucomp&quot; data-wiki-id=&quot;composers:ucomp&quot;&gt;U&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/vcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:vcomp&quot; data-wiki-id=&quot;composers:vcomp&quot;&gt;V&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/wcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:wcomp&quot; data-wiki-id=&quot;composers:wcomp&quot;&gt;W&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/xcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:xcomp&quot; data-wiki-id=&quot;composers:xcomp&quot;&gt;X&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/ycomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:ycomp&quot; data-wiki-id=&quot;composers:ycomp&quot;&gt;Y&lt;/a&gt;|&lt;a href=&quot;https://www.bbritten.com/composers/zcomp&quot; class=&quot;wikilink1&quot; title=&quot;composers:zcomp&quot; data-wiki-id=&quot;composers:zcomp&quot;&gt;Z&lt;/a&gt;|
&lt;/p&gt;
&lt;/div&gt;&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;plugin_wrap_end&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;0-&amp;quot;} --&gt;&lt;hr /&gt;

&lt;/div&gt;

&lt;!-- cachefile /var/www/dokuwiki/data/cache/7/7d6a279cec231ee962420b9db361424e.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/softwares/giocoso/changelog">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-01T09:06:19+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>changelog - [Giocoso Version 3.38 - No current scheduled date] </title>
        <link>https://www.bbritten.com/softwares/giocoso/changelog</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;giocoso_version_3_changelog&quot;&gt;Giocoso Version 3 Changelog&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/beethoven99.png?w=220&amp;amp;tok=22e484&quot; class=&quot;medialeft&quot; align=&quot;left&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;220&quot; /&gt;
&lt;/p&gt;

&lt;p&gt;
The Changelog will record code changes to the release version of Giocoso Version 3 as they are themselves scheduled and, eventually, released.
&lt;/p&gt;

&lt;p&gt;
Changes are listed in reverse chronological order (i.e., the most recent releases appear first). 
&lt;/p&gt;

&lt;p&gt;
For the most part, the main user manual for Giocoso will not be updated to take account of program changes that the Changelog details. You need to read the user manual &lt;em&gt;in conjunction with&lt;/em&gt; this Changelog to get a full understanding of the &lt;em&gt;current&lt;/em&gt; program functionality and its capabilities. 
&lt;/p&gt;

&lt;p&gt;
Sometimes, I may go back and modify the user manual when changes appear to me to represent significant differences from the way the program was behaving when the documentation was originally written, but this is definitely not guaranteed.
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3 Changelog&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_3_changelog&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-882&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;giocoso_version_338_-_no_current_scheduled_date&quot;&gt;Giocoso Version 3.38 - No current scheduled date&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Fix&lt;/em&gt;&lt;/strong&gt;: Last release introduced a logo picture size parameter, governing the size of the &amp;#039;Beethoven with Headphones&amp;#039; image and defaulting it to 220&amp;times;220 pixels. On reflection, that is probably much too big for most standard monitor displays, so this release changes the default to 110&amp;times;110 pixels. It remains possible, of course, to set it to any square size you like: it&amp;#039;s just the &lt;em&gt;default&lt;/em&gt; size which changes.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Code modification&lt;/em&gt;&lt;/strong&gt;: Of no practical difference at all, the pieces of code which ensure new shell scripts are downloaded during updates of existing installations has been moved from one shell script to another. It works in exactly the same way as before, but is just differently located.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.38 - No current scheduled date&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_338_-_no_current_scheduled_date&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;883-1657&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;giocoso_version_337_-_march_31st_2026&quot;&gt;Giocoso Version 3.37 - March 31st, 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: The report on composers not played in past 60 days (Reporting menu, Option A) has been enhanced slightly with an additional column showing the number of &lt;em&gt;days.&lt;/em&gt; since that composer&amp;#039;s last play (previously, only a last-played calendar &lt;em&gt;date&lt;/em&gt; was shown: this is now also converted into a &amp;#039;number of days since now&amp;#039; display).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: There has long been an ARTSIZE parameter to control how large album artwork embedded into a set of FLACs should be displayed as music plays. It is expressed as a single number (say, 580) which is then treated as an instruction to resize the artwork to be displayed at 580 pixels wide by 580 pixels tall. Poor syntax implementation meant, however, that the resizing was not performed correctly in &lt;em&gt;both&lt;/em&gt; dimensions, but only in one. That has now been fixed. You will still end up with square imagery, sized in both dimensions to the one number of pixels specified in the configuration settings and with (deliberately!) no regard for aspect ratios; it will just now be done correctly!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: Two new persistent configuration parameters have been added to the configuration screen options: “Program Logo size” (defaults to 220 pixels) and “Program Logo position” (defaults to 0). This last parameter is entered as a negative [to move left] or positive [to move right] integer. For example, an entry of “-2” means &amp;#039;position the logo two characters to the left of its programmed starting position&amp;#039;. These parameters have been necessitated by the realisation that Retina and non-Retina displays render things very differently… and what looks perfect on my iMac looks awful on my Lenovo laptop! Tweaking these two parameters allows you to make the program look good no matter the screen you&amp;#039;re running on.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: The software licence is now viewable within a dialog form, rather than with the &lt;strong&gt;less&lt;/strong&gt; utility.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Enhancement / Bug-fix&lt;/em&gt;&lt;/strong&gt;: The logic for doing default searches of music to play (Option 1 on the Play Music) has been significantly revised. As explained &lt;a href=&quot;https://www.bbritten.com/blog/giocoso_random_music_selection_logic_bomb&quot; class=&quot;wikilink1&quot; title=&quot;blog:giocoso_random_music_selection_logic_bomb&quot; data-wiki-id=&quot;blog:giocoso_random_music_selection_logic_bomb&quot;&gt;in this blog piece&lt;/a&gt;, there was a bit of a logic bomb lurking in Giocoso&amp;#039;s random selection code. By ranking per-composer recordings &lt;em&gt;before&lt;/em&gt; deciding whether any recording qualified, on configured selection grounds, to be played, Giocoso was making it very hard for an eligible recording to be actually selected. The code change now makes all eligible recordings capable of selection, meaning that Giocoso will now more easily find a diverse set of qualifying recordings to play. In plain English, Giocoso&amp;#039;s random selection was previously failing to find things to play when it could and should have because it was doing things in a logically over-restrictive way. Now, that won&amp;#039;t be the case.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Modification&lt;/em&gt;&lt;/strong&gt;: The &lt;em&gt;Pro&lt;/em&gt; menu used only to be visible if you&amp;#039;d configured the IP address of a MySQL database that was acting as a Pro database. Now, the Pro menu &lt;strong&gt;item&lt;/strong&gt; is visible all the time, no matter what you&amp;#039;ve configured… but you won&amp;#039;t actually be able to move into the Pro menu unless your configuration is set to point to a Pro database. In other words, if you are sitting on the top &amp;#039;Administration&amp;#039; item, you&amp;#039;ll always &lt;em&gt;see&lt;/em&gt; something labelled “Pro”. If you haven&amp;#039;t configured a Pro server, however, if you tap the right-arrow button you will jump over the Pro menu item and land on &amp;#039;Quit&amp;#039;. Tap the left-arrow key and again you&amp;#039;ll jump over the Pro menu and land back on &amp;#039;Administration&amp;#039;.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Modification/Bug-fix&lt;/em&gt;&lt;/strong&gt;: Some menus have more than 9 items (for example, Reporting, which had items A and B in addition to nine numbered items). Those extra items were inadvertently assigned letters which conflict with the top-menu items: for example, tapping &amp;#039;A&amp;#039; to produce the &amp;#039;Composers not played in past 60 days&amp;#039; report conflicted with the &amp;#039;A&amp;#039; for Administration menu move. That has now been resolved by making sure 10th and subsequent items do not use letter shortcuts that conflict with anything else. An altogether worse bug was that if you ever landed on the Pro menu, no other top menu options worked: you could tap &amp;#039;D&amp;#039; to jump to the Database Management menu and absolutely nothing would happen! That has now been fixed.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: The &lt;strong&gt;Administration&lt;/strong&gt; menu gets a new &lt;strong&gt;Option 8: Change the program colour scheme&lt;/strong&gt;. This brings up a form that lets you assign colour numbers to each of the Giocoso program display elements and thereby change the look of the program to something that suits you better than the defaults I designed it with:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-27_at_17.47.14.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-27_at_17.47.14.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-27_at_17.47.14.png?w=600&amp;amp;tok=cd8231&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Here, for example, I&amp;#039;m saying I want the Program logo and boilerplate text to appear bright red, rather than it&amp;#039;s default &amp;#039;normal cyan&amp;#039;. The result would be a rather garish confection like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-27_at_17.50.07.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-27_at_17.50.07.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-27_at_17.50.07.png?w=600&amp;amp;tok=4a7737&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Giocoso is thus brought into line with all my other software programs and now thereby caters to those users who don&amp;#039;t use jet-black terminal emulator colour profiles.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.37 - March 31st, 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_337_-_march_31st_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1658-6837&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;giocoso_version_336_-_march_18th_2026&quot;&gt;Giocoso Version 3.36 - March 18th, 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: Giocoso is written in the United Kingdom, where we expect numbers to be written as “1.43”, using a full-stop as the decimal point. Trouble is, anyone using Giocoso in Europe (for example) would expect that to be written as “1,43” with a comma as the decimal point. European operating systems presented with “1.43” will declare it to be an invalid number and mayhem results. This has recently come to light as an example of UK small-mindedness (and my inability to think globally) as a result of a user in Germany (or at least, using a German locale on a Tuxedo &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;) encountering an &amp;#039;invalid number&amp;#039; error when trying to implement Giocoso&amp;#039;s ReplayGain functionality. This has now been corrected, by forcing Giocoso to use a locale in which full-stops are regarded as &amp;#039;correct&amp;#039;, no matter what the wider operating system may think. My thanks to Helmut for the bug report and working with me to confirm the nature of the problem and success of the fix. If users in other non-UK lands have equally exotic number representation issues, this fix should resolve it for them too. 
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: Tiny issue, but the Aggregate Statistics report mentioned &amp;#039;Stat&amp;#039; in one section and &amp;#039;stat&amp;#039; in another: the inconsistency in capitalisation has now been resolved.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: When reporting a completed play to the Giocoso Pro database, macOS would not identify itself correctly, resulting in the os_type column in the GLOBAL_PLAYS table remaining blank. It now reports &amp;#039;macOS &lt;em&gt;xxxxx&lt;/em&gt;&amp;#039; correctly, where the &amp;#039;xxxxx&amp;#039; bit will be &amp;#039;Tahoe&amp;#039;, &amp;#039;Sequoia&amp;#039;, &amp;#039;Sonoma&amp;#039;, &amp;#039;Ventura&amp;#039; and so on.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: MacOS can now do PulseAudio playback. That is, you can run Giocoso on your desktop iMac or Mac Mini and have the audio play via some other PC anywhere on your network. It&amp;#039;s a bit fiddly to configure (article incoming!!), but so long as your Mac has the environment variable PULSE_SERVER set, and has a version of ffmpeg installed that works with PulseAudio, and there&amp;#039;s a remote PC configured to act as a PulseAudio server, then you press play on the iMac and the sound comes out via a Debian box or an Arch PC.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: Not specific to macOS at all, but a consequence of me tinkering with the code required to achieve PulseAudio playback generally, even on Linux: there is a new configuration parameter:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-12_at_15.49.29.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-12_at_15.49.29.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-12_at_15.49.29.png?w=600&amp;amp;tok=9e699b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
This is under the &amp;#039;text entries&amp;#039; parameters: &lt;strong&gt;PulseAudio Server IP Address&lt;/strong&gt; is the IP address of the PC to which you wish your music playback to be directed over the network. It works in conjunction with the later (and long-existing) yes/no parameter to &lt;em&gt;Force the use of PulseAudio&lt;/em&gt;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-12_at_15.51.25.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-12_at_15.51.25.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-12_at_15.51.25.png?w=600&amp;amp;tok=4187df&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
In all earlier releases of Giocoso, if you set &amp;#039;force PulseAudio&amp;#039; to yes, the server to which audio would be sent would be dictated by whatever you had manually remembered to set with the PULSE_SERVER environment variable before you even launched Giocoso. Now, the IP address you set for the new &amp;#039;PulseAudio IP Address&amp;#039; will &lt;em&gt;override&lt;/em&gt; any environment variable you may have set. Note that if you type an invalid IP address entry into this new parameter field, it is ignored: type “192.168.137.876”, for example, and no valid PulseAudio server will have been specified at all. 
&lt;/p&gt;

&lt;p&gt;
Also note that if you set a valid value for the Server IP address, but do not &lt;em&gt;also&lt;/em&gt; set &amp;#039;force PulseAudio&amp;#039; to yes, then the IP address is ignored: audio being transmitted over the home network requires &lt;strong&gt;both&lt;/strong&gt; parameters to be set, not just one. New documentation for this feature is being prepared: PulseAudio is a complex subject! The new parameters do allow, however, for a powerful desktop PC to be the &amp;#039;playing PC&amp;#039;, but for sound to be heard coming out of a relatively trivial Raspberry Pi that happens to be hooked up to your DAC, amplifier and speakers! Being able to modify the IP address &amp;#039;inside&amp;#039; Giocoso also makes it convenient to broadcast audio to a variety of &amp;#039;player PCs&amp;#039; dotted around your house. If you need music playing in your greenhouse, you can set the IP address to 192.168.0.52; you come back inside and need music in your kitchen, just adjust the IP address to 192.168.0.76 and hit &amp;#039;play&amp;#039; once more… Sort of like a Sonos multi-room capability, but without the huge cost or proprietariness!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant New Feature&lt;/em&gt;&lt;/strong&gt;: A minimal player mode has been created:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_17.59.28.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-14_at_17.59.28.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_17.59.28.png?w=400&amp;amp;tok=e0f643&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
This is essentially a cut-down Play menu that lets you initiate a &amp;#039;default play&amp;#039; only: no filtered search allowed, no playing music directly in a folder, etc., etc. You get a standard, randomised search for something to play that depends on what you&amp;#039;ve configured in your persistent configuration file (and which requires the full-blown Giocoso interface to modify). Once play has been initiated, the display changes to this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-13_at_11.02.18.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-13_at_11.02.18.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-13_at_11.02.18.png?w=400&amp;amp;tok=2bcdc6&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You get to see information about the music playing but you don&amp;#039;t get any album art or play duration/countdown data as you would in the full-blown Giocoso interface: this is for kicking off music playback using a mobile telephone or tablet, on a remote device, over ssh. Usually such terminal emulators don&amp;#039;t handle graphics display in-terminal at all, so the lack of graphics components in this display is completely deliberate. The lack of a countdown timer is more a function of the lack of space on such terminal displays, to be fair!
&lt;/p&gt;

&lt;p&gt;
This new player mode essentially takes the place of Mgiocoso, which is now therefore deprecated (it&amp;#039;s still there for now and works as ever it did, but it will be removed in a future version). The new feature is enabled by running the command &lt;strong&gt;minig&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: Related to this new mini-player mode, the “Set up PulseAudio Server details” allows you to configure up to five &amp;#039;audio sinks&amp;#039;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_18.01.23.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-14_at_18.01.23.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_18.01.23.png?w=400&amp;amp;tok=4ba353&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Free-form text labels are paired with IP addresses (and stored in the &lt;strong&gt;local&lt;/strong&gt; Giocoso database as the table PULSESINKS). These can then be used when taking the new mini-player option 1, to &lt;em&gt;select&lt;/em&gt; a PulseAudio sink to &amp;#039;play to&amp;#039;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/softwares/giocoso/screenshot_2026-03-14_at_18.04.08.png&quot; class=&quot;media&quot; title=&quot;softwares:giocoso:screenshot_2026-03-14_at_18.04.08.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/softwares/giocoso/screenshot_2026-03-14_at_18.04.08.png?w=400&amp;amp;tok=f335cc&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
If your Giocoso installation is configured to use PulseAudio, whatever server/sink you select on this screen &lt;em&gt;overrides&lt;/em&gt; the one exported as the PULSE_SERVER in your shell environment and the one configured in the new Giocoso persistent parameter file, for the purposes of music playback initiated by the mini-player. In other words, there&amp;#039;s a hierarchy of specifying which PulseAudio server receives this Giocoso&amp;#039;s audio stream: the PULSE_SERVER environment variable, over-ridden by the new configuration parameter setting, over-ridden by this mini-player setting.
&lt;/p&gt;

&lt;p&gt;
Note that if you &lt;strong&gt;don&amp;#039;t&lt;/strong&gt; set &amp;#039;force the use of PulseAudio&amp;#039; to &amp;#039;yes&amp;#039; in the main configuration file, it won&amp;#039;t matter what PulseAudio server you pick here: playback will always be directed to the &lt;em&gt;local&lt;/em&gt; machine on which the miniplayer is running. Only when PulseAudio is forced will the server selection kick in and direct playback to whatever sink/server you&amp;#039;ve specified.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: On the &lt;strong&gt;Reporting&lt;/strong&gt; menu, Option A is said to list &amp;#039;Composers not played in the past 60 days&amp;#039;. The report then went on to list composers not played in the past &lt;em&gt;120&lt;/em&gt; days. The report code has been adjusted to match what the menu says it will list!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Changed Feature&lt;/em&gt;&lt;/strong&gt;: This is possibly a bug-fix too! I&amp;#039;ve long known that if your terminal didn&amp;#039;t use a jet-black background then the Giocoso program logo would appear awkwardly in the terminal:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_21.34.58.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-14_at_21.34.58.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_21.34.58.png?w=600&amp;amp;tok=97da0d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The issue is simply that I put that logo together in some art package or other from &amp;#039;components&amp;#039; lying about the place without a lot of thought… and it&amp;#039;s black background thus got &amp;#039;baked&amp;#039; in-place for evermore, meaning it sticks out like a sore thumb when your terminal background &lt;em&gt;isn&amp;#039;t&lt;/em&gt; jet black to match. It&amp;#039;s not exactly a show-stopper, but it&amp;#039;s less than great for light-background terminals and the like. So: welcome to the new, almost-completely text-based logo:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/softwares/giocoso/screenshot_2026-03-14_at_21.45.40.png&quot; class=&quot;media&quot; title=&quot;softwares:giocoso:screenshot_2026-03-14_at_21.45.40.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/softwares/giocoso/screenshot_2026-03-14_at_21.45.40.png?w=600&amp;amp;tok=9dc988&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
I am not a fan of &lt;abbr title=&quot;American Standard Code for Information Interchange&quot;&gt;ASCII&lt;/abbr&gt; art, but at least it keeps everything completely text-based and thus truly independent of the terminal background. Other terminal colour schemes work well, too:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/screenshot_2026-03-14_at_21.47.54.png&quot; class=&quot;media&quot; title=&quot;software:screenshot_2026-03-14_at_21.47.54.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/screenshot_2026-03-14_at_21.47.54.png?w=600&amp;amp;tok=778a11&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
But some will still be a disaster -but not for particularly logo-related reasons:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_21.48.39.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-03-14_at_21.48.39.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-03-14_at_21.48.39.png?w=600&amp;amp;tok=c9519d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
This is not the logo looking odd but the entire colour scheme of the terminal working against Giocoso&amp;#039;s choice of text colours. The only fix for that remains choosing a different terminal colour profile, I&amp;#039;m afraid!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.36 - March 18th, 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_336_-_march_18th_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;6838-15914&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;giocoso_version_335_-_february_22nd_2026&quot;&gt;Giocoso Version 3.35 - February 22nd, 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: Reports were re-coded carefully to work on macOS in Version 3.34… &lt;em&gt;provided&lt;/em&gt; you were using Giocoso Pro features! If you were only using a local database, then some of the reports would have failed to display properly. Now fixed: all reports run perfectly on macOS in both local and Pro modes.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: A new Report (&lt;strong&gt;Option A&lt;/strong&gt; on the Reporting menu) has been created that lists all composers who haven&amp;#039;t been played within the past 120 days (an arbitrary cut-off point, I&amp;#039;ll admit): these might be composers you want to force playback for.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: Further improvements in code to make Giocoso a first-class macOS citizen! A specific example: being able to tap the &amp;#039;B&amp;#039; key on any menu and have Sqlitebrowser launch, if that program is already installed. You could do that only on Linux before, but now it works on macOS, too.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Enhancement&lt;/em&gt;&lt;/strong&gt;: Giocoso&amp;#039;s reporting capabilities have been overhauled. All reports now output as &lt;abbr title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/abbr&gt; to your system&amp;#039;s default browser, with polished and responsive formatting. For example:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-13_at_19.06.43.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-13_at_19.06.43.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-13_at_19.06.43.png?w=650&amp;amp;tok=a57f1f&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: You now no longer have to remember that Pro table names have a global_ prefix when doing Advanced SQL Reporting (&lt;strong&gt;Reporting&lt;/strong&gt; menu, &lt;strong&gt;Option 5&lt;/strong&gt;). In previous versions, you had to know that when querying in global mode, it was “select * from &lt;strong&gt;global_plays&lt;/strong&gt;”, but in local mode it&amp;#039;s just “select * from &lt;strong&gt;plays&lt;/strong&gt;”. Similarly, you had to know whether you were supposed to be querying &lt;strong&gt;global_recordings&lt;/strong&gt; or just &lt;strong&gt;recordings&lt;/strong&gt;. That&amp;#039;s all handled for you now: if you query “global_plays” when in non-Pro mode, your query will be silently re-written to mention “plays”. Likewise, querying “recordings” or “plays” when in Pro mode, your SQL will be silently re-written to refer to “global_recordings” or “global_plays”. The short version is that if all your queries mention just “plays” and “recordings”, they&amp;#039;ll work no matter which reporting mode you&amp;#039;re in.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: A new configuration parameter has been created to allow you to specify your preferred browser in which to open Giocoso reports:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_20.52.36.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-14_at_20.52.36.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_20.52.36.png?w=600&amp;amp;tok=6be671&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The new parameter is the last one on the first page: &lt;strong&gt;Preferred browser&lt;/strong&gt;. If you leave this field blank, Giocoso will use whatever your system&amp;#039;s default browser is. If you specify a name here, however, as I have done, then that will be the browser Giocoso uses instead (if it exists). If you name a browser that doesn&amp;#039;t exist (for example, you accidentally type “fyrefox”) then Giocoso will fall back to using the system&amp;#039;s default browser instead. This flexibility means that the new reporting functionality might produce results like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_20.51.40.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-14_at_20.51.40.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_20.51.40.png?w=600&amp;amp;tok=0fe370&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…or like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_21.00.16.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-14_at_21.00.16.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-14_at_21.00.16.png?w=600&amp;amp;tok=3e05cc&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
It&amp;#039;s the same data, just presented by (in the first case) Firefox and (in the second) w3m browsers: the option to keep things within the terminal window is still there, in other words. Incidentally, w3m has become a dependency of Giocoso&amp;#039;s: it will attempt to install it as part of its own install, though if it cannot do so for one reason or another, reporting capabilities will not be compromised.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;New Feature&lt;/strong&gt;&lt;/em&gt;: A new selection filter has been added to the form you see when you take the &lt;strong&gt;Play Music&lt;/strong&gt; menu, &lt;strong&gt;Option 2&lt;/strong&gt;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-16_at_17.30.49.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-16_at_17.30.49.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-16_at_17.30.49.png?w=600&amp;amp;tok=5fafa9&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The new filter says “Find me composers who haven&amp;#039;t been played in X number of days and play some of their music for me”. It is an unusual filter in one sense because it &lt;em&gt;negates&lt;/em&gt; every other filter you may have set on the form. That is, it cannot be combined with any of the other filters: if you set the &amp;#039;play me long-unplayed composers&amp;#039; filter &lt;strong&gt;and&lt;/strong&gt; the &amp;#039;where the maximum duration is 60 minutes&amp;#039;, you will get long-unplayed composers&amp;#039; music however long it plays for. The maximum duration filter will be silently ignored (and so will any other filter you may have set).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: A new “timeout” parameter has been applied to all attempted connections to a Pro database (when one is in use, obviously). If your network was dodgy or you accidentally specified the wrong IP address for the Pro database, Giocoso would keep locking up and being unresponsive for up to around 10 seconds, until the database connection attempt failed (ask me how I know!). A new “connection-timeout” of 1 second has been applied to all attempts at connecting to a Pro database, so there is now only a momentary wait before the connection fails. This doesn&amp;#039;t much help you, of course, in the sense that not being able to connect to a Pro database rather spoils the fun of using Giocoso Pro: nothing works! But at least your system doesn&amp;#039;t now just appear to hang for no apparent reason.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: A streamlined upgrade procedure has been implemented. It&amp;#039;s simpler and faster than before.
&lt;/p&gt;

&lt;p&gt;
There has been quite a flurry of new Giocoso releases lately: that&amp;#039;s largely a function of the fact that I&amp;#039;ve been getting it to work on macOS and, in the process, tidying up quite a few long-standing irritations. I think it fair to say that this phase is now over: I will certainly keep releasing new versions as the need arises (and bugs are pointed out to me!) but, as of right now, I&amp;#039;m fairly convinced that Giocoso is working as I want it to, on all the platforms I need it to, and I don&amp;#039;t, therefore, anticipate very many new releases in the immediate future. 
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.35 - February 22nd, 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_335_-_february_22nd_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;15915-21622&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;giocoso_version_334_-_february_8th_2026&quot;&gt;Giocoso Version 3.34 - February 8th, 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement/New Feature&lt;/em&gt;&lt;/strong&gt;: Giocoso has acquired ReplayGain playback capability. &lt;a href=&quot;https://en.wikipedia.org/wiki/ReplayGain&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://en.wikipedia.org/wiki/ReplayGain&quot; rel=&quot;ugc nofollow noopener&quot;&gt;ReplayGain&lt;/a&gt; is a standard way of describing how much to boost an audio signal by &lt;em&gt;at playback time&lt;/em&gt;, dynamically, with the information stored in special metadata tags. If enabled in the program configuration settings, Giocoso will now read the REPLAYGAIN_ALBUM_GAIN tag and apply the value it has been assigned to increase the playback volume by that amount. For example, when shown this set of FLACs:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-19_at_20.04.07.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-01-19_at_20.04.07.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-19_at_20.04.07.png?w=600&amp;amp;tok=d287a1&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…Giocoso will automatically play the music back with a +10.73dB volume boost (although it applies a hard cap, so that only a boost of +7.5dB will take place: this avoids making too dramatic a volume change to something the recording engineer presumably mastered excessively quietly for a reason).
&lt;/p&gt;

&lt;p&gt;
To support the new functionality, the Administration menu, Option 2 Create or Edit the Configuration file gets a new option:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-01-19_at_21.37.20.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-01-19_at_21.37.20.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-01-19_at_21.37.20.png?w=650&amp;amp;tok=9a22f5&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The parameter takes a value of yes or no: &lt;strong&gt;no is the default&lt;/strong&gt;. If set to yes &lt;em&gt;and if the first FLAC in a folder contains a REPLAYGAIN_ALBUM_GAIN metadata tag&lt;/em&gt;, then the appropriate volume boost will be dynamically applied. If set to no &lt;em&gt;or&lt;/em&gt; there is no REPLAYGAIN_ALBUM_GAIN tag, then no dynamic volume boost will take place.
&lt;/p&gt;

&lt;p&gt;
Playback of music will now show whether ReplayGain is being applied or not:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-04_at_16.51.43.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-04_at_16.51.43.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-04_at_16.51.43.png?w=650&amp;amp;tok=ed3c25&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The last line of descriptive text on the left of the screen will say &amp;#039;ReplayGain Applied: None“ if no REPLAYGAIN_ALBUM_GAIN tag exists or if the new configuration parameter is set to a value of “no”.
&lt;/p&gt;

&lt;p&gt;
Note that ReplayGain uses a completely different acoustic model than simply boosting a FLACs audio to its maximum loudness without distortion. As a result, if you&amp;#039;ve previously volume boosted your FLACs using Semplice&amp;#039;s &amp;#039;real&amp;#039; mode, you may well now see this happen when playing those FLACs in Giocoso:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-04_at_17.26.13.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-04_at_17.26.13.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-04_at_17.26.13.png?w=650&amp;amp;tok=bbee22&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
That ”-0.18 dB“ Replay “gain” tells you that the physical FLAC has been boosted to a non-distorting loudness that ReplayGain considers too loud. That&amp;#039;s absolutely fine: it doesn&amp;#039;t mean the physical volume boost has done any harm to your FLACs. They are simply too loud for ReplayGain&amp;#039;s taste (which is hard-coded to think that an 89dB volume is just fine).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: The &lt;strong&gt;mgiocoso&lt;/strong&gt; script now displays what ReplayGain (if any) has been applied for playback of the currently-playing FLAC:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-22_at_18.50.26.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-01-22_at_18.50.26.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-22_at_18.50.26.png?w=400&amp;amp;tok=8814b2&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
If no ReplayGain is being applied, the line will display a value of “none”.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Interface Change&lt;/em&gt;&lt;/strong&gt;: The program display has been modified slightly during playback of music, as you&amp;#039;ve seen in the above screenshots. The composition details are now delineated apart from the &amp;#039;recording details/history&amp;#039; part of the display. A new “days since last played” item of data also makes an appearance (which will also display an approximate conversion into a years-since-last-played figure, if it&amp;#039;s been more than 365 days), as well as the new ReplayGain data.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Bug Fixes&lt;/em&gt;&lt;/strong&gt;: Various fixes to code have been implemented to allow Giocoso to run on the latest versions of macOS running on Apple Silicon chips and using Homebrew packages to satisfy software dependencies. In particular, it was discovered that the default ImageMagick installation on these more modern Macs could not do text manipulation and would trigger Giocoso to fail in ugly ways. That is all now handled by the Giocoso installation script and by subtler code dealing with the production of the &amp;#039;caption bar&amp;#039; under any album art that is displayed during playback. On macOS, album art captions are now always coded to use the built-in Palatino font.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fixes&lt;/em&gt;&lt;/strong&gt;: The &lt;strong&gt;Reporting&lt;/strong&gt; menu, &lt;strong&gt;Options 6, 7, 8 and 9&lt;/strong&gt; had a bug in them that prevented reports from displaying at all on macOS (because they used a Linux-ism to open the reports in the system&amp;#039;s default browser). That has now been resolved and those reports will now also open in macOS&amp;#039; default browser, too.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: Not that anyone would really notice, but the code controlling the playback of music has been re-factored to make maintenance easier in the future. 
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Major Enhancement&lt;/em&gt;&lt;/strong&gt;: Mgiocoso is Giocoso&amp;#039;s optional “control panel”: you run it on a mobile device, for example, to be able to send control commands to a playing Giocoso session (i.e., tell it to pause, resume, autostop or terminate etc). If you need the functionality (such as being able to see precisely what is playing on a headless Raspberry Pi that&amp;#039;s playing away in a drawer), it&amp;#039;s a nice tool. It was written in a hurry, however, and the display &amp;#039;flashed&amp;#039; repeatedly every 5 seconds as the thing re-checked what the playing session was doing. The whole thing has now been re-written to be much more intelligent about when it updates its display. It also acquires “ReplyGain” and “Days since last play” data in its display. Mgiocoso now runs properly on macOS, too:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-05_at_18.43.58.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_2026-02-05_at_18.43.58.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_2026-02-05_at_18.43.58.png?w=650&amp;amp;tok=248798&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: If you are running in Pro mode, a fast refresh to pick up new recordings has always triggered a &lt;em&gt;complete&lt;/em&gt; re-build of the Pro server&amp;#039;s copy of the recordings table. This means you discover 3 new recordings locally… but then have to endure loading 17000 records to the Pro server over the network! The new feature in this release of Giocoso is that fast refreshes only load the newly-discovered recordings to the remote database. If it happens that the global database knows about recordings that no longer exist in the local database (perhaps because you moved them to a different physical path or re-tagged them) then the fast refresh process now also deletes out the &amp;#039;unwanted&amp;#039; recordings from the global database, thereby keeping local and remote databases &amp;#039;in sync&amp;#039;. The result is a considerably faster remote data load. Full local refreshes still completely re-load the remote database, of course.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.34 - February 8th, 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_334_-_february_8th_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;21623-27937&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;giocoso_version_333_-_january_1st_2026&quot;&gt;Giocoso Version 3.33 - January 1st, 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: The font size used to generate the captions for display under the album art display when music is playing has always been fixed (at 14 or 16pt, depending on certain factors). On high-resolution screens or when Kitty graphics are used to do the artwork display, this is problematic: the caption text tends to come out much too small when you start increasing the display size of the artwork itself. This is now not the case. Giocoso will now take the configured artwork display size (for example, 500, meaning “500px x 500px), divide by 100 (i.e., 5 in this case) and multiply by 4 to give a final text size of 20pt. Change the artwork size to, say, 600&amp;times;600 and the caption text point size will become 24pt (i.e., 6*4). This seems to yield acceptable results on all manner of screen resolutions and with varying artwork size configurations. On a related note, the caption panel itself was also always previously fixed at 45 pixels tall: that looks absurdly small when album art is displayed at sizes of 600 or more pixels. Accordingly, it too is now sized dynamically to be as wide as the album art work and as tall as 10% of that. That is, if you set album art to display at 600 pixels, the caption bar will be 600 pixels wide and 60 tall; set a size of 475 and the caption bar will be 475&amp;times;47 and so on.
&lt;/p&gt;

&lt;p&gt;
The difference is subtle, but apparent:
&lt;/p&gt;

&lt;p&gt;
Here&amp;#039;s the before-shot, when caption bar height and text point size were fixed:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.00.57.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2025-12-16_at_14.00.57.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.00.57.png?w=650&amp;amp;tok=7eff27&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…where I think we can agree that the two-line caption under the album art is a bit spidery, a tad small and quite hard to read. And here&amp;#039;s the revised version:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.02.14.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2025-12-16_at_14.02.14.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.02.14.png?w=650&amp;amp;tok=5bcd38&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…where the caption is taller, the text is in a larger font and it&amp;#039;s all a bit more legible.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fix&lt;/em&gt;&lt;/strong&gt;: From the screenshots above, you&amp;#039;ll notice that Giocoso, when running on macOS, was not doing a very good job at presenting the &amp;#039;Selection 2 of 2&amp;#039; data in the top right-hand corner of the program display. There, you&amp;#039;ll see it padding the first number with zeroes and the second with spaces …and padding with enough spaces or zeroes to represent a 5-digit number in each case. Not a good look …and entirely down to the variables involves being treated as strings, not numbers. This has now been corrected, and Giocoso on macOS displays the counts much more appropriately:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.57.50.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2025-12-16_at_14.57.50.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2025-12-16_at_14.57.50.png?w=650&amp;amp;tok=e81e68&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancements&lt;/em&gt;&lt;/strong&gt;: Other minor tweaks and improvements to the way Giocoso installs and runs on macOS have been made, in light of further testing on more modern &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; releases, and with due regard to the difference between the way Homebrew and MacPorts work.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Enhancement&lt;/em&gt;&lt;/strong&gt;: Screen redrawing has always been fairly slow, such that on less powerful computers (such as Raspberry Pi, or old Intel hardware) the screen could seem to &amp;#039;flash&amp;#039; annoyingly when, for example, you tapped along the top menu options (from Play to Database to Reporting, for example). Sometimes, screen refreshes were so slow to occur that you&amp;#039;d be able to see escape sequences (such as “&lt;strong&gt;^[[C&lt;/strong&gt;”) displayed on the screen as menu navigation took place, making things very ugly indeed. Accordingly, the screen redrawing code has been completely overhauled and now the program responds much more cleanly and swiftly to events that trigger screen redraws. The result is that even on low &lt;abbr title=&quot;specification&quot;&gt;spec&lt;/abbr&gt; hardware, Giocoso now &amp;#039;flashes&amp;#039; very infrequently and the random appearance of escape sequences on screen should almost never occur. This is achieved basically by replacing calls to the external “tput” utility with a pure Bash approach that keeps everything within the one Bash session, resulting in much less context switching on the CPU, and hence a swifter-feeling interface.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fix&lt;/em&gt;&lt;/strong&gt;: The new handling of Kitty graphics in Version 3.32 introduced a logic error which prevented the display of the program logo properly under many non-kitty-related conditions. Now fixed: the logo should display properly in all terminals that support in-terminal display of either sixel or kitty graphics.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fix&lt;/em&gt;&lt;/strong&gt;: I recently increased my &amp;#039;timebar&amp;#039; parameter from 720 hours (basically, 30 days) to 1440 (60 days). If I play Mahler on January 1st, he can&amp;#039;t be played again until March 1st, give or take, unless especially exempted. Unfortunately, I&amp;#039;d forgotten that back in the dim mists of time, I couldn&amp;#039;t conceive why anyone would ever want to bar a composer from being replayed beyond 999 hours: any time bar submitted larger than that limit was automatically set to a paltry 6 hours… which is why I suddenly started hearing Bruckner and Perti just days after having played them! In this version, the upper limit on the time bar has been completely removed. One of 1000 hours or above will work just fine… though, bear in mind, a huge time bar will potentially leave you with very few candidate composers for the next play!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement/Bug Fix&lt;/em&gt;&lt;/strong&gt;: On macOS, support for running Giocoso in Pro mode was extremely hit-and-miss. If you were using a very old version of MariaDB client to talk to your Pro Server (as you would if you had installed MariaDB via MacPorts on old hardware) then connections to the Pro server would fail to be established. That&amp;#039;s because Giocoso really expects you to be using a modern client and thus be aware of the –skip-ssl component of a database connection string. Ancient versions of MariaDB had no idea what ssl connections to a database were and therefore choked on that –skip-ssl parameter: no Pro for them! If you manually removed that bit of the connection string to avoid this, but were using a modern version of MariaDB on more modern hardware, the MariaDB client would again choke, this time because failure to mention –skip-ssl would stop the database connection being made. The new version includes code which checks whether your MariaDB client understands ssl connections at all: if it does, it tells it to skip using them; if it doesn&amp;#039;t, it simply doesn&amp;#039;t mention them. All macOS Giocoso Pro connections thus work correctly, no matter how you installed your MariaDB client or how modern or old it is. This conceivably benefits ancient Linux distros too, though I&amp;#039;ve never met one in the wild with client software as old as it is on my iMac!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement/Bug Fix&lt;/em&gt;&lt;/strong&gt;: On macOS, when using a &amp;#039;Magic Mouse&amp;#039;, accidental swipes left/right on the mouse would produce a trail of visible escape characters and garble the main Giocoso program display. Some of those escape characters could also be interpreted to mean &amp;#039;launch Sqlitebrowser&amp;#039; or &amp;#039;Enable/Disable Autostop&amp;#039;, meaning it wasn&amp;#039;t just visually annoying but could also affect program functionality: it was very annoying, basically! That is now fixed. New user-input handling code means that mouse (or trackpad) swipes are completely ignored and new ttype control means that the escape characters generated by such swipes are not echoed across the screen.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.33 - January 1st, 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_333_-_january_1st_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;27938-35055&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;giocoso_version_332_-_december_11th_2025&quot;&gt;Giocoso Version 3.32 - December 11th, 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;General code tidying&lt;/em&gt;&lt;/strong&gt;: Giocoso uses Bash script code developed over 5 years and several different versions of Bash. A lot of old Bash-isms therefore persisted and needed updating. For example, the syntax to do if statements (e.g., if [ “$var” == “some-string” ]; etc etc) could usefully be updated to use the double-square-bracket technique, which then no longer requires variable or string quoting (so if [[ $var == some-string ]]; etc etc). Another example is where you do conjoined tests: instead of if [[ $a == some ]] &amp;amp;&amp;amp; [[ $b == text ]], it&amp;#039;s cleaner to do if [[ $a == some &amp;amp;&amp;amp; $b == text]], where the concatenation takes place inside the single set of double-brackets. Such code tidying should make zero difference to functionality, but makes the code somewhat easier to read and maintain and brings coding consistency to the program.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: When playing music, Giocoso now blanks out the program&amp;#039;s graphical logo before overlaying the currently-playing album art on top. In the previous Giocoso version, depending on your precise choice of album art, you could see the extreme left-edge of the program logo appearing underneath the displayed album art. That won&amp;#039;t now happen.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Bug Fix&lt;/em&gt;&lt;/strong&gt;: If your graphics hardware is ancient, Giocoso could emit the following error when using the &amp;#039;B&amp;#039; key to launch the Sqlitebrowser database querying tool: &lt;em&gt;MESA-INTEL: warning: Haswell Vulkan support is incomplete […] Some incorrect rendering might occur because the selected Vulkan device […] doesn&amp;#039;t support base Zink requirements.&lt;/em&gt; This error message would appear to garble the main Giocoso program display, as it would be printed in black text, causing apparently blank lines to over-write parts of the terminal. The error would not appear at all if the PC running Giocoso had more modern graphics hardware: I&amp;#039;m using a 2014 Mac Mini, with an integrated Intel HD Graphics 5000 chipset, which is now obviously too ancient to cope with the way its Linux Mint 22 now renders things. The bug fix is that Giocoso now traps those errors so that the display is no longer garbled. Sqlitebrowser continues to launch and display correctly regardless.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fix&lt;/em&gt;&lt;/strong&gt;: Sometimes, Giocoso could forget a configured minimum duration. Your configuration file might be saying “only play recordings that are at least 20 minutes long” and Giocoso would go and randomly select a 6 minute-long recording to play. Now fixed: the configuration file is re-read for every select performed, ensuring that a value for minimum duration is always correctly applied.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug Fix&lt;/em&gt;&lt;/strong&gt;: The calculation of the &amp;#039;rechashvalue&amp;#039; for a played piece of music could be wrong if the composition or composer name  contained a single quote (e.g., Vincent d&amp;#039;Indy). This would mean that the program display would claim that there were &amp;#039;Previous plays: 0&amp;#039; for that recording, even though there were plenty of them. Now fixed: the program computes the rechashvalue correctly and thus is able to get an accurate count of previous plays, no matter if apostrophes are present or not.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement/Functionality Change&lt;/em&gt;&lt;/strong&gt;: If you are running Giocoso with pop-out art enabled (perhaps because in-terminal graphics are not supported), you might close that pop-out window and thus lose &amp;#039;sight&amp;#039; of what music you&amp;#039;re listening to. The new feature is that you can press the “Z” key (or lower-case &amp;#039;z&amp;#039;) at any time to re-display the standalone album art. If it&amp;#039;s already being displayed, the existing window is killed off and a new one launched; if the window has already been closed, a fresh one is simply opened. There was once a menu option under the &lt;strong&gt;Administration&lt;/strong&gt; menu (option 6: &amp;#039;Re-display Album Art in pop-out window&amp;#039;) that was intended to achieve the same sort of thing, but it&amp;#039;s now been made redundant, so that option has disappeared. Other menu items in the Administration menu have been re-numbered accordingly.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement/Bug Fix&lt;/em&gt;&lt;/strong&gt;: Sometimes when quitting Giocoso, the terminal might get &amp;#039;stuck&amp;#039; and appear unresponsive. You&amp;#039;d type things at the command line, but you wouldn&amp;#039;t see what you were typing being echoed back to the terminal. It would look like you were typing nothing at all. Giocoso now performs a &amp;#039;reset&amp;#039; on quitting, which restores full functionality to the terminal: what you go on to type will display normally.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Major Enhancement&lt;/em&gt;&lt;/strong&gt;: For various reasons, Konsole and other terminals that &lt;em&gt;used&lt;/em&gt; to display in-terminal graphics have stopped doing so on specific distros. As described &lt;a href=&quot;https://www.bbritten.com/blog/giocoso_broken&quot; class=&quot;wikilink1&quot; title=&quot;blog:giocoso_broken&quot; data-wiki-id=&quot;blog:giocoso_broken&quot;&gt;here&lt;/a&gt;, the technical issue is whether a terminal emulator supports &lt;strong&gt;sixel graphics&lt;/strong&gt;. Many do not and the ones that do often have to have that support &amp;#039;compiled in&amp;#039; for it to work properly… and several distros choose not to do that, either! An alternative way of displaying graphics in-terminal is to use the &amp;#039;kitty graphics protocol&amp;#039;: some terminals support that when they don&amp;#039;t support sixel graphics. Accordingly: 
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; A new configuration option is provided to &amp;#039;Use Kitty Graphics for in-terminal graphics display&amp;#039;. The default value is &amp;#039;no&amp;#039;. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; If nevertheless set to &amp;#039;yes&amp;#039;, the program logo and album art are then displayed using kitty graphics, rather than sixel graphics. If your terminal supports it, album art should then be displayed appropriately.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; The way kitty graphics displays things is heavily dependent on your choice of terminal and terminal font. Use the configuration parameter &amp;#039;Size of album art when displayed&amp;#039; to make the kitty display bigger or smaller to suit.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
As a result of this change, the kitty terminal has become an installation dependency for Giocoso. You don&amp;#039;t need to use it for anything else, but it needs to be present on the system to provide this new and alternative graphics display capability. If you are installing Giocoso afresh, then Kitty will be automatically installed; if you are merely upgrading to the new version of Giocoso, you&amp;#039;ll need to install Kitty yourself: &lt;span class=&quot;wrap_inlinecode &quot;&gt;sudo apt install kitty&lt;/span&gt; or &lt;span class=&quot;wrap_inlinecode &quot;&gt;sudo zypper install kitty&lt;/span&gt; and similar commands, depending on distro, will achieve the necessary.
&lt;/p&gt;

&lt;p&gt;
Note that kitty graphics are notably &amp;#039;blockier&amp;#039; than sixel graphics, so kitty is not the default display technology: it&amp;#039;s there for when sixel graphics fail!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Bug-Fix&lt;/em&gt;&lt;/strong&gt;: A horrible logic error on my part in Version 3.30 completely screwed up the application of the &amp;#039;Time Bar&amp;#039;. When you take the &lt;strong&gt;Play Music&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt; Giocoso&amp;#039;s random selection of music to play is meant to take your value for the &amp;#039;Hours before &lt;strong&gt;composer&lt;/strong&gt; eligible for second play&amp;#039; configuration parameter and prevent playback of further music by any composer who&amp;#039;s had &lt;em&gt;something&lt;/em&gt; played within that number of hours. So, say you set the parameter to “240”, then if Composer A&amp;#039;s “Symphony No. 1” is played on the 1st of the month, nothing else by that composer can be played until the 11th of the month (because 240 hours is 10 days, so he&amp;#039;s blocked from &lt;em&gt;random selection&lt;/em&gt; using the default music selection process for 10 days). Unfortunately, my logic flaw was to apply the time bar to the &lt;strong&gt;recordings&lt;/strong&gt; eligible for a second play, not the &lt;strong&gt;composer&lt;/strong&gt;! This meant that if Solti&amp;#039;s recording of Beethoven&amp;#039;s fifth took place on December 1st, Bernstein&amp;#039;s recording of anything by Beethoven was still eligible to be played on the 2nd December, despite a 10-day time-bar allegedly being set on &lt;em&gt;anything&lt;/em&gt; by Beethoven. Mea culpa. This has now been fixed and works as intended and as previously advertised.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Enhancement&lt;/em&gt;&lt;/strong&gt;: The way the Exempts file is processed has also changed, to make it more efficient. A composer listed in the Exempts file is explicitly exempted from *any* configured time bar. If the configuration file says &amp;#039;don&amp;#039;t re-play a composer until at least 240 hours has elapsed&amp;#039;, then a Mahler symphony played on December 1st precludes anything else by Mahler from being played until December 11th (10 days later, 240 hours being 10 days). But if Mahler is &lt;em&gt;also&lt;/em&gt; listed in the Exempts file, then that time bar is &lt;strong&gt;not&lt;/strong&gt; applied to Mahler, so something by him &lt;em&gt;could&lt;/em&gt; (not &amp;#039;will&amp;#039;) be played on December 3rd, say. In a previous release, this exemption was applied to the whole pool of candidate composers, so that if (say) Britten (time-barred), Bax (also time-barred) and Mahler (exempted) were all randomly selected as candidate composers for the next play, the Mahler exemption was applied to Britten and Bax as well. The exemption is now done &amp;#039;cleanly&amp;#039; and &lt;strong&gt;only&lt;/strong&gt; affects the explicitly-exempted composers. In this example, both Britten and Bax would now still be time-barred for 10 days, and Mahler would not be.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: The Giocoso installer has been re-written to be somewhat more elegant to view and efficient to use. It has also had new support for installing onto AlmaLinux and Rocky Linux (both free clones of Red Hat Enterprise Linux). The existing support for installing onto Raspberry Pi &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; (sometimes called “Raspbian”, as it&amp;#039;s a derivative of Debian) has been re-worked and some kinks ironed out. The Pi 4 is now a first class platform on which to run Giocoso, rather than being something of an afterthought! Note that the Giocoso installer will now quit without doing anything if it detects that your system has pending updates: previously, Giocoso charged ahead and performed a full system update for you… but there are obvious issues with doing that, so now it won&amp;#039;t be quite so cavalier! You won&amp;#039;t be able to install Giocoso until and unless you&amp;#039;ve fully updated your system, even so: but such an update is left as a matter for you to deal with.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: Support for running Giocoso on macOS has been re-introduced. The installer now detects the presence of macOS and responds appropriately (though note: you&amp;#039;ll need to have pre-installed Homebrew or Macports yourself for the install to succeed). Giocoso then runs successfully on macOS -though there are still currently some rough edges and there is no support at all for pausing a music play. 
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.32 - December 11th, 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_332_-_december_11th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;35056-45263&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;giocoso_version_331_-_april_10th_2025&quot;&gt;Giocoso Version 3.31 - April 10th, 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Minor bug-fix&lt;/strong&gt;: The program display could become garbled (with mysterious blank lines seemingly over-writing the proper display elements at random) because of an inappropriate use of the &amp;#039;ps&amp;#039; program. That has now been fixed.
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.31 - April 10th, 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_331_-_april_10th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;45264-45551&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;giocoso_version_330_-_march_7th_2025&quot;&gt;Giocoso Version 3.30 - March 7th, 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
A huge update, warranting another version jump (to Version 3.30, direct from 3.20). Please note that upgrading to this version requires special steps and cannot be performed by using the in-program &amp;#039;check for updates&amp;#039; option as would normally be the case.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Significant New Feature&lt;/strong&gt;: The release of &amp;#039;Giocoso Pro&amp;#039;. A new configuration option allows a local Giocoso session to be pointed at a remote MySQL database. Subsequent plays of music will be recorded in the local database and the remote database. This means multiple devices will be aware of all music played on &lt;em&gt;any&lt;/em&gt; of them. Filters to &amp;#039;play me previously unplayed music&amp;#039; will therefore now correctly &lt;strong&gt;not&lt;/strong&gt; start playing music which &lt;em&gt;this&lt;/em&gt; device hasn&amp;#039;t played before but &lt;em&gt;that&lt;/em&gt; one has played previously. Reports will now be generated from the remote database, including data from plays made on all devices, not just the local one. An entirely new &amp;#039;Pro&amp;#039; menu allows you to initialise a remote MySQL database and export a local PLAYS table to it. In case anyone is wondering: no, having a &amp;#039;Pro&amp;#039; version doesn&amp;#039;t mean money is charged or functionality compromised. &amp;#039;Giocoso Pro&amp;#039; is still completely free of charge to use and full functionality is available to every user, without caveats or reservations. The &amp;#039;Pro&amp;#039; name arises simply because working with MySQL is generally considered to be &amp;#039;proper database administration territory&amp;#039;, and thus rather harder and more nerdy to do than using the local database Giocoso originally used. Pro features are entirely optional: if you don&amp;#039;t want them, you can switch them off (and back on!) at will.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;New Feature&lt;/strong&gt;: Added a new &amp;#039;hotkey&amp;#039; option. Pressing &amp;#039;F&amp;#039; (or &amp;#039;f&amp;#039;, upper or lower case being irrelevant) &lt;strong&gt;during music playback&lt;/strong&gt; launches the system&amp;#039;s default file manager in the currently-playing recording&amp;#039;s folder. If Britten&amp;#039;s Peter Grimes was playing, for example, and I tapped &amp;#039;f&amp;#039;, Dolphin (the KDE default file manager) would open in (for me) &lt;em&gt;/sourcedata/music/classical/B/Benjamin Britten/Peter Grimes (Britten - 1958)&lt;/em&gt;. If you notice a cataloguing error as a piece of music plays, this helps you get to the music file(s) involved quickly for editing and correction. Different distros and desktop environments will open the relevant folder in whatever file manager is configured to be &lt;em&gt;their&lt;/em&gt; default. Note that the program display does &lt;strong&gt;not&lt;/strong&gt; indicate that &amp;#039;f&amp;#039; is a valid keypress that will do something: you just have to know it&amp;#039;s there as an option!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;New Feature&lt;/strong&gt;: Another new hotkey option is available &lt;strong&gt;during music playback&lt;/strong&gt;: if you press &amp;#039;K&amp;#039; or &amp;#039;k&amp;#039;, and there is a file called &amp;#039;booklet.pdf&amp;#039; in the folder being played, then it is opened in your system&amp;#039;s default PDF reader. It&amp;#039;s intended to help you easily access the digital versions of CD booklets that you have (hopefully!) stored within the same folder as the FLAC files ripped from the CD. If no such file exists, nothing happens: booklets in non-PDF format or not literally called &amp;#039;booklet.pdf&amp;#039; won&amp;#039;t be opened. Note that the program display does not indicate that &amp;#039;k&amp;#039; (or &amp;#039;K&amp;#039;) is a valid keypress that will do something: you just have to know it&amp;#039;s there as an option. Be aware that &amp;#039;K&amp;#039; tapped when music is &lt;strong&gt;not&lt;/strong&gt; playing does something completely different (recalling prior advanced SQL selections, a function that &lt;em&gt;is&lt;/em&gt; shown on the main menu display).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Enhancement or possible feature removal&lt;/strong&gt;: Due to popular demand, the &amp;#039;scrolling logo&amp;#039; has been removed: whether that counts as &amp;#039;feature removal&amp;#039; or an enhancement is a matter of opinon! Instead the program starts up instantly with a new graphical logo:
&lt;/p&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20250205_162711.jpg?w=650&amp;amp;tok=68790a&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Enhancement&lt;/strong&gt;: For new installations, the Luxi Mono font is now the default. Upgrades won&amp;#039;t pick up this change automatically, however: the font &lt;a href=&quot;https://www.fontsquirrel.com/fonts/luxi-mono&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.fontsquirrel.com/fonts/luxi-mono&quot; rel=&quot;ugc nofollow noopener&quot;&gt;can be downloaded here&lt;/a&gt;, for free. Install it using your distro&amp;#039;s standard font installation tools: until you do, the program display may be garbled as your terminal application attempts to approximate a font it doesn&amp;#039;t actually know how to draw.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Enhancement&lt;/strong&gt;: Fast database refreshes now clear out entries in the RECORDINGS table which are found to no longer exist on disk. Previously, if you moved a recording from /orchestral to /symphonic (say), the fast refresh would have picked up the &amp;#039;new&amp;#039; recording in the /symphonic folder, but the old entry for the same recording in its /orchestral folder location was &lt;em&gt;not&lt;/em&gt; cleared out (you needed a full refresh to do that). Now, it will be.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Enhancement&lt;/strong&gt;: The various ways of searching for music to play have been significantly tweaked to better deal with situations where folders the database &lt;em&gt;thinks&lt;/em&gt; exist actually don&amp;#039;t, or where folders that exist turn out not to contain playable FLACs. Consider a play list you created 8 months ago: it consists of a listing of hard disk folders that may all now no longer exist at those specific locations. The new search code handles these sorts of issues rather more gracefully than before. One significant side-effect: if your search returns many candidate folders, there&amp;#039;ll be a potentially significant wait for the candidate folders to be checked for existence and the presence of FLACs within them. A new progress counter lets you know how far the file checking has got. If you tighten your selection criteria, so that fewer folders are considered candidates, you can speed up this folder checking considerably.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Enhancement&lt;/strong&gt;: The &lt;strong&gt;default&lt;/strong&gt; music search (Option 1 on the Play Music menu) has been substantially re-written to make it a faster and more bullet-proof batch process. The old default search picked one composer and then tried to find music by that composer to play; if it failed to find a suitable recording, it would discard its first composer selection and try again. This would involve a lot of trips to the database before you happened to get lucky and find a suitable recording to play. This does not work well if the database is at the other end of a network cable! Now, therefore, Giocoso selects a &lt;em&gt;batch&lt;/em&gt; of all eligible composers; then it selects a batch of all eligible compositions; then it limits them down to the size of your &amp;#039;Number of plays per cycle&amp;#039;. A bit of filtering ensures that within a play cycle, the same composer can&amp;#039;t be picked more than once. Sometimes, this will mean that there &lt;em&gt;won&amp;#039;t&lt;/em&gt; be 10 plays per cycle: if there aren&amp;#039;t enough candidate recordings by unique composers, the cycle will end early. No matter: a new default search will enable a new cycle to be constructed from new candidates …and away you go once more.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Removed Feature&lt;/strong&gt;: Because default search now operates on a &amp;#039;batch select&amp;#039; basis, the “maximum number of searches before giving up” parameter is no longer used: you get your 10 (or whatever) candidate recordings selected in one go: either you get a result, or you don&amp;#039;t, but there&amp;#039;s no &amp;#039;having another go, over and over&amp;#039; as there used to be. That&amp;#039;s simply because that&amp;#039;s the way SQL works: if it didn&amp;#039;t return anything this time, there&amp;#039;s no point re-submitting it and hoping you get a different result! The parameter has accordingly been removed from the Administration menu, Option 2 screens and, if already present in the configuration file, is simply ignored. Any update to your configured parameters made by taking the Administration menu, Option 2 will trigger the removal of the parameter if it&amp;#039;s found in the active configuration file.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Removed Feature&lt;/strong&gt;: The &lt;strong&gt;Database Management&lt;/strong&gt; main menu &lt;strong&gt;Option 8 : Pull remote database to be primary&lt;/strong&gt; has been removed. That menu option provided rudimentary functionality allowing one Giocoso instance to become aware of plays made by another, but it was clunky and awkward to use. The new Giocoso Pro functionality renders this mechanism entirely redundant and is therefore completely removed from the program.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Modified Feature&lt;/strong&gt;: Pressing [Enter] on a main menu item triggers the first option within that menu. If the “Play Music” menu is active, for example, pressing [Enter] triggers the “Play music with defaults” option, as though the user had typed &amp;#039;1&amp;#039;. This was a feature introduced in Version 3.20. In Version 3.30, it is modified: it doesn&amp;#039;t work with the Administration menu, nor with the new Pro menu, though it continues to work for all other menus. The reason for this change is simply that Play Music, Database Management and Reporting menus don&amp;#039;t actually do anything &amp;#039;dangerous&amp;#039; when you take their first options… but the Administration menu first option triggers a software update (which might not be convenient or wanted) and the Pro menu first option threatens to re-create a Giocoso Pro database server from scratch, which potentially involves data destruction! If you &lt;em&gt;really&lt;/em&gt; want to do either of those things, you now need to type in the relevant menu option number: pressing [Enter] on those two menus (often by accident!) now no longer does anything.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Modified Feature&lt;/strong&gt;: The aggregate statistics report has always reported on &amp;#039;Average number of plays per day&amp;#039;. That has now been modified to be &amp;#039;Average number of plays per day in past year&amp;#039;: the underlying query now only looks at &amp;#039;today minus 365 days&amp;#039;. It seemed pointless to average your plays over (potentially!) a decade or more, as if the figure would be meaningful.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;New Feature&lt;/strong&gt;: In Version 3.12, the ability to create notes about a currently-playing recording was introduced. This capability remains as-was, but the new feature in Version 3.30 is that, if the program is operating in &amp;#039;Pro mode&amp;#039;, notes are now stored in the globally-shared database, not as a single text file stored on the local playing device. &lt;strong&gt;Global Notes&lt;/strong&gt;, as the feature is called, only permits one note per recording, but a note can be added to at will, as often as you like, and can be up to 4GB in size. When adding a note, you tap the &amp;#039;n&amp;#039; key (as in previous Giocoso versions) and the nano editor opens automatically. When saving the text file, it&amp;#039;s stored back into the Pro database, where it can then be accessed for read-only purposes by any other Giocoso Pro client device. Global notes are displayed within the main Giocoso program window in a simple, &lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt;-like text file display tool. Non-Pro notes made prior to this release are still stored on local disk, but are no longer accessible through Giocoso for as long as the program runs in Pro mode.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Changed Feature&lt;/strong&gt;: The syntax for doing command-line database refreshes has been clarified (i.e., changed!). You need to check your crontab to ensure it is submitting things in the correct way. The syntax is now: /usr/bin/giocoso3.sh &lt;span class=&quot;wrap_redtext &quot;&gt;music_database_name&lt;/span&gt; &lt;span class=&quot;wrap_bluetext &quot;&gt;/some/dir/of/music&lt;/span&gt; &lt;span class=&quot;wrap_greentext &quot;&gt;--fullrefresh&lt;/span&gt; (or &lt;span class=&quot;wrap_greentext &quot;&gt;--fastrefresh&lt;/span&gt; if that&amp;#039;s the refresh mode you&amp;#039;re wanting to use). Basically, you invoke Giocoso with three arguments: &lt;span class=&quot;wrap_redtext &quot;&gt;database&lt;/span&gt;, &lt;span class=&quot;wrap_bluetext &quot;&gt;music folder&lt;/span&gt; and the full or fast &lt;span class=&quot;wrap_greentext &quot;&gt;refresh type switch&lt;/span&gt;, in that order.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;New Feature&lt;/strong&gt;: If you operate in &amp;#039;Pro mode&amp;#039;, one client device can pause the playback of a recording and a different client device can resume that same recording from where the first got to (give or take a second), a feature called &lt;strong&gt;Global Pause/Resume&lt;/strong&gt;. If you are listening to some Wagner in the listening room late in the evening and fancy completing the opera propped up in bed on the laptop, Giocoso Pro features now let you do exactly that: music can now follow you around the house and to different devices at will.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Bug Fix&lt;/strong&gt;: If one Giocoso session is playing music, a second session is not supposed to be able to initiate music playback. The test to check for this condition was broken by the changes introduced in Version 3.20, however. The new release implements the correct check once more, thus again making a second session unable to start music playback when another session is already engaged in it.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Bug Fix&lt;/strong&gt;: The “Selection: X of Y” counter did not increment the &amp;#039;X&amp;#039; component of the play count in any play mode &lt;em&gt;except&lt;/em&gt; the default. If you did a play by &amp;#039;selection filter&amp;#039; or an &amp;#039;advanced SQL selection&amp;#039; or a &amp;#039;play from a playlist&amp;#039;, the &amp;#039;X&amp;#039; was always stuck at 1 (a bug introduced in Version 3.20, sadly). Now fixed: it increments by 1 every time a recording completes a play no matter which play mode you&amp;#039;re using.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Bug Fix&lt;/strong&gt;: When manually creating a new playlist, previous Giocoso versions would pre-populate it with the last-played recording (if there had been one), rather than creating it genuinely blank. That now doesn&amp;#039;t happen: the &lt;strong&gt;Play Music&lt;/strong&gt; menu, &lt;strong&gt;Option 7&lt;/strong&gt; now always creates completely-blank playlists.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: The &lt;strong&gt;Database Management&lt;/strong&gt; menu, &lt;strong&gt;Option 6: Backup a local database&lt;/strong&gt; now displays a message explaining where the new local database backup can be found on your file system.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: The &lt;strong&gt;Database Management&lt;/strong&gt; menu, &lt;strong&gt;Option 7: Optimise a local database&lt;/strong&gt; now tells you the before and after sizes of the database on disk, so you can see something has actually been achieved by the optimisation process. If there&amp;#039;s no size difference, before to after, then you&amp;#039;re told that too.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: If you press &amp;#039;B&amp;#039; on any menu, Giocoso tries to launch the sqlitebrowser tool for managing local, Sqlite databases. If that tool has not been installed on your system, however, the &amp;#039;B&amp;#039; key simply appeared to do nothing in earlier Giocoso versions: now a message will be displayed explaining that for &amp;#039;B&amp;#039; to do anything, &lt;em&gt;you&lt;/em&gt; have to manually install sqlitebrowser first.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: When editing the configuration file (&lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 2&lt;/strong&gt;), if you pressed [Cancel] half-way through the editing process, the entire configuration file would revert to default values, losing any non-defaults you may have previously set. Now, cancelling at any point aborts the entire editing process &lt;em&gt;and restores things to the way they were before you started editing anything&lt;/em&gt;. Instead of reverting to defaults, you revert to the configuration file values you began with, in other words.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: When producing advanced SQL reports (&lt;strong&gt;Reporting&lt;/strong&gt; menu, &lt;strong&gt;Option 5&lt;/strong&gt;), the panel in which you type your query will now remember the last query you typed, so won&amp;#039;t ever open blank except on the first time of use. Any previous query displayed can be edited to become a new query (which will then be remembered for the next time of use). A previous query can also simply be wiped, so that a new query can be typed in &lt;em&gt;ab initio&lt;/em&gt;. An additional refinement to the way advanced SQL queries work is that you don&amp;#039;t return to the main program menu after each query: the query form remains open for typing/editing and re-submitting until such time as you explicitly press [Cancel].
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Minor Enhancement&lt;/strong&gt;: When creating a database for the first time, Giocoso runs off to the proposed &amp;#039;root of the music collection&amp;#039; folder provided by the user and checks whether any FLACs are stored within that folder hierarchy. In previous versions, it performed a &lt;em&gt;complete&lt;/em&gt; count of FLACs before deciding whether the proposed folder was a &amp;#039;good&amp;#039; one or not. That was a bit of over-kill, in the sense that you only really need to find one FLAC in the folder structure to know the folder choice was legitimate. New in Version 3.30, therefore, as soon as one FLAC is found, the counting process stops, resulting in significantly faster progress towards actually processing/analysing the FLACs. The database creation process speeds up as a result.
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
&lt;span class=&quot;wrap_centermessage &quot;&gt;Please note: This indicates the end of the 3.2x line of Giocoso. Entries above this are for version 3.3x and higher.&lt;/span&gt;
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Giocoso Version 3.30 - March 7th, 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;giocoso_version_330_-_march_7th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;45552-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/4/47f864c8bc49b6c3e4ef3c8ff94ec3d8.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/blog/giocoso_version_3.37_released">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-01T09:04:54+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>giocoso_version_3.37_released - [Giocoso Version 3.37 Released] </title>
        <link>https://www.bbritten.com/blog/giocoso_version_3.37_released</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;giocoso_version_337_released&quot;&gt;Giocoso Version 3.37 Released&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/giocosoico.png?w=220&amp;amp;tok=fb0892&quot; class=&quot;medialeft&quot; align=&quot;left&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;220&quot; /&gt;I have just released (on time!) a new version of Giocoso: it now moves to version 3.37. It is a fairly significant release for one main reason: the default music search algorithm had a fatal bug in it, which I discussed at length in &lt;a href=&quot;https://www.bbritten.com/blog/giocoso_random_music_selection_logic_bomb&quot; class=&quot;wikilink1&quot; title=&quot;blog:giocoso_random_music_selection_logic_bomb&quot; data-wiki-id=&quot;blog:giocoso_random_music_selection_logic_bomb&quot;&gt;a previous blog piece&lt;/a&gt;. This release fixes that logic error, resulting in much more music qualifying for randomised selection than before.
&lt;/p&gt;

&lt;p&gt;
A less meaningful (but perhaps more fun!) enhancement to the program is that you can now adjust its visual components&amp;#039; colours. If you don&amp;#039;t like the default cyan logo text, you can change it to magenta instead, for example. I noticed that some users don&amp;#039;t run in jet-black terminal sessions like I do: this lets them make Giocoso usable even in light-coloured terminals.
&lt;/p&gt;

&lt;p&gt;
I regret that this update is a bit messy to implement. You should certainly start by taking the usual &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt; to obtain the newer software and providing the sudo password when prompted. Unfortunately, the result of that upgrade will look something like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.00.57.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-31_at_09.00.57.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.00.57.png?w=600&amp;amp;tok=aec594&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Error messages visible from the operating system, a Beethoven image appearing in completely the wrong place, all text one colour and the wrong colour at that… yuck! Fortunately, it&amp;#039;s easily fixable: just take the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 2&lt;/strong&gt; to edit the configuration file. Just click the [OK] button to cycle through all the pages of the dialog. When you click [OK] on the last of the pages, you&amp;#039;ll be returned to the main menu with everything looking perfect:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.12.32.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-31_at_09.12.32.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.12.32.png?w=600&amp;amp;tok=1e6085&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Added immediately after the release:&lt;/em&gt;&lt;/strong&gt; It is &lt;em&gt;possible&lt;/em&gt; that you now &lt;strong&gt;won&amp;#039;t&lt;/strong&gt; see visual mayhem on quite this scale after an update: a couple of tweaks to some code has tackled most of these issues out-of-the-box, I believe. But it does no harm to warn you of what &lt;em&gt;can&lt;/em&gt; happen and how to fix it, especially as even now, I&amp;#039;m pretty sure you&amp;#039;ll be needing to adjust the size of that Beethoven logo: which &lt;em&gt;still&lt;/em&gt; requires a visit to the Administration menu, Option 2 and an adjustment to the &amp;#039;Size of the Program Logo&amp;#039; setting.
&lt;/p&gt;

&lt;p&gt;
The temporary problem is caused by your existing configuration file not having the new colour codes in it: merely editing the file and doing nothing causes &lt;em&gt;default&lt;/em&gt; codes to be added to the file, after which the program displays normally. You could then use the new &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 8&lt;/strong&gt; to modify the program colour settings to something that is non-default and more suitable to your needs.
&lt;/p&gt;

&lt;p&gt;
Full details about what&amp;#039;s in the new release are available, as always, from &lt;a href=&quot;https://www.bbritten.com/softwares/giocoso/changelog&quot; class=&quot;wikilink1&quot; title=&quot;softwares:giocoso:changelog&quot; data-wiki-id=&quot;softwares:giocoso:changelog&quot;&gt;the Giocoso changelog&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
That concludes the bug-fixes and tweaks to all three of my music-related bits of software: I rather suspect that they will all now &amp;#039;go quiet&amp;#039; for a good few month, unless someone gets in touch to report a bug or two that I haven&amp;#039;t encountered! Here&amp;#039;s to a less code-filled few months!
&lt;/p&gt;

&lt;/div&gt;

&lt;!-- no cachefile used, but created /var/www/dokuwiki/data/cache/2/2b5fe566e6769901b66fa08310078f0f.xhtml --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/softwares/niente/neninstall">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T11:06:10+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>neninstall - [2.0 Installation] </title>
        <link>https://www.bbritten.com/softwares/niente/neninstall</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;installing_niente&quot;&gt;Installing Niente&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Installing Niente&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installing_niente&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-32&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;operating_system_support&quot;&gt;1.0 Operating System Support&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
There are four levels of support for installing Niente onto assorted Linux distros and other operating systems, as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: Used by me daily, on real hardware, extensively tested, guaranteed to work well&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Used by me infrequently, mostly in virtual machines, lightly tested, tested extensively in the past, things will almost certainly work&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: Hardly ever used by me and then only in virtual machines. No testing done, unless specific issues are reported, but has worked in the past just fine, so things ought still to work, too&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Thought to work, and tested to work in the past, but you&amp;#039;re really on your own.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Putting specific, named distros into each tier goes as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: AlmaLinux 9 and 10, Fedora, Linux Mint, Apple macOS&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Debian, EndeavourOS, Ubuntu, Raspberry Pi &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: OpenSuse Leap &amp;amp; Tumbleweed, GeckoLinux, Arch, Manjaro, Garuda Linux, Devuan, Linux Mint Debian Edition, Peppermint &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, MX Linux, AntiX Linux, Pop! &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Linux Lite, Zorin &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Elementary &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, KDE Neon, Tuxedo &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Nobara, Ultramarine&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Windows&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Every listed distro did run Niente perfectly at some time in the past and, if the distro developers haven&amp;#039;t messed around with core libraries too much, they should still work. However, only those distros in Tier 1 will receive extensive real-world testing from Version 4.04 and up. Other distros will receive either light-touch testing to make sure most things seem to work fine (Tier 2), or will only be tested on-demand by users reporting specific problems (Tier 3). I&amp;#039;ve provided some distro-specific notes and gotchas elsewhere.
&lt;/p&gt;

&lt;p&gt;
Raspberry Pi &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; is in Tier 2 simply because of performance issues: Niente&amp;#039;s integrity checks are quite CPU intensive and neither the Pi 3 or 4 have the required &amp;#039;oomph&amp;#039; to do integrity checks on a large music collection this side of eternity. I do run a Pi 4 as my main music &lt;em&gt;playing&lt;/em&gt; machine and Niente has been installed on it and works reliably… so it &lt;em&gt;ought&lt;/em&gt; to qualify as a Tier 1 platform. I simply can&amp;#039;t recommend it to anyone that wants it to run at adequate speed, however, which is why it&amp;#039;s down at Tier 2. If I ever spring for a Pi 5, its support status may yet be subject to promotion, but I wouldn&amp;#039;t hold my breath!
&lt;/p&gt;

&lt;p&gt;
Be aware that if you install Niente on Alma Linux 9, then &lt;a href=&quot;https://almalinux.org/blog/2025-07-07-elevate-to-el-10/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://almalinux.org/blog/2025-07-07-elevate-to-el-10/&quot; rel=&quot;ugc nofollow noopener&quot;&gt;upgrade your OS&lt;/a&gt; to Alma Linux 10, ffmpeg may suddenly cease to be an installed program! (Guess how I know…). Any full or differential integrity check you then perform will be unable to compute a fresh MD5 hash on your FLACs&amp;#039; audio streams: every FLAC will thus be declared &amp;#039;potentially physically corrupt&amp;#039;. To re-install ffmpeg, you will need to add the RPM Fusion Free release repository. See &lt;a href=&quot;https://rpmfusion.org/Configuration&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://rpmfusion.org/Configuration&quot; rel=&quot;ugc nofollow noopener&quot;&gt;this page&lt;/a&gt; for details on how to do that. Once it&amp;#039;s been configured, a &lt;strong&gt;sudo dnf install ffmpeg&lt;/strong&gt; will work, and new Niente integrity checks will work as intended. Alternatively, just do a fresh install of Niente: the Niente installer automatically knows how to install &lt;em&gt;all&lt;/em&gt; the repositories and software it needs.
&lt;/p&gt;

&lt;p&gt;
Apple became a Tier 1 operating system when I decided at the end of January 2026 to invest in a brand new Apple Silicon iMac. It&amp;#039;s now my principle desktop operating system and, as my daily driver, is going to be the platform on which I test things out most thoroughly. I also have access to a couple of old Apple iMacs (from 2015 and 2012) that use Intel CPUs and can only run modern versions of the operating system thanks to Open Core Legacy Patcher: their &amp;#039;officially supported&amp;#039; operating systems end with Catalina and Monterey respectively. Accordingly, Niente will be a Tier 1 supported application on only Catalina, Monterey and whatever &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; version runs on a 2024 M4 iMac (Tahoe, at the moment). All other &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; versions will be Tier 4 support: definitely do-able and definitely done and documented: but you&amp;#039;re essentially on your own.
&lt;/p&gt;

&lt;p&gt;
Windows is a bit of a special case, because it probably runs Niente just fine… but I have no means of knowing that for sure. Windows 10 reached end of Microsoft&amp;#039;s official support back in October 2025, so all the hardware I have running Niente on Windows 10 is now no longer representative of anything supported by the operating system&amp;#039;s own manufacturer. Windows 11 is, of course, fully supported by Microsoft -but I literally have no hardware that is officially supported for running it. I can hack Windows 11 onto a bunch of spare hardware, but it will be an unsupported and unrepresentative platform. The principle, however, is that if you get Windows running the Windows Subsystem for Linux (WSL2) then you can install one of the supported distros on that (for example, Ubuntu or Fedora) and Niente will run perfectly well in that environment. So, it&amp;#039;s not that Niente won&amp;#039;t run on Windows: it&amp;#039;s just that I now expend zero development effort proving it does so. Any issues arising as you try to run it are therefore really yours to resolve. I will certainly offer advice and help if asked, but it will be merely on a &amp;#039;best efforts&amp;#039; basis. In the meantime, I have written installation instructions for Windows 11 here.
&lt;/p&gt;

&lt;p&gt;
Niente does not work on the Solus Linux distro.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.0 Operating System Support&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;operating_system_support&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;33-5336&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;installation&quot;&gt;2.0 Installation&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
The basic installation procedure for any supported operating system is, in a new terminal session:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget software.bbritten.com/neninst&lt;/pre&gt;

&lt;p&gt;
The installer is small (around 20KB) , so it will take hardly any time to download it. Once  the installer has been downloaded, you launch it in the same folder you saved it to, with the command:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;bash neninst&lt;/pre&gt;

&lt;p&gt;
You will first see a screen warning you that the installer will make quite a few changes to your system, if you let it:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/niente/screenshot_20251021_142127.jpg&quot; class=&quot;media&quot; title=&quot;software:niente:screenshot_20251021_142127.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/niente/screenshot_20251021_142127.jpg?w=650&amp;amp;tok=d65362&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You need to type &amp;#039;y&amp;#039; (and then press [Enter]) to proceed. If you type anything else, the installer will terminate without having touched your system at all.
&lt;/p&gt;

&lt;p&gt;
At the end of the installation, when you first run Niente, you may find the program display garbled (it is equally possible you won&amp;#039;t!). If you do, just visit the &lt;strong&gt;Administration&lt;/strong&gt; menu, take &lt;strong&gt;Option 1&lt;/strong&gt; to “edit the configuration file” and then press [Enter] through the various options (without changing any of them, really) until you return to the main program display: you should find all visual glitches gone (though you may need to go back into the configuration options to adjust the size of the program logo: it defaults to being 220×220 pixels in size and that might be too large on standard 1080p resolution displays).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.0 Installation&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installation&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;5337-6699&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;software_packages_needed_for_niente_to_work&quot;&gt;2.1 Software packages needed for Niente to work&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
To start with, the Niente installer will check for the presence of various packages on your system and will seek to install any that it finds to be missing. You can usually just let it do it&amp;#039;s thing at this point, but if you are interested, here are the packages/programs that Niente deems essential to install:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; bc (program allowing Bash to perform non-integer arithmetic)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; flac (the library that allows FLAC audio files to be read and understood)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ffmpeg (an audio and video stream interpreter)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xterm (a terminal emulator or console)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; sqlite3 (a simple database)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; coreutils (a set of essential libraries, providing functionality like MD5 hash computation)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; imagemagick (an image processing program: works with both ImageMagick versions 6.x and 7.x)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; fd or fd-find, depending on distro (a file searching program)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; dialog (a program allowing the creation and display of user input forms for the terminal)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; cuetools (a program allowing the handling of cue sheets for merged FLACs)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; curl (a program to perform file downloads)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
If having any of this software installed on your system gives you cause for concern, type &amp;#039;n&amp;#039; when the installer prompts you and give up on the idea of installing Niente altogether: the program cannot run without all of them being present, I&amp;#039;m afraid.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.1 Software packages needed for Niente to work&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;software_packages_needed_for_niente_to_work&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;6700-8070&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;getting_started_post-install&quot;&gt;3.0 Getting Started, post-Install&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Once Niente is installed, you can launch it by (a) clicking on the launcher provided on the Desktop (some distros require you to &amp;#039;trust&amp;#039; or &amp;#039;mark as executable&amp;#039; the launcher before it will work); or (b) clicking the option provided somewhere in the main menu, which is usually to be found under &amp;#039;Multimedia&amp;#039; or (depending on distro) &amp;#039;Sounds &amp;amp; Video&amp;#039;. The main program display should then appear:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/niente/screenshot_20251021_164825.jpg&quot; class=&quot;media&quot; title=&quot;software:niente:screenshot_20251021_164825.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/niente/screenshot_20251021_164825.jpg?w=650&amp;amp;tok=07e3fb&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Operation of the program beyond this point is hopefully self-explanatory, with the &amp;#039;top menu&amp;#039; giving access to each of the three main functional components of Niente in turn, plus the various administrative, housekeeping functions:: 
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Database: The initial creation and population of a database listing every FLAC file in your music collection&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Integrity Checks: Scan the FLAC files listed in the database and extract metadata and physical characteristics from them&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Reporting: Query the database and generate lists of files which fail particular physical or logical consistency tests&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Administration: Various configuration or program management options&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
In all cases, top-bar menu options can be accessed by right- or left-arrow keys (the menu wraps, so a right-arrow from &lt;strong&gt;Quit&lt;/strong&gt; takes you back to &lt;strong&gt;Database&lt;/strong&gt;, for example), or by tapping the first letter of the menu name (so tapping &amp;#039;D&amp;#039; gets you directly to Database, &amp;#039;R&amp;#039; to Reporting and so on). Once a top-bar menu option has been selected, the numbered menu items within that option will be displayed and can be invoked simply by tapping the number associated with the item. Thus tapping &amp;#039;D&amp;#039;, then &amp;#039;4&amp;#039;, will invoke the database wiping option; &amp;#039;I&amp;#039; then &amp;#039;3&amp;#039; will trigger a fast integrity check, and so on.
&lt;/p&gt;

&lt;p&gt;
A handful of options are accessible regardless of which top-bar menu is selected: they are accessible at any time by tapping the letter associated with them (these options are listed on the right-hand side of the main program display area). Thus tapping &amp;#039;X&amp;#039; will exit the program, whilst tapping&amp;#039;L&amp;#039; will remove the prgram lock (which prevents two file scanning operations from taking place at the same time).
&lt;/p&gt;

&lt;p&gt;
Beyond that quick-start approach, however, you should read the relevant pages elsewhere in the user manual for an exploration (and explanation!) of the rest of the program&amp;#039;s functionality,
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.0 Getting Started, post-Install&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;getting_started_post-install&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;8071-10457&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;conclusion&quot;&gt;4.0 Conclusion&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Summarising things as compactly as I can, then:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; fully update your distro, so that it&amp;#039;s using the latest packages and patches&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; wget software.bbritten.com/neninst&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; bash neninst&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; type niente at a command prompt to launch the program, or click on one of the graphical launchers provided&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
I hope all your Niente Version 4 installations work successfully and that you get up-and-running with the new program quickly and painlessly!
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
| &lt;strong&gt;&lt;a href=&quot;https://www.bbritten.com/software-menu&quot; class=&quot;wikilink1&quot; title=&quot;software-menu&quot; data-wiki-id=&quot;software-menu&quot;&gt;Back to Software Home&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt;&lt;a href=&quot;https://www.bbritten.com/softwares/niente/niente&quot; class=&quot;wikilink1&quot; title=&quot;softwares:niente:niente&quot; data-wiki-id=&quot;softwares:niente:niente&quot;&gt;Back to Niente Documentation Home&lt;/a&gt;&lt;/strong&gt; | &lt;strong&gt;&lt;a href=&quot;https://www.bbritten.com/softwares/niente/nenquick&quot; class=&quot;wikilink1&quot; title=&quot;softwares:niente:nenquick&quot; data-wiki-id=&quot;softwares:niente:nenquick&quot;&gt;Quick Start Guide&lt;/a&gt;&lt;/strong&gt; |
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.0 Conclusion&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;conclusion&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;10458-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/e/eff278e5fbf39483d401d2db65d3bdbf.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/softwares/semplice/seminstall">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T11:05:17+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>seminstall - [2.0 Installation] </title>
        <link>https://www.bbritten.com/softwares/semplice/seminstall</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;installing_semplice&quot;&gt;Installing Semplice&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Installing Semplice&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installing_semplice&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-34&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;operating_system_support&quot;&gt;1.0 Operating System Support&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
There are four levels of support for installing Semplice onto assorted Linux distros and other operating systems, as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: Used by me daily, on real hardware, extensively tested, guaranteed to work&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Used by me infrequently, only in virtual machines, lightly tested, tested extensively in the past, things will almost certainly work&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: Hardly ever used by me and then only in virtual machines. No testing done, unless specific issues are reported, but has worked in the past just fine, so things ought still to work, too&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Thought to work, and tested to work in the past, but you&amp;#039;re really on your own.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Putting specific, named distros into each tier goes as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: Raspberry Pi &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Fedora, Linux Mint, Apple macOS&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Debian, EndeavourOS, Ubuntu&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: OpenSuse Leap &amp;amp; Tumbleweed, GeckoLinux, Arch, Manjaro, Garuda Linux, Devuan, Linux Mint Debian Edition, Peppermint &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, MX Linux, AntiX Linux, Pop! &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Linux Lite, Zorin &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Elementary &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, KDE Neon, Tuxedo &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Nobara, Ultramarine&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Windows&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Every listed distro did run Semplice perfectly at some time in the past and, if the distro developers haven&amp;#039;t messed around with core libraries too much, they should &lt;em&gt;still&lt;/em&gt; work. However, only those distros in Tier 1 will receive extensive real-world testing from Version 2.12 and up. Other distros will receive either light-touch testing to make sure most things seem to work fine (Tier 2), or will only be tested on-demand by users reporting specific problems (Tier 3). I&amp;#039;ve provided some distro-specific notes and gotchas elsewhere.
&lt;/p&gt;

&lt;p&gt;
Apple became a Tier 1 operating system when I decided at the end of January 2026 to invest in a brand new Apple Silicon iMac. It&amp;#039;s now my principle desktop operating system and, as my daily driver, is going to be the platform on which I test things out most thoroughly. I also have access to a couple of old Apple iMacs (from 2015 and 2012) that use Intel CPUs and can only run modern versions of the operating system thanks to Open Core Legacy Patcher: their &amp;#039;officially supported&amp;#039; operating systems end with Catalina and Monterey respectively. Accordingly, Semplice will be a Tier 1 supported application on only Catalina, Monterey and whatever &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; version runs on a 2024 iMac (Tahoe, probably). All other &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; versions will be Tier 4 support: definitely do-able and definitely done and documented: but you&amp;#039;re essentially on your own.
&lt;/p&gt;

&lt;p&gt;
Windows is a bit of a special case, because it probably runs Semplice just fine… but I have no means of knowing that for sure. Windows 10 reached end of Microsoft&amp;#039;s official support back in October 2025, so all the hardware I have running Semplice on Windows 10 is now no longer representative of anything supported by the operating system&amp;#039;s own manufacturer. Windows 11 is, of course, fully supported by Microsoft -but I literally have no hardware that is officially supported for running it. I can hack Windows 11 onto a bunch of spare hardware, but it will be an unsupported and unrepresentative platform. The principle, however, is that if you get Windows running the Windows Subsystem for Linux (WSL2) then you can install one of the supported distros on that (for example, Ubuntu or Fedora) and Semplice will run perfectly well in that environment (except for CD ripping functionality, which requires direct access to the relevant hardware). So, it&amp;#039;s not that Semplice won&amp;#039;t run on Windows: it&amp;#039;s just that I now expend zero development effort proving it does so. Any issues arising as you try to run it are therefore really yours to resolve. I will certainly offer advice and help if asked, but it will be merely on a &amp;#039;best efforts&amp;#039; basis. In the meantime, I have written installation instructions for Windows 11 here.
&lt;/p&gt;

&lt;p&gt;
Semplice definitely does &lt;em class=&quot;u&quot;&gt;not&lt;/em&gt; work on the Solus Linux distro.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.0 Operating System Support&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;operating_system_support&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;35-3971&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;installation&quot;&gt;2.0 Installation&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
The basic installation procedure for any supported operating system is, in a new terminal session:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget software.bbritten.com/seminst&lt;/pre&gt;

&lt;p&gt;
The installer is small (around 20KB) , so it will take hardly any time to download it. Once  the installer has been downloaded, you launch it in the same folder you saved it to, with the command:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;bash seminst&lt;/pre&gt;

&lt;p&gt;
You will first see a screen warning you that the installer will make quite a few changes to your system, if you let it:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20251021_141720.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20251021_141720.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20251021_141720.jpg?w=650&amp;amp;tok=a174d2&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You need to type &amp;#039;y&amp;#039; (and then press [Enter]) to proceed. If you type anything else, the installer will terminate without having touched your system at all.
&lt;/p&gt;

&lt;p&gt;
At the end of the installation, when you first run Semplice, you may find the program display garbled (it is equally possible you won&amp;#039;t!). If you do, just visit the &lt;strong&gt;Miscellaneous&lt;/strong&gt; menu, take &lt;strong&gt;Option 1&lt;/strong&gt; to “edit the configuration file” and then press [Enter] through the various options (without changing any of them, really) until you return to the main program display: you should find all visual glitches gone (though you may need to go back into the configuration options to adjust the size of the program logo: it defaults to being 220×220 pixels in size and that might be too large on standard 1080p resolution displays).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.0 Installation&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installation&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3972-5337&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;software_packages_needed_for_semplice_to_work&quot;&gt;2.1 Software packages needed for Semplice to work&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
To start with, the Semplice installer will check for the presence of various packages on your system and will seek to install any that it finds to be missing. You can usually just let it do it&amp;#039;s thing at this point, but if you are interested, here are the packages/programs that Semplice deems essential to install:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ImageMagick (an image processing program)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; fd or fd-find, depending on distro (a file searching program)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ncurses (enables display of forms in a terminal)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; coreutils&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; build-essential or distro-equivalent (enables the compilation of software sources)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; cuetools&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; bc (program allowing Bash to perform non-integer arithmetic)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; flac (the library that allows FLAC audio files to be read and understood)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ffmpeg (an audio player)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xclip (a little utility allowing command line management of the clipboard)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; curl (a command line tool for fetching files across the Internet)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xterm (a terminal emulator or console window)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; dialog (a program allowing the creation and display of user input forms for the terminal)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; cmake (a program allowing source code to be compiled)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; python and python-devel (libraries necessary for audiotools program to be compiled from source)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; git (a tool allowing sacd and audiotools software sources to be downloaded)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; sacd&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Audiotools is needed to allow Semplice&amp;#039;s CD ripping utility to compare your rips with those previously done of the same CD by others, using the AccurateRip database. If your rip agrees with theirs, chances are it&amp;#039;s &amp;#039;good&amp;#039;. If it doesn&amp;#039;t, maybe you&amp;#039;re using a different pressing or mastering, or maybe your CD contains errors. The &lt;strong&gt;sacd&lt;/strong&gt; package is installed to give Semplice the ability to convert the ISOs ripped from SACDs to more usable audio formats (such as FLAC). Both audiotools and sacd have to be compiled from their source code, which is why the Semplice installer also installs the build-essential packages (or their distro equivalents), which includes tools such as glibc, make and other packages needed to compile software.
&lt;/p&gt;

&lt;p&gt;
If having any of this software installed on your system gives you cause for concern, type &amp;#039;n&amp;#039; when the installer prompts you and give up on the idea of installing Semplice altogether: the program cannot run without all of them being present, I&amp;#039;m afraid.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.1 Software packages needed for Semplice to work&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;software_packages_needed_for_semplice_to_work&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;5338-7701&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;getting_started_post-install&quot;&gt;3.0 Getting Started, post-Install&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Once Semplice is installed, you can launch it by (a) clicking on the launcher provided on the Desktop (some distros require you to &amp;#039;trust&amp;#039; or &amp;#039;mark as executable&amp;#039; the launcher before it will work); or (b) clicking the option provided somewhere in the main menu, which is usually to be found under &amp;#039;Multimedia&amp;#039; or (depending on distro) &amp;#039;Sounds &amp;amp; Video&amp;#039;. The main program display should then appear:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20251021_142625.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20251021_142625.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20251021_142625.jpg?w=650&amp;amp;tok=be593b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Operation of the program beyond this point is hopefully self-explanatory, with the &amp;#039;top menu&amp;#039; giving access to each of the four main functional components of Semplice in turn: &lt;strong&gt;Tagging&lt;/strong&gt; contains all the functionality that allows you to mark up your FLACs with metadata tags and cover art; &lt;strong&gt;Audio Processing&lt;/strong&gt; lets you convert FLACs to MP3s, or OGGs to WAVs, amongst other things. It also allows you to increase the volume of ripped recordings, if they can be volume-boosted without introducing distortion; the &lt;strong&gt;SuperFLAC&lt;/strong&gt; menu lets you merge individual FLACs into single-file, whole-composition FLACs… and to reverse that process should you want to do so; and the &lt;strong&gt;Ripping&lt;/strong&gt; menu contains options that allow you to accurately rip music from standard audio CDs or SACDs.
&lt;/p&gt;

&lt;p&gt;
The &lt;strong&gt;Miscellaneous&lt;/strong&gt; menu contains options for general &amp;#039;housekeeping&amp;#039;: configuration parameters that controls the way Semplice behaves when performing any of its four major pieces of functionality. It&amp;#039;s also the menu that contains an option to check for, and to apply, any program updates that I might release in the future… so, it&amp;#039;s something you should be using fairly regularly!
&lt;/p&gt;

&lt;p&gt;
In all cases, top-bar menu options can be accessed by right- or left-arrow keys (the menu wraps, so a right-arrow from &lt;strong&gt;Quit&lt;/strong&gt; takes you back to &lt;strong&gt;Tagging&lt;/strong&gt;, for example), or by tapping the first letter of the menu name (so tapping &amp;#039;T&amp;#039; gets you directly to Tagging, &amp;#039;R&amp;#039; to Ripping and so on). Once a top-bar menu option has been selected, the numbered menu items within that option will be displayed and can be invoked simply by tapping the number associated with the item. Thus tapping &amp;#039;T&amp;#039;, then &amp;#039;4&amp;#039;, will invoke the FLAC renumbering menu item; &amp;#039;R&amp;#039; then &amp;#039;2&amp;#039; will let you choose which CD device you want to use when ripping an audio CD, and so on.
&lt;/p&gt;

&lt;p&gt;
A handful of options are accessible regardless of which top-bar menu is selected: they are accessible at any time by tapping the letter associated with them (these options are listed on the right-hand side of the main program display area). Thus tapping &amp;#039;F&amp;#039; will open your operating system&amp;#039;s default file manager; tapping &amp;#039;W&amp;#039; will bring up a folder selection dialog so that you can select a particular folder to set as the program&amp;#039;s current &amp;#039;working folder&amp;#039;, and so on. Important options to learn and remember are &amp;#039;K&amp;#039; to invoke the metadata tag cleaning routine and &amp;#039;X&amp;#039; to quit the program without further modifying any FLAC files on the way out.
&lt;/p&gt;

&lt;p&gt;
Beyond that quick-start approach, however, you should read the relevant pages elsewhere in the user manual for an exploration (and explanation!) of the rest of the program&amp;#039;s functionality,
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.0 Getting Started, post-Install&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;getting_started_post-install&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;7702-10868&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;conclusion&quot;&gt;4.0 Conclusion&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Summarising things as compactly as I can, then:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Read your distro&amp;#039;s specific installation notes, to see if there are any pre- or post-installation steps you&amp;#039;ll need to take&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Fully update your distro, so that it&amp;#039;s using the latest packages and patches&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; wget doco.absolutelybaching.com/seminst&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; bash seminst&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Consider deleting the original Semplice folder and executable once you are happy to use Semplice Version 2&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
I hope all your Semplice Version 2 installations work successfully and that you get up-and-running with the new program quickly and painlessly!
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
| &lt;strong&gt;&lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semplice&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semplice&quot; data-wiki-id=&quot;softwares:semplice:semplice&quot;&gt;Back to Semplice Home Page&lt;/a&gt;&lt;/strong&gt; |
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.0 Conclusion&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;conclusion&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;10869-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/1/1d9969bdbbadb74abaa08ed017c85ecf.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/softwares/giocoso/gioinstall">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T10:59:44+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>gioinstall - [2.0 Installation] </title>
        <link>https://www.bbritten.com/softwares/giocoso/gioinstall</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;installing_giocoso&quot;&gt;Installing Giocoso&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Installing Giocoso&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installing_giocoso&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-33&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;operating_system_support&quot;&gt;1.0 Operating System Support&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
There are four levels of support for installing Giocoso onto assorted Linux distros and other operating systems, as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: Used by me daily, on real hardware, extensively tested, guaranteed to work&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Used by me infrequently, only in virtual machines, lightly tested, tested extensively in the past, things will almost certainly work&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: Hardly ever used by me and then only in virtual machines. No testing done, unless specific issues are reported, but has worked in the past just fine, so things &lt;em&gt;ought&lt;/em&gt; still to work, too&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Thought to work, and tested to work in the past, but you&amp;#039;re really on your own.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Putting specific, named distros into each tier goes as follows:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 1: AlmaLinux 9 and 10; Raspberry Pi &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Fedora, Linux Mint, Apple macOS&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 2: Debian, EndeavourOS, Ubuntu&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 3: OpenSuse Leap &amp;amp; Tumbleweed, GeckoLinux, Arch, Manjaro, Garuda Linux, Devuan, Linux Mint Debian Edition, Peppermint &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, MX Linux, AntiX Linux, Pop! &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Linux Lite, Zorin &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Elementary &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, KDE Neon, Tuxedo &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt;, Nobara, Ultramarine&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Tier 4: Windows&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Every listed distro &lt;em&gt;did&lt;/em&gt; run Giocoso perfectly at some time in the past and, if the distro developers haven&amp;#039;t messed around with core libraries too much, they &lt;em&gt;should&lt;/em&gt; still work. However, only those distros in Tier 1 will receive extensive real-world testing from Version 3.32 and up. Other distros will receive either light-touch testing to make sure most things seem to work fine (Tier 2), or will only be tested on-demand by users reporting specific problems (Tier 3). I&amp;#039;ve provided some distro-specific notes and gotchas elsewhere.
&lt;/p&gt;

&lt;p&gt;
Apple became a Tier 1 operating system when I decided at the end of January 2026 to invest in a brand new Apple Silicon iMac. It&amp;#039;s now my principle desktop operating system and, as my daily driver, is going to be the platform on which I test things out most thoroughly. I also have access to a couple of old Apple iMacs (from 2015 and 2012) that use Intel CPUs and can only run modern versions of the operating system thanks to Open Core Legacy Patcher: their &amp;#039;officially supported&amp;#039; operating systems end with Catalina and Monterey respectively. Accordingly, Giocoso will be a Tier 1 supported application on only Catalina, Monterey and whatever &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; version runs on a 2024 iMac (Tahoe, probably). All other &lt;abbr title=&quot;Operating System&quot;&gt;OS&lt;/abbr&gt; versions will be Tier 4 support: definitely do-able and definitely done and &lt;a href=&quot;https://bbritten.com/softwares/giocoso/macos&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://bbritten.com/softwares/giocoso/macos&quot; rel=&quot;ugc nofollow noopener&quot;&gt;documented&lt;/a&gt;: but you&amp;#039;re essentially on your own.
&lt;/p&gt;

&lt;p&gt;
Windows is a bit of a special case, because it probably runs Giocoso just fine… but I have no means of knowing that for sure. Windows 10 reached end of Microsoft&amp;#039;s official support back in October 2025, so all the hardware I have running Giocoso on Windows 10 is now no longer representative of anything supported by the operating system&amp;#039;s own manufacturer. Windows 11 is, of course, fully supported by Microsoft -but I literally have no hardware that is officially supported for running it. I can &lt;em&gt;hack&lt;/em&gt; Windows 11 onto a bunch of spare hardware, but it will be an unsupported and unrepresentative platform. The principle, however, is that if you get Windows running the Windows Subsystem for Linux (WSL2) then you can install one of the supported distros on that (for example, Ubuntu or Fedora) and Giocoso will run perfectly well in that environment. So, it&amp;#039;s not that Giocoso won&amp;#039;t run on Windows: it&amp;#039;s just that I now expend zero development effort proving it does so. Any issues arising as you try to run it are therefore really yours to resolve. I will certainly offer advice and help if asked, but it will be merely on a &amp;#039;best efforts&amp;#039; basis. In the meantime, I have written &lt;a href=&quot;https://www.bbritten.com/softwares/giocoso/win11&quot; class=&quot;wikilink1&quot; title=&quot;softwares:giocoso:win11&quot; data-wiki-id=&quot;softwares:giocoso:win11&quot;&gt;installation instructions for Windows 11 here&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Giocoso does &lt;strong&gt;not&lt;/strong&gt; work on the Solus Linux distro.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;1.0 Operating System Support&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;operating_system_support&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;34-3899&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;installation&quot;&gt;2.0 Installation&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
The basic installation procedure for any supported operating system is, in a new terminal session:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget https://software.bbritten.com/gioinst&lt;/pre&gt;

&lt;p&gt;
The installer is small (around 20KB) , so it will take hardly any time to download it. Once  the installer has been downloaded, you launch it in the same folder you saved it to, with the command:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;bash gioinst&lt;/pre&gt;

&lt;p&gt;
You will first see a screen warning you that the installer will make quite a few changes to your system, if you let it:
&lt;/p&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20251017_164858.jpg?w=650&amp;amp;tok=a5056e&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;
&lt;/p&gt;

&lt;p&gt;
You need to type &amp;#039;y&amp;#039; (and then press [Enter]) to proceed. If you type anything else, the installer will terminate without having touched your system at all.
&lt;/p&gt;

&lt;p&gt;
At the end of the installation, when you first run Giocoso, you &lt;em&gt;may&lt;/em&gt; find the program display garbled (it is equally possible you won&amp;#039;t!). If you do, just visit the &lt;strong&gt;Administration&lt;/strong&gt; menu, take &lt;strong&gt;Option 2&lt;/strong&gt; to “edit the configuration file” and then press [Enter] through the various options (without changing any of them, really) until you return to the main program display: you should find all visual glitches gone (though you may need to go &lt;em&gt;back&lt;/em&gt; into the configuration options to adjust the size of the program logo: it defaults to being 220&amp;times;220 pixels in size and that might be too large on standard 1080p resolution displays).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.0 Installation&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;installation&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;3900-5274&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;software_packages_needed_for_giocoso_to_work&quot;&gt;2.1 Software packages needed for Giocoso to work&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
To start with, the Giocoso installer will check for the presence of various packages on your system and will seek to install any that it finds to be missing. You can usually just let it do it&amp;#039;s thing at this point, but if you are interested, here are the packages/programs that Giocoso deems essential to install:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; sqlite3 (a database)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ImageMagick (an image processing program)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ncurses (a program that allows command-line interfaces to look a bit more like graphical interfaces)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; grep (a text processing program)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; libsixel (a program which allows pictures to be displayed inside a terminal)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; util-linux (a program that allows for the generation of universally unique identifiers, or UUIDs)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; fontconfig (a utility for managing fonts) bc (a computational library that allows Bash to do floating point arithmetic)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; fmt (a tool allowing text messages to be wrapped across a terminal with proper formatting)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xdotool (a utility allowing command-line management of window placement and sizing)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xdpyinfo (a utility for determining the current screen resolution)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; flac (the library that allows FLAC audio files to be read and understood)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; ffmpeg (an audio player)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xclip (a little utility allowing command line management of the clipboard)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; nano (a simple text editor)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; curl (a command line tool for fetching files across the Internet)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; xterm (a terminal emulator or console window)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; dialog (a program that allows programs to draw &lt;abbr title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/abbr&gt;-like message boxes, file selectors and so on)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
If having any of those installed on your system gives you cause for concern, type &amp;#039;n&amp;#039; when the installer prompts you and give up on the idea of installing Giocoso altogether: the program cannot run without all of them being present, I&amp;#039;m afraid.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.1 Software packages needed for Giocoso to work&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;software_packages_needed_for_giocoso_to_work&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;5275-7108&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;a_word_about_fonts_and_display_sizes&quot;&gt;2.2 A Word About Fonts and Display Sizes&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Giocoso runs in a terminal session that is ideally at least 103 columns wide and 28 tall. Your choice of default font to use in such a terminal session will determine how Giocoso appears. It can look like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_34_40.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_peppermint_2025-10-21_13_34_40.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_34_40.png?w=650&amp;amp;tok=8066d6&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…or like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_35_44.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_peppermint_2025-10-21_13_35_44.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_35_44.png?w=650&amp;amp;tok=390f1f&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…or, if you really decide to pick unfortunate choices of default font and font-size, this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_36_17.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_peppermint_2025-10-21_13_36_17.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_peppermint_2025-10-21_13_36_17.png?w=650&amp;amp;tok=a27395&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
From that last example in particular, you can see that injudicious font choice (or font-size choice) can really mess with Giocoso&amp;#039;s display, with the program logo over-writing or colliding with the line drawing characters. To mitigate against this, Giocoso installs a few open source fonts whose existence can then be relied on to produce acceptable-looking program display. The main one is &lt;em&gt;Luxi Mono&lt;/em&gt;: choose that as your terminal&amp;#039;s default font at 12-point size and Giocoso is more or less guaranteed to display things correctly. The program shortcuts that the Giocoso installer places on your desktop and in your start menu are pre-configured to use Luxi Mono 12-point for their display, too, so they are auto-configured to display things correctly &amp;#039;out of the box&amp;#039;.
&lt;/p&gt;

&lt;p&gt;
If you choose to use different fonts, that&amp;#039;s fine too: but you may have to play around with point sizes to get an acceptable program display.
&lt;/p&gt;

&lt;p&gt;
Also note that the Giocoso installer will install the Libre Baskerville font (another open source font, so no licensing issues arise). This is a non-monospaced font (so has nothing to do with the program display in a terminal session), but is instead used to create the &amp;#039;caption labels&amp;#039; that appear underneath displayed album art. The use of this font is hard-coded and cannot be changed.
&lt;/p&gt;

&lt;p&gt;
A final factor to consider that will affect program display is the size of the album art that Giocoso will display as each new recording starts. This is configurable in the Administration menu, Option 2:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20251021_135006.jpg&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_20251021_135006.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20251021_135006.jpg?w=650&amp;amp;tok=11ccdf&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The default size is 320 (meaning that images will be displayed with a width of 320 pixels). You can increase or decrease this as the mood takes you, but don&amp;#039;t expect the results to look very good if you over-size things:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20231013_121247.png&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_20231013_121247.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20231013_121247.png?w=650&amp;amp;tok=12cb75&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Use of Giocoso may need a little bit of finagling at the start, in order to get these sorts of visual issues sorted. In general, however, if you&amp;#039;re displaying Giocoso in a 103&amp;times;28 terminal with a default, monospaced font that&amp;#039;s 12px in size and with album art dimensions set to 320px, you will &lt;em&gt;probably&lt;/em&gt; have zero display problems.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2.2 A Word About Fonts and Display Sizes&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;a_word_about_fonts_and_display_sizes&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;7109-9936&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;getting_started_post-install&quot;&gt;3.0 Getting Started, post-Install&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Once Giocoso is installed, you can launch it by (a) clicking on the launcher provided on the Desktop (some distros require you to &amp;#039;trust&amp;#039; or &amp;#039;mark as executable&amp;#039; the launcher before it will work); or (b) clicking the option provided somewhere in the main menu, which is usually to be found under &amp;#039;Multimedia&amp;#039; or (depending on distro) &amp;#039;Sounds &amp;amp; Video&amp;#039;. The main program display should then appear:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20251017_171540.jpg&quot; class=&quot;media&quot; title=&quot;software:giocoso:screenshot_20251017_171540.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/screenshot_20251017_171540.jpg?w=650&amp;amp;tok=b68b64&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Operation of the program beyond this point is hopefully self-explanatory: the &lt;strong&gt;Play Music&lt;/strong&gt; menu lets you select and play music; the &lt;strong&gt;Database Management&lt;/strong&gt; menu lets you create a music database and then add new recordings to it; the &lt;strong&gt;Reporting&lt;/strong&gt; menu lets you query your music database and generate reports from it, such as how many recordings you own, what proportion of them you&amp;#039;ve played and so on; the &lt;strong&gt;Administration&lt;/strong&gt; menu lets check for program updates or re-configure the persistent configuration file, and similar tasks. The &lt;strong&gt;Pro&lt;/strong&gt; menu is where advanced networking functionality resides (for example, pausing a play of music in your listening room and resuming it in the garden shed!). 
&lt;/p&gt;

&lt;p&gt;
Use the left- and right-arrow keys to select a menu option and have its various options displayed. You can also tap the letter corresponding to the relevant menu: &amp;#039;R&amp;#039; jumps you to the &lt;strong&gt;R&lt;/strong&gt;eporting menu, for example; &amp;#039;D&amp;#039; gets you directly to the &lt;strong&gt;D&lt;/strong&gt;atabase Management menu, and so on. Once any given menu is displayed, tap the number shown against a menu item to select that item. For example, tap &amp;#039;2&amp;#039; when the Play Music menu is selected to perform a &amp;#039;play music from selection filters&amp;#039; operation.
&lt;/p&gt;

&lt;p&gt;
The usual way to get started with the program would be, though not necessarily in this order:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Database Management → Create a music database&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Administration → Create or Edit the Configuration File&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Play Music → Play music with defaults&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
The underlying issue here is that you need (a) to have a database listing all the FLACs you possess; and (b) to have Giocoso configured to open that database by default; and (c) only when the configured default database name matches the database you&amp;#039;ve actually created can you then play music using it.
&lt;/p&gt;

&lt;p&gt;
By default, Giocoso is configured to expect the existence of a database called &lt;strong&gt;music&lt;/strong&gt;. If you therefore start by creating a database of that name, Giocoso will be fine: as soon as a database of that name is populated with details of the music you own, you&amp;#039;ll be able to use Giocoso to play it. If you want to name your database something else, that&amp;#039;s OK too: use the Database Management menu to create it, then use the Administration menu to adjust the configuration file to use that distinctively-named database as the default and &lt;em&gt;then&lt;/em&gt; you&amp;#039;ll be able to play music.
&lt;/p&gt;

&lt;p&gt;
Beyond that quick-start approach, however, you should read the relevant pages elsewhere in &lt;a href=&quot;https://www.bbritten.com/giocoso&quot; class=&quot;wikilink2&quot; title=&quot;giocoso&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;giocoso&quot;&gt;the user manual&lt;/a&gt; for an exploration (and explanation!) of the rest of the program&amp;#039;s functionality.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3.0 Getting Started, post-Install&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;getting_started_post-install&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;9937-13015&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;conclusion&quot;&gt;4.0 Conclusion&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Summarising things as compactly as I can, then:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Read your distro&amp;#039;s specific installation notes, to see if there are any pre- or post-installation steps you&amp;#039;ll need to take&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Fully update your distro, so that it&amp;#039;s using the latest packages and patches&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;wget &lt;a href=&quot;https://software.bbritten.com/gioinst&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://software.bbritten.com/gioinst&quot; rel=&quot;ugc nofollow noopener&quot;&gt;https://software.bbritten.com/gioinst&lt;/a&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;bash gioinst&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Launch Giocoso and create a new database. If it&amp;#039;s called “music”, play music immediately. If it&amp;#039;s called something other than “music”, alter the configuration file to use the non-default-named database instead and &lt;em&gt;then&lt;/em&gt; play music&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
I hope all your Giocoso Version 3 installations work successfully and that you get up-and-running with the new program quickly and painlessly!
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
[ &lt;a href=&quot;https://www.bbritten.com/softwares/giocoso/giocoso&quot; class=&quot;wikilink1&quot; title=&quot;softwares:giocoso:giocoso&quot; data-wiki-id=&quot;softwares:giocoso:giocoso&quot;&gt;Back to Giocoso Home Page&lt;/a&gt; ]
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;4.0 Conclusion&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;conclusion&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;13016-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/2/2acb764c9467bee1e565cb1a0e79b764.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/articles/dshensmith">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T09:04:20+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>dshensmith</title>
        <link>https://www.bbritten.com/articles/dshensmith</link>
        <description>
&lt;h2 class=&quot;sectionedit1&quot; id=&quot;why_daniel_shensmith_is_wrong&quot;&gt;Why Daniel Shensmith is Wrong&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Daniel Shensmith is a barrister-at-law in England and Wales, specialising (as far as I can tell from his &lt;a href=&quot;https://www.shensmith.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.shensmith.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;professional website&lt;/a&gt;) in family law, minor criminal matters and some contract law. On 27th March 2026, he posted &lt;a href=&quot;https://youtu.be/yW0FD3Sokik?si=kNo0cjY_LTDVeEdb&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://youtu.be/yW0FD3Sokik?si=kNo0cjY_LTDVeEdb&quot; rel=&quot;ugc nofollow noopener&quot;&gt;a video on YouTube&lt;/a&gt; regarding the UK Television Licence.
&lt;/p&gt;

&lt;p&gt;
At 18:10 in that video (he is quite the loquacious presenter, so he does repeat himself quite a bit and his videos can therefore be quite the slog) he said this: “The offence is that you are watching [a live programme of some sort]: &lt;strong&gt;that is the wording of the legislation&lt;/strong&gt;”.
&lt;/p&gt;

&lt;p&gt;
I took exception to that, because that is definitely &lt;em class=&quot;u&quot;&gt;not&lt;/em&gt; the wording of the legislation! The relevant legislation is Section 363 of the Telecommunications Act 2003 which actually states:
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;A television receiver must not be installed or used unless the installation and use of the receiver is authorised by a licence under this Part.&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Installed or used&lt;/strong&gt;, not “watching” or (as he later goes on to elaborate) “viewing or recording”.
&lt;/p&gt;

&lt;p&gt;
I took exception to him literally claiming “the wording of the legislation is X” when it absolutely is not. I wrote a comment to his video: “how can you completely misrepresent what the legislation says at 18:10 ish? The offence is not watching or viewing. It’s, explicitly, to &amp;#039;install or use&amp;#039;”. He apparently took exception to the word “misrepresent” there, though I have no idea why: maybe it means something felonious in legal circles? To me it just means “you said it wrong”. If you declared the sky to be green, I&amp;#039;d say you had misrepresented the nature of the sky!
&lt;/p&gt;

&lt;p&gt;
Anyway, he replied to my comment objecting to the word “misrepresent” and then claiming &lt;em&gt;“The key provision is Regulation 9(1) of the Communications (Television Licensing) Regulations 2004, which makes clear that installing or using a television receiver is only caught where it is done *for the purpose of receiving television programme services.*&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
He actually misrepresents the law again in saying this. The actual regulation in effect today is &lt;a href=&quot;https://www.legislation.gov.uk/uksi/2016/704/made&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.legislation.gov.uk/uksi/2016/704/made&quot; rel=&quot;ugc nofollow noopener&quot;&gt;the 2016 Communications (Television Licensing) (Amendment) Regulations 2016&lt;/a&gt;, but as that merely lightly amends and incorporates the 2004 regulation, I&amp;#039;ll let the mis-citation pass.
&lt;/p&gt;

&lt;p&gt;
The key part of the 2016 regulation is, however, Regulation 6(1):
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;(1) Subject to paragraph (2), in Part 4 of the Act (licensing of TV reception), “television receiver” means any apparatus installed or used for the purpose of receiving (whether by means of wireless telegraphy or otherwise (a)any television programme service, or (b)an on-demand programme service which is provided by the BBC, whether or not the apparatus is installed or used for any other purpose.&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
There are those words “installed or used” again! The word “receiving” also gets a look-in. But at no point are the words “viewing”, “recording” or “watching” used. So Daniel is again wrong to claim the legislation says “X” when it in fact doesn&amp;#039;t mention “X” at all.
&lt;/p&gt;

&lt;p&gt;
For reasons known only to Daniel, he decided to release a second video a day later, &lt;a href=&quot;https://youtu.be/g-ILP-SeJ7g?si=d_jXBvlGMM15OZ37&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://youtu.be/g-ILP-SeJ7g?si=d_jXBvlGMM15OZ37&quot; rel=&quot;ugc nofollow noopener&quot;&gt;titled &amp;quot;TV Licensing Myth DEBUNKED&amp;quot;&lt;/a&gt;, with a thumbnail exclaiming “There&amp;#039;s always one!” (the “one” he refers to is me: I was somewhat flattered, as I&amp;#039;ve never had a video addressed to me personally before!). What the thumbnail and his commentary &lt;em&gt;seems&lt;/em&gt; to mean is, “There&amp;#039;s always one person who picks me up on my errors and points them out”, but that of course is not what his passive-aggressive presentation purports to say!
&lt;/p&gt;

&lt;p&gt;
In this second video, he goes on a wild ramble involving laptops and people making a cup of tea whilst a live program plays on their tablet: all irrelevant. The “myth” he claims to be debunking is that merely owning a TV is enough to require a licence: something I never suggested to be the case and know for a fact to &lt;em&gt;not&lt;/em&gt; be the case. So Lord knows what Daniel was aiming at, but his aim is as good as mine at a game of darts after the 9th pint of the evening.
&lt;/p&gt;

&lt;p&gt;
The question he opens that second video with is, however, worth quoting in full:
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Is it true or is it a myth that if you have a TV apparatus that is &lt;/em&gt;capable&lt;em&gt; of receiving a live TV signal that you need a TV licence?”&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
If he&amp;#039;d asked, I&amp;#039;d have told him the answer is emphatically “no”. I never suggested otherwise. 
&lt;/p&gt;

&lt;p&gt;
At 1:28, he says “Let me tell you why I said the law says the offence is &amp;#039;watching or recording live TV&amp;#039;, because that is what it means…”. My point here is: it&amp;#039;s not what the law says. It&amp;#039;s also not &lt;strong&gt;only&lt;/strong&gt; what the law &lt;em&gt;means&lt;/em&gt;, as I&amp;#039;ll come on to: but at least he&amp;#039;s acknowledging at this point that his earlier video was an explanation of what he &lt;em&gt;thinks&lt;/em&gt; the law &lt;strong&gt;means&lt;/strong&gt;, not what it actually says. Progress of sorts. As he then says at 1:33 “whether it says [what I claimed it said] word for word or not is another matter”! A nice admission, finally, that what he claimed the law to be was very definitely &lt;em class=&quot;u&quot;&gt;not&lt;/em&gt; “word for word” accurate!
&lt;/p&gt;

&lt;p&gt;
At 1:37, he admits “even the TV Licensing &lt;strong&gt;website&lt;/strong&gt; clarifies that the offence is to &amp;#039;watch or record&amp;#039; live TV” (emphasis mine). It would perhaps be churlish to point out to a barrister that a website isn&amp;#039;t the law. But it isn&amp;#039;t, and what the TV Licensing people put on their website to explain to the general public what activities require a licence isn&amp;#039;t what the law actually is. But at least he&amp;#039;s fessed up where he&amp;#039;s getting his wording from!
&lt;/p&gt;

&lt;p&gt;
At 2:39 he gets to the crux of his argument: the 2004 regulation makes using the TV “for the purpose of receiving any television programme” require a licence. He emphasises the “purpose” bit and repeats that at 3:06, finally delivering the punchline at 3:12: “Purpose means intent, it requires intent”.
&lt;/p&gt;

&lt;p&gt;
After this, he gets completely side-tracked onto the matter of laptops, so I won&amp;#039;t dissect his second video further at this time. But let me explain why Daniel has completely missed the point.
&lt;/p&gt;

&lt;p&gt;
How does a TV set plug itself into an aerial socket and tune itself to British TV frequencies? My answer to that is: it can&amp;#039;t. TV sets these days have an &amp;#039;initial setup&amp;#039; procedure where you set your country and then get it to auto-tune the frequencies, you first having plugged the TV into the aerial socket by hand. Those are all &lt;em&gt;purposeful&lt;/em&gt; actions, done by you. If a TV set is thus &lt;em&gt;configured&lt;/em&gt;, deliberately and purposefully, to display live TV, that&amp;#039;s all the “purpose” the 2004 and 2016 regulations require.
&lt;/p&gt;

&lt;p&gt;
To be clear: buying a TV does &lt;strong&gt;not&lt;/strong&gt; require a licence. Unpacking the TV does &lt;strong&gt;not&lt;/strong&gt; require a licence. Setting the TV upon a console or table of some sort does &lt;strong&gt;not&lt;/strong&gt; require a licence. Plugging the TV into the power outlet does &lt;strong&gt;not&lt;/strong&gt; require a licence. Even plugging the TV into the aerial socket does &lt;strong&gt;not&lt;/strong&gt; require a licence. But you do all those things &lt;strong&gt;and&lt;/strong&gt; tune the TV set in: licence required, even if you never look at the TV ever again.
&lt;/p&gt;

&lt;p&gt;
So the statute says “install or use”. When Daniel says the offence is “watch or record”, he is talking about the “use” part of the statute. How do you &lt;em&gt;use&lt;/em&gt; a TV receiver? By watching what it displays in real-time, or by recording its output to some medium. So yes, absolutely: watch and record &lt;strong&gt;are&lt;/strong&gt; part of what the statute says is “use” and the regulations call “receiving” and “use”. We don&amp;#039;t disagree on that at all, in fact.
&lt;/p&gt;

&lt;p&gt;
By &lt;em&gt;limiting&lt;/em&gt; his description of what the offence is to &amp;#039;watch or record&amp;#039;, however, he has completely neglected the significance of the &amp;#039;install&amp;#039; prong of the Act. 
&lt;/p&gt;

&lt;p&gt;
Why does that matter? Because, behind walls, curtains and locked doors, I&amp;#039;d argue that it is practically impossible &lt;em&gt;ever&lt;/em&gt; to prove that someone &amp;#039;watched&amp;#039; live TV, beyond a reasonable doubt. Most convictions on that charge are down to self-incrimination, because if you keep your mouth shut about your viewing habits, there&amp;#039;s no way anyone could state with certainty what you &amp;#039;watched&amp;#039;. The &amp;#039;recording&amp;#039; bit is hard to prove, too: sure, they could seize the USB stick or hard disk you record to -but if it was encrypted? It&amp;#039;s not impossible, but it&amp;#039;s definitely a hard nut to crack… and probably way more effort for the authorities to go to than a conviction and a few hundred pounds of fine is going to be worth.
&lt;/p&gt;

&lt;p&gt;
The &amp;#039;install&amp;#039; prong, however, is much easier to &amp;#039;get you&amp;#039; on: all someone has to do is walk up to your TV set and switch it on. If it displays a live TV programme, the case against you is made out. You can swear until you are blue in the face that you never actually watch live TV, but it won&amp;#039;t avail you: because the second prong of the law that Daniel failed to mention means that they don&amp;#039;t &lt;em&gt;need&lt;/em&gt; to ascertain your actual viewing habits. Your equipment&amp;#039;s configuration is sufficient to prove &amp;#039;intent to view&amp;#039; and &amp;#039;capability of viewing&amp;#039;. “Installed” is good enough to get you convicted.
&lt;/p&gt;

&lt;p&gt;
I suspect Daniel barked up the wrong tree with me because he thinks I meant “if the TV is capable of receiving live TV, licence required”. I can&amp;#039;t imagine &lt;em&gt;why&lt;/em&gt; he&amp;#039;d think I meant that, because it&amp;#039;s such a vacuous statement. All TV sets, by definition, have the “capability” of receiving live TV. They wouldn&amp;#039;t be of much use if they didn&amp;#039;t! But that is their “latent” capability: it&amp;#039;s what their electronics are &lt;em&gt;inherently&lt;/em&gt; capable of. That capability, however, has to be &amp;#039;actualised&amp;#039; or made manifest by someone plugging it in and tuning it in to appropriate frequencies. My claim is that a TV whose capabilities have been &amp;#039;actualised&amp;#039; in that way requires a TV Licence. Daniel&amp;#039;s mis-statement of the law would suggest it does not. Daniel is wrong on that point, because the law, in black and white, says &lt;em class=&quot;u&quot;&gt;more&lt;/em&gt; than he claimed it says.
&lt;/p&gt;

&lt;p&gt;
Funnily enough, his waffling about using a laptop to receive live TV signals becomes important in this context. A laptop (or computer, phone or tablet) is &lt;em class=&quot;u&quot;&gt;not&lt;/em&gt; inherently capable of receiving live TV signals over the air. They can display live programming by processing a stream of data -but they deal with streams of all sorts of data and there&amp;#039;s nothing that makes a Sky News broadcast any different from a Daniel Shensmith YouTube video: it&amp;#039;s all just data! My point here is that there can&amp;#039;t really be “install” issues with computing devices. They naturally have the ability to display video streams. They do it without any intent on the part of the user: one click and live TV can start displaying. Nothing needs to be especially plugged in. No special aerials are needed. No particular &amp;#039;tuning&amp;#039; is necessary.
&lt;/p&gt;

&lt;p&gt;
So the law&amp;#039;s two-prong approach, of “intent or use”, is really rather cleverly written. For old-fashioned TVs, the “use” prong is very hard to prove, so they&amp;#039;ll rely on the “installed” prong. For computers, laptops and tablets it&amp;#039;s &lt;em&gt;exactly the opposite way around&lt;/em&gt;: intent is non-existent, so they&amp;#039;ll have to rely on the “use” part of the offence.
&lt;/p&gt;

&lt;p&gt;
That&amp;#039;s actually trivially easy to do for computing devices, though: streaming video requires packets to be sent to a known IP address, for starters. Now, IP addresses are not really specific enough to bang particular individuals up to rights… but they are suggestive. More importantly, however, if you have logged in to iPlayer, they know precisely which account is accessing which exact content. Their terms of service make it plain that you&amp;#039;re not supposed to share your login details with anyone else: so if “userX accessed live content”, that&amp;#039;s you and you&amp;#039;re responsible for it, even if you claim (as Daniel perversely suggests will be a winning argument) you were in the kitchen making a cup of tea at the time.
&lt;/p&gt;

&lt;p&gt;
Non-BBC services that offer live content (such as Amazon Prime Video) also store records of who accessed what content, when: so proving “use” is trivially easy for &lt;em&gt;any&lt;/em&gt; on-line source of live content.
&lt;/p&gt;

&lt;p&gt;
You see why I thought it important to state what the law &lt;em&gt;actually&lt;/em&gt; is? If you say it&amp;#039;s “watch and record”, you&amp;#039;ve limited it to “use” and proving use of a traditional TV is monstrously hard and might give people a false sense of security. If you say it&amp;#039;s “install or use”, you are not only more accurate in terms of the words actually used in the legislation, you&amp;#039;re making it clear that the offence has two prongs and you can be skewered on either: traditional TV will probably skewer you more on the “installed” side of things than the “use”; laptops, tablets, phones and computers will probably skewer you on the “use” side of things, rather than the “installed”. The point remains that &lt;em&gt;because&lt;/em&gt; it&amp;#039;s a two-pronged piece of legislation, they can get you either way.
&lt;/p&gt;

&lt;p&gt;
Daniel Shensmith may be an excellent barrister for all I know. But he&amp;#039;s sometimes a lousy communicator (in my opinion, obviously!) and, especially on this occasion, I believe he has missed the very careful way the law has &lt;em&gt;actually&lt;/em&gt; been written. No, plugging a TV into the wall has never been and never will be a licensable act: but deliberately tuning it in &lt;em&gt;is&lt;/em&gt; (and always has been). It&amp;#039;s purposeful and easy to prove and it matters not one whit whether you&amp;#039;ve actually viewed the results of your careful, deliberate installation. The law says you don&amp;#039;t have to have done, to require a licence.
&lt;/p&gt;

&lt;p&gt;
I&amp;#039;ll conclude by mentioning that I do own a TV set of the traditional type (if LCDs can really be called &amp;#039;traditional&amp;#039;! God, I feel old!!). It sits in the Summer House, plugged into an old Mac Mini, with its audio output being fed into an old hi-fi system and a pair of speakers. I can play music on it on a Summer&amp;#039;s evening, with Giocoso; I could even watch a movie out there, using Emby. What I can&amp;#039;t do is ever watch live TV on it. Why not? Because there&amp;#039;s no aerial in the Summer House, so there&amp;#039;s no aerial socket to plug it into. What&amp;#039;s more, when I ran that TV&amp;#039;s &amp;#039;first setup&amp;#039; routine, I declared I was in Australia: the auto-tuning process it then went off to do resulted in a total wall of snowy white noise, with no possibility of actual program reception. That TV set also has the BBC iPlayer app built-in: it&amp;#039;s conceivable that I might be able to watch BBC programme content on it via that mechanism …except I can&amp;#039;t, because I deleted my BBC account back in 2018 and if you are unable to log in (“deliberately”) to the BBC, you can&amp;#039;t ever view any iPlayer content.
&lt;/p&gt;

&lt;p&gt;
So: a TV set deliberately and intentionally installed in a way to &lt;em&gt;not&lt;/em&gt; receive live TV signals; and a deliberate deletion of the one account I&amp;#039;d need to view streaming content from the BBC: I won&amp;#039;t be convicted on either the “installed” or “use” prongs of the Act.
&lt;/p&gt;

&lt;p&gt;
In conclusion, Daniel originally mis-stated what the words of the law are. In doubling down on his mis-statement, he limits the application of the law in a way that it&amp;#039;s not actually limited to in practice, which is potentially dangerous to his viewers. He clearly doesn&amp;#039;t like being corrected or contradicted: his passive-aggressive response to me is indicative of that, at least. But he was wrong and remains so. I&amp;#039;ve also now blocked his channel on my phone, as it&amp;#039;s pointless listening to someone claiming to explain the law when he can&amp;#039;t even state it accurately… or spot the nuance and import of how it is actually written.
&lt;/p&gt;

&lt;/div&gt;

&lt;!-- cachefile /var/www/dokuwiki/data/cache/a/ad668836a9f803e5fc4a9209b06347e1.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.12.32.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T08:12:43+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-31_at_09.12.32.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.12.32.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.12.32.png?w=500&amp;amp;h=500&amp;amp;tok=431d95&quot; alt=&quot;screenshot_2026-03-31_at_09.12.32.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.00.57.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T08:10:31+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-31_at_09.00.57.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-31_at_09.00.57.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-31_at_09.00.57.png?w=500&amp;amp;h=500&amp;amp;tok=c70a7c&quot; alt=&quot;screenshot_2026-03-31_at_09.00.57.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=software%3Agiocoso%3Agiocosoico.png&amp;ns=software%3Agiocoso&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-31T08:03:19+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>giocosoico.png - created</title>
        <link>https://www.bbritten.com/?image=software%3Agiocoso%3Agiocosoico.png&amp;ns=software%3Agiocoso&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/software/giocoso/giocosoico.png?w=500&amp;amp;h=500&amp;amp;tok=354a83&quot; alt=&quot;giocosoico.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/articles">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T20:17:00+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>articles</title>
        <link>https://www.bbritten.com/articles</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;articles&quot;&gt;Articles&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Articles&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;articles&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-23&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;musical_articles&quot;&gt;Musical Articles&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/articles/keystomusic&quot; class=&quot;wikilink1&quot; title=&quot;articles:keystomusic&quot; data-wiki-id=&quot;articles:keystomusic&quot;&gt;(Primary) Keys to Music: How information theory should guide your music tagging practice&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/axioms&quot; class=&quot;wikilink1&quot; title=&quot;articles:axioms&quot; data-wiki-id=&quot;articles:axioms&quot;&gt;Axioms of Classical Music Tagging&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/howtoripansacd&quot; class=&quot;wikilink1&quot; title=&quot;articles:howtoripansacd&quot; data-wiki-id=&quot;articles:howtoripansacd&quot;&gt;How to rip an SACD&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/howtoripacd&quot; class=&quot;wikilink2&quot; title=&quot;howtoripacd&quot; rel=&quot;nofollow&quot; data-wiki-id=&quot;howtoripacd&quot;&gt;How to rip a CD (with Semplice)&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/howtopro&quot; class=&quot;wikilink1&quot; title=&quot;articles:howtopro&quot; data-wiki-id=&quot;articles:howtopro&quot;&gt;How to build a Giocoso Pro Server on Arch&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/musicgenres&quot; class=&quot;wikilink1&quot; title=&quot;articles:musicgenres&quot; data-wiki-id=&quot;articles:musicgenres&quot;&gt;A List of Classical Music Genres&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/articles/bachcat&quot; class=&quot;wikilink1&quot; title=&quot;articles:bachcat&quot; data-wiki-id=&quot;articles:bachcat&quot;&gt;Bach&amp;#039;s Cantatas&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Musical Articles&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;musical_articles&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;24-490&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;technical_articles&quot;&gt;Technical Articles&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/articles/buildarch&quot; class=&quot;wikilink1&quot; title=&quot;articles:buildarch&quot; data-wiki-id=&quot;articles:buildarch&quot;&gt;Build a virtual machine running Arch &amp;amp; Gnome (or KDE)&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/cleanpdf&quot; class=&quot;wikilink1&quot; title=&quot;articles:cleanpdf&quot; data-wiki-id=&quot;articles:cleanpdf&quot;&gt;Cleaning PDFs of metadata&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/macostweaks&quot; class=&quot;wikilink1&quot; title=&quot;articles:macostweaks&quot; data-wiki-id=&quot;articles:macostweaks&quot;&gt;MacOS issues&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/bulkreplaygain&quot; class=&quot;wikilink1&quot; title=&quot;articles:bulkreplaygain&quot; data-wiki-id=&quot;articles:bulkreplaygain&quot;&gt;Adding ReplayGain to FLACs in bulk&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/proxmoxaudio&quot; class=&quot;wikilink1&quot; title=&quot;articles:proxmoxaudio&quot; data-wiki-id=&quot;articles:proxmoxaudio&quot;&gt;Building LXC Containers on Proxmox that can &amp;quot;do&amp;quot; audio&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/random&quot; class=&quot;wikilink1&quot; title=&quot;articles:random&quot; data-wiki-id=&quot;articles:random&quot;&gt;Random bits and pieces&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Technical Articles&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;technical_articles&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;491-882&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;other_articles&quot;&gt;Other Articles&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/articles/dshensmith&quot; class=&quot;wikilink1&quot; title=&quot;articles:dshensmith&quot; data-wiki-id=&quot;articles:dshensmith&quot;&gt;Why Daniel Shensmith is wrong!&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Other Articles&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;other_articles&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;883-965&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;selected_old_blog_posts&quot;&gt;Selected Old Blog Posts&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/articles/oldblog/hyperaccrip&quot; class=&quot;wikilink1&quot; title=&quot;articles:oldblog:hyperaccrip&quot; data-wiki-id=&quot;articles:oldblog:hyperaccrip&quot;&gt;Is AccurateRip Accurate (9th February 2024)&lt;/a&gt;&lt;br/&gt;

&lt;a href=&quot;https://www.bbritten.com/articles/oldblog/cao&quot; class=&quot;wikilink1&quot; title=&quot;articles:oldblog:cao&quot; data-wiki-id=&quot;articles:oldblog:cao&quot;&gt;Compositions-at-Once (15th January 2021)&lt;/a&gt;&lt;br/&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Selected Old Blog Posts&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;selected_old_blog_posts&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;966-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/6/63ea31090821ff829f894cd8f52d4c07.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/softwares/semplice/semchange">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T19:23:56+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>semchange</title>
        <link>https://www.bbritten.com/softwares/semplice/semchange</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;semplice_version_2_-_changelog_since_version_200&quot;&gt;Semplice Version 2 - Changelog (since version 2.00)&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/sempliceico.png?w=220&amp;amp;tok=2e3735&quot; class=&quot;medialeft&quot; align=&quot;left&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;220&quot; /&gt;This page describes the changes made in each point release of Semplice since its first release as &lt;strong&gt;version 2.00&lt;/strong&gt; on June 30th, 2024. Changes are listed in reverse chronological order (i.e., the most recent releases appear first).
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2 - Changelog (since version 2.00)&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_2_-_changelog_since_version_200&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-354&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;semplice_version_213_-_march_30th_2026&quot;&gt;Semplice Version 2.13 - March 30th 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug Fix&lt;/strong&gt;&lt;/em&gt;: The code dealing with converting one audio format to another assumed that if you were using macOS, you would be using Intel CPUs. Specifically, this meant only the Intel version of the &lt;strong&gt;sacd&lt;/strong&gt; utility would be invoked to make sense of ISO files. Now corrected: Semplice checks whether you are using an Intel CPU or Apple Silicon and invokes the correct version of the &lt;strong&gt;sacd&lt;/strong&gt; utility accordingly. In simple terms, Apple Silicon can now do ISO conversions.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: The program window title bar should now show the current working folder.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: You might regard this as a bug fix of sorts, too! If configured to do so in the persistent configuration file, Semplice will delete a source Album Art jpg or png after embedding it into a set of FLACs as part of a tagging process. The trouble is, it didn&amp;#039;t check whether the embedding process had actually worked before deleting the source artwork file! If, for example, the FLACs were read-only, the embed would silently fail… but the source artwork would get deleted anyway: less than convenient! Now Semplice performs a fresh check of the FLACs before deleting the standalone artwork: if it hasn&amp;#039;t been embedded successfully, then no delete of the original takes place.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement / Bug-fix&lt;/strong&gt;&lt;/em&gt;: Related to the above, Semplice now checks for the writeability of the first FLAC in a folder before allowing you to proceed to enter album-wide or track-specific tags, including custom ones and/or track renumbering. If the first file isn&amp;#039;t read-writeable, no tagging or renumbering is allowed to start. Of course, this doesn&amp;#039;t guarantee success: you could conceivably have mixed-mode files in the one file, such that file 1 is read-write and file 53 is read-only. Tagging is still going to fail for file 53 in that case, but it would be unusual (I think) to have multiple read-write modes in the one folder. The check of file 1 is a reasonable balance between safety and efficiency, therefore.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Updates are now handled by the same sort of code that had governed Giocoso updates for a couple of versions. This avoids the need to laboriously compute MD5 checksums for every installed file and compare them to checksums stored on the supplying server. It&amp;#039;s now much faster, more efficient and, as an added bonus, a lot simpler to code and to maintain. The Semplice installer has been similarly updated/improved.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement / New Feature&lt;/strong&gt;&lt;/em&gt;: The look of the program has undergone significant change, to bring it into line with the look and feel of my other software (particularly the latest version of Giocoso). Specifically, this means:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Menus are now simply listed, without spaces between items trying to indicate some meaning to the apparent grouping (with lettered options still being distinct from numbered ones, because they perform system functions, rather than data processing ones)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; The right-hand pane of the main program interface will display the embedded album art of the first FLAC in the current working folder, if there is any. If there isn&amp;#039;t, a text-based program logo will be displayed instead&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; The “I” option has been removed from all menus: it triggered the inspection the audio stream of the first FLAC in the current working folder and then displayed whether it was 16-bit or 24-bit audio and its sample rate. That now just happens automatically, so there is no need for a separate menu item to trigger it. The data (along with information about whether there is one or more FLACs present in the working folder) is now always displayed in the upper-right corner of the screen, assuming any FLACs at all exist in the working folder currently selected.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; The “B” option has been removed from all menus: it triggered a volume boost of all FLACs in the current working folder. There was always a separate menu option for doing that (&lt;strong&gt;Audio Processing&lt;/strong&gt; → &lt;strong&gt;Boost Volume&lt;/strong&gt;) so it was always a bit redundant: it has now therefore been removed.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; The option to Quit the program is now visible on all menus in exactly the same place&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Practically, it means the program on launch might look like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-27_at_11.20.43.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-27_at_11.20.43.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-27_at_11.20.43.png?w=600&amp;amp;tok=54a2c5&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Once you&amp;#039;ve tagged up your music files and thus embedded some album art into them, the program will change to look like this:
&lt;/p&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-27_at_11.24.33.png?w=600&amp;amp;tok=42c3d1&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;
&lt;/p&gt;

&lt;p&gt;
The visual cue of album art reminds you of what FLACs you&amp;#039;re dealing with and confirms that embedding the artwork has been successful: it might also highlight those occasions when you&amp;#039;ve applied the &lt;em&gt;wrong&lt;/em&gt; album art to a folder of music, as in this case!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: To accommodate this graphical new way of presenting the program, the persistent configuration file (and thus the &lt;strong&gt;Miscellaneous&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt;) acquires two new parameters to set: &lt;strong&gt;Use Kitty Graphics&lt;/strong&gt; (defaults to no, meaning &amp;#039;use sixel graphics instead&amp;#039;); and &lt;strong&gt;Album Art display size&lt;/strong&gt; (defaults to 380, meaning &amp;#039;display at 380&amp;times;380 pixels&amp;#039;):
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-21_at_17.42.27.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-21_at_17.42.27.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-21_at_17.42.27.png?w=600&amp;amp;tok=1d8c3a&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Here, I&amp;#039;m saying to use Sixel Graphics (because I&amp;#039;ve explicitly said “no, don&amp;#039;t use Kitty graphics”) and to resize all embedded album art to 560&amp;times;560 pixels. Note that the resizing does &lt;strong&gt;not&lt;/strong&gt; respect aspect ratio: Semplice wants &lt;em&gt;square&lt;/em&gt; album art, so if you don&amp;#039;t present it with square art, it will &lt;em class=&quot;u&quot;&gt;force&lt;/em&gt; it to be square by picking one of the dimensions and forcing the other to match, no matter what that does to the stretched-ness of the result.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: On macOS, using the &lt;strong&gt;Audio&lt;/strong&gt; menu, &lt;strong&gt;Option 3&lt;/strong&gt; to generate a spectrum analysis of a folder of FLACs would fail. You wouldn&amp;#039;t see the error message (because Semplice suppresses it!) but under the hood, the error “display: delegate library support not built-in &amp;#039;&amp;#039; (X11) @ error/display.c/DisplayImageCommand/1907” was being generated, resulting in you seeing… nothing at all after the lengthy audio analysis process had taken place. That&amp;#039;s an indication that the tool used to display the spectrum analysis graph was unable to find an X11 server (not exactly unusual in a macOS environment that doesn&amp;#039;t natively use X11 at all!) The bug is now fixed: the code now tests for whether it&amp;#039;s running on macOS or not and, if so, uses the Preview app to display the spectrum graph. Linux environments continue to use the ImageMagick display tool:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-22_at_04.01.26.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-22_at_04.01.26.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-22_at_04.01.26.png?w=600&amp;amp;tok=532ff6&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: For similar reasons to the last bug-fix above, if you took the &lt;strong&gt;Tagging&lt;/strong&gt; menu, &lt;strong&gt;Option 8&lt;/strong&gt; to extract album art &lt;em&gt;and&lt;/em&gt; you had previously configured the persistent configuration file to say “Display album art when extracting = yes”, then on macOS, the album art would get extracted just fine but it &lt;strong&gt;wouldn&amp;#039;t&lt;/strong&gt; also be displayed, despite the configuration file saying it should be. That was again because of a dependency on X11 which means things will be fine on Linux, but not on macOS. Now fixed: the art extraction tool now knows how to use the native macOS Preview app to display the results of the extraction.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Assorted Code Improvements&lt;/em&gt;&lt;/strong&gt;: There have been various changes to code to make it more reliable and robust. Some bits of syntax that were technically OK could break on edge cases; their refactoring or re-writing should make them reliable in far more situations. Consistent use of &amp;#039;modern&amp;#039; Bashism (such as the use of double square brackets (&lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semplice&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semplice&quot; data-wiki-id=&quot;softwares:semplice:semplice&quot;&gt;...&lt;/a&gt;) instead of single ones ([ … ]) is another example of the sort of code &amp;#039;refreshing&amp;#039; that has taken place.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: MacOS represents accented Unicode characters (for example, ä or é) as two distinct &amp;#039;glyphs&amp;#039; (i.e., as &lt;strong&gt;a + “&lt;/strong&gt; or &lt;strong&gt;e + &amp;#039;&lt;/strong&gt;). Linux represents the same characters as single, non-decomposed glyphs (i.e., literally as the single character ä or é). The difference is not exactly apparent to most users: the text representation of either representation looks identical. File systems can treat the two differently, however; and programs like ImageMagick will get completely confused by the decomposed version (see &lt;a href=&quot;https://www.bbritten.com/blog/macos_woes_part_94&quot; class=&quot;wikilink1&quot; title=&quot;blog:macos_woes_part_94&quot; data-wiki-id=&quot;blog:macos_woes_part_94&quot;&gt;this blog post&lt;/a&gt; for examples and for the manual fix). This release of Semplice therefore addresses the problem by running all tag submissions through the &lt;strong&gt;uconv&lt;/strong&gt; utility to force glyphs to be of the single-character, non-decomposed sort. Note that a fresh install of Semplice gets this utility installed for you; an upgrade to this version &lt;em&gt;does not&lt;/em&gt; …and you should therefore follow that aforementioned blog post&amp;#039;s instructions on how to manually install it. If the utility is not present on a macOS system, accented characters will continue to be stored in their decomposed, multi-glyph forms.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Bug-fix&lt;/em&gt;&lt;/strong&gt;: This one&amp;#039;s a really stupid one on my part! The Semplice installation code for Debian and Ubuntu (and &lt;em&gt;only&lt;/em&gt; those distros) forgot to install the &lt;strong&gt;dialog&lt;/strong&gt; utility. This meant the entire installation looked awful (though it would go to successful completion despite itself). If you happened to have installed Giocoso first, you&amp;#039;d not have noticed the problem (as Giocoso successfully installed dialog for you): guess how come I didn&amp;#039;t notice this before now! Problem is now fixed, anyway.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement&lt;/em&gt;&lt;/strong&gt;: The new program logo (see above) triggers the addition of two new configuration parameters to control its size and position:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.06.32.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-24_at_10.06.32.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.06.32.png?w=600&amp;amp;tok=20b114&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Size of the Program Logo&lt;/strong&gt; takes a numeric number of pixels, that is replicated for height &lt;em&gt;and&lt;/em&gt; width (so an entry of &amp;#039;180&amp;#039; turns into a dimension setting of 180&amp;times;180 pixels). &lt;strong&gt;Program Logo position&lt;/strong&gt; takes a positive or negative number of characters by which to nudge the logo to the right or left respectively. Thus a setting of ”-13“ means &amp;#039;move the logo 13 characters to the left&amp;#039; and setting of “9” means &amp;#039;move it 9 characters to the right&amp;#039;. For example, here&amp;#039;s 220 and -11:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.09.43.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-24_at_10.09.43.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.09.43.png?w=300&amp;amp;tok=122b65&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…and here&amp;#039;s 90 and 16:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.10.57.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-24_at_10.10.57.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-24_at_10.10.57.png?w=300&amp;amp;tok=cd8996&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The defaults are 220 and 0: the parameters allow you to tweak the logo display to suit your own monitor settings.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: The software licence is now viewable within a dialog form, rather than with the less utility.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Significant Enhancement&lt;/em&gt;&lt;/strong&gt;: The &lt;strong&gt;Miscellaneous&lt;/strong&gt; menu now has a new &lt;strong&gt;Option 4: Change the program colour scheme&lt;/strong&gt;:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.13.10.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-25_at_15.13.10.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.13.10.png?w=600&amp;amp;tok=1c7708&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The top part of the dialog form tells you what colours you can set: 12 is bright blue, for example, whilst 1 is normal red. The main part of the dialog then describes various &amp;#039;components&amp;#039; of the Semplice interface. You are told what the &amp;#039;canonical defaults&amp;#039; are for each one (i.e., what colour scheme I had in mind when designing Semplice!), but for any one of them, you can type in a new colour number, press OK and the program interface will change to match. Suppose I wanted Semplice to draw its box characters in blue: I would type in 12 (or 4) in the second component window:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.18.10.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-25_at_15.18.10.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.18.10.png?w=600&amp;amp;tok=496658&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
If I press OK at this point, I see this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.18.47.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-25_at_15.18.47.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.18.47.png?w=600&amp;amp;tok=9eb1a1&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
If I wanted all that cyan-coloured text to look blood-red, I&amp;#039;d fill in the fourth colour field with the number 9:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.19.49.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-25_at_15.19.49.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.19.49.png?w=600&amp;amp;tok=38cc1d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
And so on. Basically, the feature is there to allow Semplice to be tweaked and configured to run decently on light-coloured terminals, but you can use it just to experiment and have fun too! If it all gets too much for you, just click the “Reset to Defaults” button and the &amp;#039;normal&amp;#039; colour scheme will be restored, once you also press [Enter]. Bear in mind that whatever colours you pick for Semplice to use, they work in the context of the colour profile in use by your terminal emulator, so the results might not be quite what you expect. For example, without changing any of the colour defaults at all, the program logo text is meant to be displayed in cyan (or pale blue), but:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.30.24.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-03-25_at_15.30.24.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-03-25_at_15.30.24.png?w=600&amp;amp;tok=883221&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…in this sea of green, you&amp;#039;d be hard-pressed to know that the &amp;#039;Semplice&amp;#039; big logo on the right was in blue-anything: it looks much more pale green or even vaguely yellow! You&amp;#039;ll need to experiment, therefore!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.13 - March 30th 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_213_-_march_30th_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;355-12975&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;semplice_version_212_-_february_2nd_2026&quot;&gt;Semplice Version 2.12 - February 2nd 2026&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Major Enhancement&lt;/strong&gt;&lt;/em&gt;: Support for installing onto macOS has been added. All Tagging, Audio Processing and SuperFLAC functionality is entirely present and correct. Ripping of standard audio CDs also works, but there is no ability to verify the rips with the AccurateRip database after they complete. If an Apple SuperDrive is in use, it is impossible to determine it&amp;#039;s read offset (see &lt;a href=&quot;https://forum.dbpoweramp.com/forum/dbpoweramp/cd-ripper/41752-drive-offset-for-apple-usb-superdrive&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://forum.dbpoweramp.com/forum/dbpoweramp/cd-ripper/41752-drive-offset-for-apple-usb-superdrive&quot; rel=&quot;ugc nofollow noopener&quot;&gt;for an explanation as to why this is&lt;/a&gt;). Non-Apple drives will be detected correctly and read offsets obtained from the AccurateRip database, if available, as they would on non-macOS platforms. Drive offsets for SuperDrives can be determined on a Linux or Windows PC and then that number can be manually applied to Semplice running on macOS, however.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug Fix&lt;/strong&gt;&lt;/em&gt;: Threading on audio conversions was not parallelising correctly. It is now. Compared to before, conversion of a bunch of Hi-Res FLACs (for example) to Standard CD-Audio FLACs can take around ⅓ less time than before.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Screen redrawing has always been fairly slow, such that on less powerful computers (such as Raspberry Pi, or old Intel hardware) the screen could seem to &amp;#039;flash&amp;#039; annoyingly when, for example, you tapped along the top menu options (from Tagging to Audio Processing to SuperFLAC, for example). Sometimes, screen refreshes were so slow to occur that you&amp;#039;d be able to see escape sequences (such as “&lt;strong&gt;^[[C&lt;/strong&gt;”) displayed on the screen as menu navigation took place, making things very ugly indeed. Accordingly, the screen redrawing code has been completely overhauled and now the program responds much more cleanly and swiftly to events that trigger screen redraws. The result is that even on low &lt;abbr title=&quot;specification&quot;&gt;spec&lt;/abbr&gt; hardware, Semplice now &amp;#039;flashes&amp;#039; very infrequently and the random appearance of escape sequences on screen should almost never occur. This is achieved basically by replacing calls to the external “tput” utility with a pure Bash approach that keeps everything within the one Bash session, resulting in much less context switching on the CPU, and hence a swifter-feeling interface.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bugfix/Functionality Change&lt;/strong&gt;&lt;/em&gt;: When converting between audio formats, it turns out that converting direct from ISO or DSF to a lossy codec such as OGG or WMA would produce an error: the input sample rate was too high for those output codecs to deal with. In this version of Semplice, therefore, it&amp;#039;s now hard-coded that ISOs and DSFs can only be converted to lossless formats (FLAC in its various forms or AIFF). If you wanted to go direct from ISO to OGG, for example, then you can do so (however daft it might be!) only by converting &lt;em&gt;first&lt;/em&gt; to FLAC, then to OGG.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bugfix&lt;/strong&gt;&lt;/em&gt;: When ripping a CD, Semplice was supposed to use the persistent configuration parameter &amp;#039;Default FLAC audio resolution&amp;#039; to determine what &lt;em&gt;kind&lt;/em&gt; of FLAC to output: valid values for that parameter are &amp;#039;standard&amp;#039;, &amp;#039;high&amp;#039; and &amp;#039;extreme&amp;#039;. Standard FLACs are 44.1KHz, 16-bit (i.e., CD-Audio Red Book standard); FLACs output to the &amp;#039;high&amp;#039; setting are 88.2KHz, 24-bit; and ones output at the &amp;#039;extreme&amp;#039; setting are 176.4KHz, 24-bit (roughly equivalent to Scarlet Book SACDs). Unfortunately, the wrong variable name was used in the piece of code that worked this out, meaning that all FLACs output from a CD rip were always of the &amp;#039;standard&amp;#039; type. This is now fixed: if you specify high or extreme outputs, you&amp;#039;ll now get them, correctly.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Significant New Feature&lt;/strong&gt;&lt;/em&gt;: Semplice has always allowed you to boost the absolute volume of a recording by an amount which is guaranteed to not introduce audio signal distortion or clipping. However, boosting volume alters the data stored inside a FLAC in a non-reversible manner. That&amp;#039;s never been a problem for me, but audiophiles tend not to like their audio data being messed with! Accordingly, this version of Semplice introduces a new configuration file parameter, called &lt;strong&gt;Apply real or metadata audio boost?&lt;/strong&gt; The new parameter takes two possible values: &lt;strong&gt;real&lt;/strong&gt; or &lt;strong&gt;metadata&lt;/strong&gt;. Real is the default and means that Semplice, by default, does volume boosts in exactly the same way as it always has. If you set the parameter to &lt;em&gt;metadata&lt;/em&gt;, however, then performing a volume boost does &lt;strong&gt;not&lt;/strong&gt; physically alter the audio signal at all. Instead, a series of “ReplayGain” tags are added to the FLAC files&amp;#039; metadata. These tags are standard ones that conform to the &lt;a href=&quot;https://en.wikipedia.org/wiki/ReplayGain&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://en.wikipedia.org/wiki/ReplayGain&quot; rel=&quot;ugc nofollow noopener&quot;&gt;ReplayGain standard&lt;/a&gt; and are an instruction to a &lt;em&gt;music player&lt;/em&gt; to adjust its playback volume by an appropriate amount, dynamically and in real time. The tags look something like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-19_at_20.04.07.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_2026-01-19_at_20.04.07.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_2026-01-19_at_20.04.07.png?w=650&amp;amp;tok=f87b7c&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
This tells a compatible player (and not all players &lt;em&gt;are&lt;/em&gt; compatible!) to increase the volume of the complete set of FLACs analysed by 10.73dB, for example.
&lt;/p&gt;

&lt;p&gt;
In this way, Semplice sets you up to have the benefits of volume boosting without the drawbacks of modifying your physical audio data. Be warned, however: Semplice&amp;#039;s &amp;#039;real&amp;#039; adjustment of volumes works for all players at all times, because the audio data &lt;em&gt;has&lt;/em&gt; been modified. Only if you&amp;#039;ve configured your music player to respect per-album ReplayGain will the &amp;#039;metadata&amp;#039; volume boost take effect. Giocoso version 3.34 (due to be released at the end of February) &lt;em&gt;will&lt;/em&gt; be able to use the ReplayGain metadata tags.
&lt;/p&gt;

&lt;p&gt;
The analysis of FLACs that is done for the real boost is quite different from that done for the metadata-only boost, though, so the results should not be expected to be identical, nor should they be compared. In fact, files which have previously been physically volume-boosted will, if subject to a metadata volume assessment, be marked as requiring a &lt;strong&gt;negative&lt;/strong&gt; ReplayGain: the psychoacoustic model that ReplayGain uses has a quieter &amp;#039;baseline&amp;#039; to aim for than the merely &amp;#039;boost to as loud as you can get without distorting&amp;#039; approach of the physical volume adjustment, so it will tend to think physically-boosted volumes are too high (even though they&amp;#039;re not distorting the music at all). As I say, it&amp;#039;s just two different models in use and you shouldn&amp;#039;t be surprised they come to different conclusions about the ideal volume level!
&lt;/p&gt;

&lt;p&gt;
The &amp;#039;metadata&amp;#039; volume boost is also much faster to perform than the application of the &amp;#039;real&amp;#039;, physical volume boost: there is no re-encoding of audio to do and writing it out to disk.
&lt;/p&gt;

&lt;p&gt;
If you go on to create SuperFLACs after you have metadata-volume-boosted your per-track FLACs, the SuperFLAC will inherit the album-wide replay gain setting that was applied to the first FLAC in the folder by the volume boosting analysis process. Files created by &lt;em&gt;splitting&lt;/em&gt; a SuperFLAC will &lt;strong&gt;not&lt;/strong&gt; have replay gain information added back to them, however: they will need a fresh metadata volume-boost to re-compute appropriate per-track values.
&lt;/p&gt;

&lt;p&gt;
Anyway: the short version is that there is now a way to achieve a volume boost with Semplice (assuming only that you have a ReplayGain-compatible music player) &lt;em&gt;without&lt;/em&gt; having to alter your physical audio data. The new metadata volume boost is &lt;strong&gt;optional&lt;/strong&gt; and &lt;strong&gt;not the default&lt;/strong&gt; and so, by default, Semplice volume boosts work in exactly the same way as they always used to.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;New Feature&lt;/em&gt;&lt;/strong&gt;: The Audio Processing menu gets a new option: &lt;strong&gt;Remove ReplayGain tags from FLACs&lt;/strong&gt;. This is essentially the ability to reverse a metadata-only volume boost by &lt;em&gt;removing&lt;/em&gt; all the REPLAYGAIN_* tags the new metadata volume boost mechanism will have added to your FLACs. Volume boosts are now thus, functionally, reversible (but note that, because real, physical volume boosts modify FLAC audio data, that type of volume boost still cannot be reversed).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.12 - February 2nd 2026&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_212_-_february_2nd_2026&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;12976-20842&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;semplice_version_211_-_july_4th_2025&quot;&gt;Semplice Version 2.11 - July 4th 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug-Fix&lt;/strong&gt;&lt;/em&gt;: Earlier versions of Semplice used a utility called &lt;strong&gt;odio-sacd&lt;/strong&gt; to extract SACD ISO files into their component tracks and convert them to (say) FLACs or MP3s. In early July 2025, it was pointed out to me that the developer of that software had pulled his website from the Internet along with all the software repositories he used to publish his software. This meant that Semplice would no longer install cleanly (it would prompt for a github password and then fail to download anything anyway), and thus fresh Semplice installs would work fine &lt;em&gt;except&lt;/em&gt; for being able to process SACD ISOs. Semplice Version 2.11 now uses the near-equivalent &lt;strong&gt;sacd&lt;/strong&gt; utility to perform the SACD ISO conversions instead. This now means fresh installs of Semplice work out-of-the-box, as originally intended. &lt;em&gt;Upgrades&lt;/em&gt; to Version 2.11 will &lt;strong&gt;not&lt;/strong&gt; install the sacd utility automatically, so following the Semplice upgrade, you should follow the instructions in &lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semaudio/audiocodecs&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semaudio:audiocodecs&quot; data-wiki-id=&quot;softwares:semplice:semaudio:audiocodecs&quot;&gt;the revised User Manual at Section 4.0&lt;/a&gt; to install it manually.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When converting an SACD ISO to one of the three possible FLAC output formats (standard, hi-res or super hi-res), Semplice in earlier versions would apply a hard frequency filter, preventing audio signals with a frequency of 24KHz or higher from being passed to the output file. The new release now applies a subtler frequency filtering mechanism. Standard FLAC output will be filtered at 21KHz; Hi-Res FLACs at 43KHz; and Super Hi-Res FLACs at 87KHz. In each case, the filter cuts off frequencies higher than (about) half the intended output sample rate. In other words, if you&amp;#039;re outputting to standard FLAC, with a 44.1KHz sampling rate, you would theoretically need to cut off at 22.05KHz: Semplice cuts off a little earlier than that (at 21KHz) to provide a little head-room, in case of imperfect filtering. Similarly, an output of 88.2KHz would imply a need for a 44.1KHz filter: Semplice Version 2.11&amp;#039;s use of a 43KHz filter is close to that theoretical ideal, but with a bit of fudge-factor headroom. Super Hi-Res output at 176.4KHz would imply a need for an 88.2KHz filter: Semplice gets close at 87Khz. The point in each case is to provide a guarantee that no audio signal &lt;em&gt;higher&lt;/em&gt; than half the resulting sampling rate is passed to the converter: failure to do that would break &lt;a href=&quot;https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem&quot; rel=&quot;ugc nofollow noopener&quot;&gt;the Nyquist-Shannon sampling theory&lt;/a&gt; and cause ultrasonic high frequencies to be reflected down into the audible part of the audio signal, where it would appear as obvious distortion. The short version is that Semplice now discards as little of the original SACD audio signal as possible, where before it was a bit more cavalier about things. It also means that the ISO conversion, even to standard FLAC sampling rates, will be guaranteed not to introduce distortion.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When ripping SACDs (&lt;strong&gt;Ripping&lt;/strong&gt; menu, &lt;strong&gt;Option 4&lt;/strong&gt;), Semplice will now work out your local PC&amp;#039;s current IP address and pre-fill the &amp;#039;Enter the IP address of your SACD reader&amp;#039; dialog with the first three octets of that, leaving you only to have to fill in the fourth octet. For example, you&amp;#039;re running Semplice on a PC with an IP address of 192.168.0.88; in Version 2.11, Semplice&amp;#039;s &amp;#039;Enter the IP address&amp;#039; dialog will be pre-filled in with “192.168.0.”. All you have to do is supply the last set of digits that uniquely identify how to contact your SACD ripper device. If the proposal is completely wrong, just erase it (with the backspace key) and type in something more appropriate. The point is that your SACD device is almost certainly on the same network as your PC, so most of the PC&amp;#039;s IP address should be relevant to the location of the SACD device.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When ripping SACDs, once you type in a valid IP address for the SACD ripping device, Semplice Version 2.11 now stores that and subsequent rips will pre-fill the &amp;#039;Enter the IP address of your SACD reader&amp;#039; dialog with that same, complete IP address. This means you can just press [Enter] to accept the proposed IP address, if it&amp;#039;s still correct. In conjunction with the previously-mentioned enhancement, this now means that Semplice says, &amp;#039;Is there a previous address for an SACD ripper: if so, use it; if not, pre-fill the dialog with &lt;em&gt;most&lt;/em&gt; of an IP address that will probably be relevant&amp;#039;.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When ripping SACDs, Semplice now remembers the last location to which you ripped an SACD. Second and subsequent rips will therefore pre-fill the &amp;#039;Please choose where to save your rips&amp;#039; dialog with the last-known folder destination used. If it&amp;#039;s wrong, you can simply use the backspace key to remove or edit the proposed folder name. Otherwise, you can just press [Enter] to accept the proposed folder name.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement/Bug Fix&lt;/strong&gt;&lt;/em&gt;: When producing a spectrum analysis graph (&lt;strong&gt;Audio Processing&lt;/strong&gt; menu, &lt;strong&gt;Option 3&lt;/strong&gt;), Semplice creates a temporary copy of all the FLACs in the $HOME/.local/share/semplice2/tmp folder and performs the analysis against that copy. The program did &lt;em&gt;not&lt;/em&gt;, however, check that there was sufficient disk space and appropriate file permissions to create this copy: the enhancement in this new version is that those checks &lt;em&gt;are&lt;/em&gt; now performed, and if you fail either of them an appropriate warning message is displayed. The bug fix is related: Semplice did not take account of the fact that the file names of all the FLACs being analysed might contain single quotes: the presence of one in a file name would trigger a &amp;#039;file not found&amp;#039; error in the analysing tool and thus no spectrograph would be produced. The bug fix in this version is that Semplice now correctly handles single quotes within FLAC file names and can perform an analysis successfully whether they are present or not.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Added “CachyOS” (an Arch derivative) to the list of supported distros.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.11 - July 4th 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_211_-_july_4th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;20843-26847&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;semplice_version_210_-_april_20th_2025&quot;&gt;Semplice Version 2.10 - April 20th 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug-Fix&lt;/strong&gt;&lt;/em&gt;: When checking for the presence of .M4A files (Apple Lossless Audio Codec) files, the program used a variable called &amp;#039;ALACOUNT&amp;#039;. It then checked a variable called &amp;#039;ALAC&lt;strong&gt;C&lt;/strong&gt;OUNT&amp;#039;. You might notice the variation in the number of &amp;#039;Cs&amp;#039; in those variable names! The error in spelling the variable name meant Semplice could not change working folder to a location containing M4As Now fixed, with variable names spelled consistently.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When merging FLACs into SuperFLACs, Semplice previously assumed that you&amp;#039;d been a good FLAC citizen and tagged your FLACs in the manner prescribed by this website&amp;#039;s &lt;a href=&quot;https://www.bbritten.com/articles/axioms&quot; class=&quot;wikilink1&quot; title=&quot;articles:axioms&quot; data-wiki-id=&quot;articles:axioms&quot;&gt;Axioms of Classical Tagging&lt;/a&gt; article. It didn&amp;#039;t actually check that you &lt;em&gt;had&lt;/em&gt; tagged things correctly, though! Failure to have followed the Axioms&amp;#039; strictures would then result in assorted ugly errors or outright failures to create the required SuperFLACs. In this new version of Semplice, a “pre-flight check” is now performed of compliance to the standards of Axioms 1, 2, 7 and 9 before the SuperFLAC creation process can proceed.
&lt;/p&gt;

&lt;p&gt;
Axiom 1, for example, says there are eight tags you &lt;em&gt;ought&lt;/em&gt; to have: if you&amp;#039;re missing any of them, you&amp;#039;ll now be told:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250413_132500.jpg&quot; class=&quot;media&quot; title=&quot;softwares:semplice:screenshot_20250413_132500.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250413_132500.jpg?w=650&amp;amp;tok=bb8b00&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Similarly, Axiom 9 says every folder of FLACs should contain a Track Number 1. So, if you&amp;#039;ve tagged your files with exotic track numbers such as “1/9”, you&amp;#039;ll now be told that this won&amp;#039;t work:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250413_132750.jpg&quot; class=&quot;media&quot; title=&quot;softwares:semplice:screenshot_20250413_132750.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250413_132750.jpg?w=650&amp;amp;tok=e3927a&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You&amp;#039;ll note that the error messages pinpoint &lt;em&gt;which&lt;/em&gt; files, precisely, fall foul of the Axiom requirements, though it will only tell you the &lt;strong&gt;first&lt;/strong&gt; file that fails a particular check. The new check does not, however, verify everything it could conceivably do: if you&amp;#039;ve got different YEAR tags for different tracks within a folder, for example, the SuperFLAC is simply going to be created with a YEAR that matches the one used by track 1: you won&amp;#039;t be told of discrepancies in your metadata like that. Any axiom that mentions spelling things properly, using correct diacritical marks, being grammatical and not using InitCaps when you&amp;#039;re typing… those sorts of “feelings” axioms won&amp;#039;t be checked-for either. The check is really there to ensure that the SuperFLAC process can run to completion without being tripped up. It&amp;#039;s not there to validate the accuracy or precision of your tagging practices generally.
&lt;/p&gt;

&lt;p&gt;
Note that if you use Semplice&amp;#039;s own &lt;strong&gt;Tagging&lt;/strong&gt; menu to tag your FLACs, you &lt;em&gt;will&lt;/em&gt; end up with Axiom-correct tagging and therefore this new feature will never kick in for you: you&amp;#039;ll notice absolutely nothing different about the SuperFLAC creation process at all.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Semplice&amp;#039;s SuperFLAC creation process now respects the possible existence of Custom Tags. If you&amp;#039;d applied custom tags to individual, per-track FLACs and then created a SuperFLAC from those FLACs, the custom tag data would have been lost in earlier Semplice versions. Now it won&amp;#039;t be: the custom tag values found in the first FLAC stored in the working folder are now applied to the freshly-created SuperFLAC:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250414_124950.jpg&quot; class=&quot;media&quot; title=&quot;softwares:semplice:screenshot_20250414_124950.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/softwares/semplice/screenshot_20250414_124950.jpg?w=650&amp;amp;tok=db1bbd&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The presence of a &amp;#039;Cuesheet&amp;#039; element in this display of a FLAC&amp;#039;s metadata tells you that this is metadata associated with a SuperFLAC. The presence of tags such as TEA_LADY, RECORDING_ENG. and RECORD_LABEL also tells you that these are custom tags stored for a SuperFLAC… and that&amp;#039;s the new feature in action.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: In similar vein, if a single-file SuperFLAC has been tagged with Custom Tags and then you take the option to split it back out into separate per-track FLACs, the new per-track FLACs will now all have their Custom Tags set. In previous Semplice versions, the split-out files would only have been tagged up with the &amp;#039;standard&amp;#039; tags: all custom tag values would thus have been lost, but this is now no longer the case.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug Fix&lt;/strong&gt;&lt;/em&gt;: When configuring the CD read offset in the Semplice persistent configuration file, you were encouraged to leave it blank to allow auto-detection of the correct read-offset to occur (see &lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semripcd&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semripcd&quot; data-wiki-id=&quot;softwares:semplice:semripcd&quot;&gt;the Ripping part of the User Manual, Section 2.2&lt;/a&gt;). Unfortunately, there was a bug, whereby leaving the parameter field blank would result in it being saved as an explicit zero value. The presence of an explicit 0 value for the parameter then prevented automatic detection of the correct read offset. Now fixed. You can, as intended, now leave that parameter blank and auto-detection of the correct read offset will be attempted: no forced zero value will be saved.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Visual Enhancement&lt;/strong&gt;&lt;/em&gt;: A tiny issue, but during CD rips the cursor would appear in the top-left of the screen, very visible and quite annoying. That particular cursor has now been made invisible and the screen doesn&amp;#039;t look quite as annoying as it once did!
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug Fix&lt;/strong&gt;&lt;/em&gt;: When ripping CDs, the rip results are usually checked for accuracy by looking them up in the &lt;a href=&quot;https://accuraterip.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://accuraterip.com/&quot; rel=&quot;ugc nofollow noopener&quot;&gt;AccurateRip&lt;/a&gt; database. The tool needed to perform this lookup is called &lt;strong&gt;trackverify&lt;/strong&gt; and it&amp;#039;s installed by Semplice&amp;#039;s own installer via the &lt;strong&gt;audiotools&lt;/strong&gt; package. On rather a lot of distros, however, that audiotools installation fails for one reason or another, rendering it impossible to do an accuracy check of your rip. That didn&amp;#039;t stop Semplice from claiming that it &lt;em&gt;had&lt;/em&gt; performed such a check, however, and directing you to read the results of the check in a text file that didn&amp;#039;t actually exist (because Semplice got the folder name wrong on top of everything else it was screwing up!). These issues have all now been cleared up: if audiotools didn&amp;#039;t install at all, or if it installed but is broken, Semplice now knows not to attempt the AccurateRip check at all -and if, for any reason, it needs to direct you to a textfile of the results, it does so by pointing at the &lt;em&gt;correct&lt;/em&gt; folder name.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.10 - April 20th 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_210_-_april_20th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;26848-32874&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;semplice_version_209_-_april_5th_2025&quot;&gt;Semplice Version 2.09 - April 5th 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Aligning with the way Giocoso has worked for a while, pressing [Enter] on a menu option now automatically causes the first item on that menu to be executed. If you&amp;#039;re on the Tagging menu, for example, then pressing Enter instantly launches the &lt;strong&gt;Option 1: Auto-Tagging&lt;/strong&gt; option; if on the Audio Processing menu, pressing [Enter] launches the &lt;strong&gt;Option 1: Boost volume&lt;/strong&gt; functionality. And so on. You can still tap the specific menu option number, of course; but a simple press of the [Enter] key now achieves something, too.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Minor Enhancement&lt;/strong&gt;&lt;/em&gt;: When tagging FLAC files, album art may be embedded within them and the messages displayed by the program are now consistent about what is happening.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: When performing audio conversions, the &amp;#039;pick the source audio format&amp;#039; dialog box will now &lt;em&gt;only&lt;/em&gt; display audio formats that are detected as being present in the current working folder. For example, if a folder doesn&amp;#039;t contain any audio files using appropriate codecs, you&amp;#039;ll see this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250313_125155.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20250313_125155.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250313_125155.jpg?w=650&amp;amp;tok=1be64b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…but if the folder contains WMAs, FLACs and MP3s, you&amp;#039;ll see this instead:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250313_125319.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20250313_125319.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250313_125319.jpg?w=650&amp;amp;tok=fd184b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Previously, the form just listed all possible source audio formats, meaning that it would be possible to select to convert from something that doesn&amp;#039;t actually exist in the current working folder. Now, you can only select to convert that which is known for a fact to exist in that folder.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: Auto-tagging of FLACs has always been a &lt;strong&gt;two-stage&lt;/strong&gt; affair: tagging things with recording-wide relevance, then tagging track-specific things. The program flow didn&amp;#039;t always make this clear, however -and the situation was confused by the fact that the single recording-wide tagging process used two distinct and different input forms (for technical reasons, it has to do so), so that three forms ended up being used to complete a two-stage process! It wasn&amp;#039;t clear that the first two forms were part of the same process, so that (for example) cancelling on the second of them would also mean cancelling any work done on the first. To try to make this clearer, the wording on the forms and their buttons has therefore changed:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_092900.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20250315_092900.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_092900.jpg?w=650&amp;amp;tok=27be0d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The title of the form (at the very top of the page) now clearly indicates that this is page 1 of 2 dealing with entering recording-wide data. Additionally, the first button on this first page no longer says &amp;#039;Submit&amp;#039;, because clicking it &lt;strong&gt;&lt;em&gt;never&lt;/em&gt;&lt;/strong&gt; meant &amp;#039;do something with what I just typed in&amp;#039;. Instead, it says &amp;#039;take me to the next page of this recording-wide tagging form&amp;#039;, which it will do:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_093124.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20250315_093124.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_093124.jpg?w=650&amp;amp;tok=f0ff1f&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Again, the top line of text makes it clear we&amp;#039;re on the second page of a recording-wide tagging form. This time, the first button still says &amp;#039;Submit&amp;#039;, because if you click it, your data entered on &lt;strong&gt;both&lt;/strong&gt; these forms will physically be stored in your FLACs. Once you submit the recording-wide stuff, the auto-tagging process moves on to:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_093320.jpg&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20250315_093320.jpg&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20250315_093320.jpg?w=650&amp;amp;tok=c43e68&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The title on the top line now changes and makes it clear you&amp;#039;re doing something altogether new: writing track-specific tags (and that there&amp;#039;s only one form involved in doing this). Again, the first button is labelled &amp;#039;Submit&amp;#039;, because clicking it will physically write data entered on this form back to your FLACs. If you instead were to hit [Cancel] at this point, you would lose any tag data typed in on the form… but your recording-wide data submitted earlier would still be saved to the FLAC files.
&lt;/p&gt;

&lt;p&gt;
This all hopefully makes it visually more obvious that auto-tagging does &lt;em&gt;two&lt;/em&gt; things, not three; and that cancelling during any part of the first phase (recording-wide metadata) completely loses &lt;em&gt;any&lt;/em&gt; data typed during that first phase; and that cancelling during the second phase (track-specific metadata) causes data typed during that &lt;em&gt;second&lt;/em&gt; phase to be lost, but data previously submitted during the first phase will be &lt;em class=&quot;u&quot;&gt;preserved&lt;/em&gt;, because it was entered independently of this second phase. I trust that&amp;#039;s as clear as clean mud!
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug-fix&lt;/strong&gt;&lt;/em&gt;: A related change to the auto-tagging feature is that clicking [Cancel] on either of the recording-wide pages terminates the entire auto-tagging process, and returns you to the main menu. Previously, it would simply trigger the display of the track-specific tagging page, which was an error.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.09 - April 5th 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_209_-_april_5th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;32875-37518&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;semplice_version_208_-_march_5th_2025&quot;&gt;Semplice Version 2.08 - March 5th 2025&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;A small bug fix and enhancement&lt;/strong&gt;&lt;/em&gt;: When using the &amp;#039;W&amp;#039; key to change working folder, Semplice would check that the proposed new folder contained FLACs. This made sense for the Tagging menu (because Semplice only tags FLAC files!) but it made zero sense on the Audio Processing menu: you might well want to switch to a folder full of WAVs in order to convert them to FLACs, for example, but the initial lack of FLACs there would prevent you doing this. This is now all fixed and the &amp;#039;W&amp;#039; key changes its behaviour depending on context: for the Tagging and SuperFLAC menus, the proposed new working folder must contain FLACs; for the Audio Processing, it doesn&amp;#039;t -though it must contain at least one file that Semplice can convert to and from.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement&lt;/strong&gt;&lt;/em&gt;: the Audio Interchange File Format (AIFF) has been added to the list of audio formats Semplice can convert from and to. Conversion &lt;strong&gt;to&lt;/strong&gt; AIFF from (say) FLAC should preserve tags in the original file. Note that AIFF files can have file extensions .aif as well as .aiff and, for giggles, aifc: Semplice works for all of them. Converting from WMA to AIFF does &lt;em&gt;not&lt;/em&gt; work, for reasons I&amp;#039;m not going to worry about (because no-one should be doing that sort of conversion anyway!) WMA → FLAC → AIFF is the workaround.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Minor enhancement&lt;/strong&gt;&lt;/em&gt;: When embedding album art, the program now displays a &amp;#039;spinner&amp;#039; to indicate that it&amp;#039;s doing something. Previously, the program just sat there and you had no idea whether it was working or not.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug fix&lt;/strong&gt;&lt;/em&gt;: When tagging FLACs, Semplice has offered an &amp;#039;auto-guess&amp;#039; feature since Version 2.06, whereby it assumes the last part of the working folder name contains the recording&amp;#039;s extended composition name (e.g., &lt;strong&gt;/hjr/music/Aida (Karajan - 1958)&lt;/strong&gt; containing &lt;strong&gt;Aida (Karajan - 1958)&lt;/strong&gt;). Since the &lt;a href=&quot;https://www.bbritten.com/articles/axioms&quot; class=&quot;wikilink1&quot; title=&quot;articles:axioms&quot; data-wiki-id=&quot;articles:axioms&quot;&gt;Axioms of classical tagging&lt;/a&gt; tell you to construct the extended composition name by sticking the distinguishing artist name and recording year in the brackets after the actual composition name, Auto-Guess could reasonably assume that the bracketed data was 1) the distinguishing artist and 2) the recording year… Simple!! Which all worked, provided your folder name wasn&amp;#039;t something more like &lt;strong&gt;Simple Symphony (live recording) (Britten - 1966)&lt;/strong&gt; …because now the presence of multiple bracketed items caused Semplice to assume “live” was the distinguishing artist name and “recording” was the recording year! Personally, I wouldn&amp;#039;t personally want to stick multiple sets of brackets in an extended composition name …but some people do, and the presence of more than one open/close bracket pair in a composition name made Auto-Guess guess all sorts of silly things. Version 2.08 now fixes this by making Auto-Guess now only looking on the &lt;em&gt;last&lt;/em&gt; open bracket in the folder name, and deriving the distinguishing artist and recording year from that point forward.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.08 - March 5th 2025&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_208_-_march_5th_2025&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;37519-40469&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit8&quot; id=&quot;semplice_version_207_-_november_1st_2024&quot;&gt;Semplice Version 2.07 - November 1st 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;A single but significant bug-fix&lt;/strong&gt;: when embedding album art as part of the auto-tagging process, Semplice used the wrong variable name if ImageMagick 7 was in use, though used the correct variable name if ImageMagick 6 was in use. The fix is to make the variable name the same, regardless of the version of ImageMagick being used. Note that if manual embedding of album art was tried (using &lt;strong&gt;Tagging&lt;/strong&gt; menu, &lt;strong&gt;Option 5&lt;/strong&gt;), the correct variable names were &lt;em&gt;always&lt;/em&gt; used, so embedding album art manually always worked. The new fix only applies to album art embedding that happens when taking the &lt;strong&gt;Tagging&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.07 - November 1st 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_207_-_november_1st_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;40470-41155&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit9&quot; id=&quot;semplice_version_206_-_25th_october_2024&quot;&gt;Semplice Version 2.06 - 25th October 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
This release brings a slew of new capabilities to Semplice, some of possibly less significance than others, but all intended to make working with your FLACs easier and simpler in the long-run. There is also one fairly significant bug-fix. The four new enhancements are as follows:
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement #1&lt;/em&gt;&lt;/strong&gt;: On any main program menu, you can now tap the letter &amp;#039;I&amp;#039; (or &amp;#039;i&amp;#039;) to make Semplice ”&amp;lt;strong&amp;gt;i&amp;lt;/strong&amp;gt;nspect“ the audio characteristics of the &lt;em&gt;first&lt;/em&gt; FLAC it finds in the current working directory. This allows you to tell whether a FLAC is encoded with 16-bit, 44100Hz audio (standard CD) or 24-bit, 192000Hz (SACD, high-resolution audio), for example:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241015_115755.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241015_115755.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241015_115755.png?w=650&amp;amp;tok=9d8929&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
It&amp;#039;s a minor enhancement that&amp;#039;s useful if you can&amp;#039;t remember whether you&amp;#039;ve converted your SACD rips down to standard CD Audio yet: in the above screenshot, I obviously have! It&amp;#039;s also handy for checking that a purchased high-resolution FLAC download is actually in high resolution.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement #2&lt;/em&gt;&lt;/strong&gt;: When you select &lt;strong&gt;Tagging&lt;/strong&gt; menu, &lt;strong&gt;Option 1 Auto-tagging&lt;/strong&gt; and then select the &amp;#039;Read existing metadata&amp;#039; option, the dialog screen where you supply track TITLE tags will be populated with whatever TITLE metadata already exists. Usually, this is complete rubbish and requires much knocking into shape before it can be considered really usable! Much tedious deletion of inappropriate data thus ensues before you can supply a TITLE that meets any definition of &amp;#039;decent metadata&amp;#039;! For example:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_131444.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_131444.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_131444.png?w=650&amp;amp;tok=8f2c85&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Here, every existing track title includes the composition name (which should be in the ALBUM tag), spurious indications of Act number, and even hand-made track numbers (which belong in the TRACKNUMBER tag). Every piece of operatic dialogue is also encased in quotation marks, which I hate: we know it&amp;#039;s speech, because they&amp;#039;re words and it&amp;#039;s an opera… there&amp;#039;s no need to use quotation marks here!
&lt;/p&gt;

&lt;p&gt;
Now, you could edit each of the 8 tracks listed by hand, as I&amp;#039;ve started to do here:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_131716.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_131716.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_131716.png?w=650&amp;amp;tok=dbd07e&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
…but doing this means leaning on the [Delete] key heavily and it&amp;#039;s a slow, tedious process! In some cases, you might prefer it if Semplice were to just forget the existing track-specific metadata entirely and let you type in everything from scratch, especially if you type reasonably fast. Now, in fact, it&amp;#039;s in fact &lt;em&gt;always&lt;/em&gt; been possible to do this: press Ctrl+U and the currently selected track&amp;#039;s TITLE tag will be erased:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_205827.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_205827.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_205827.png?w=650&amp;amp;tok=379692&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
So to clear out &lt;em&gt;every&lt;/em&gt; track&amp;#039;s existing metadata, you simply arrow down to the next track, press Ctrl+U, rinse and repeat. That approach is probably entirely convenient if you&amp;#039;re tagging up a 4-movement symphony. If you&amp;#039;re tagging up an 83-track Handel oratorio, however, that approach is going to get very tedious very quickly! Thus the the &lt;strong&gt;new enhancement/feature&lt;/strong&gt;: the bottom of this screen now has a &lt;strong&gt;&lt;em class=&quot;u&quot;&gt;[Clear All Track Data]&lt;/em&gt;&lt;/strong&gt; button in addition to the traditional [Submit] and [Cancel] ones. Tab round to that so that it is highlighted and press [Enter] and this happens:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_205856.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_205856.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_205856.png?w=650&amp;amp;tok=db04a3&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The entire set of track TITLE tags is wiped in one fell swoop: you can now type in good data without having to faff around with a lot of slow, manual editing/deleting or clearing things out track-by-track.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Enhancement #3&lt;/em&gt;&lt;/strong&gt;: If you select to tag using existing metadata and it turns out that your FLACs don&amp;#039;t have any metadata in particular tags, Semplice has &lt;strong&gt;always&lt;/strong&gt; been prepared to &lt;em&gt;infer&lt;/em&gt; some tags from the working folder name it&amp;#039;s currently running in. For example, if you are working in a folder called &lt;strong&gt;Symphony No. 5 (Karajan - 1985)&lt;/strong&gt; and the FLACs within that folder contain no metadata for (say) ALBUM, then Semplice has always guessed that the entire folder name should be used as the ALBUM tag. It can also guess that if we go five characters back from the end of the folder name and extract the next four characters, those will be the recording year, so the YEAR tag should be set to them (in my case, that would be 1, 9, 8 and 5). Finally, Semplice has always guessed that if you take the folder name and split it on the first open bracket and stop before the first hyphen, you&amp;#039;ll have the surname of the distinguishing artist, which goes into the PERFORMER tab (in this case, that would be “Karajan”). You can see this &lt;em class=&quot;u&quot;&gt;&lt;em&gt;pre-existing&lt;/em&gt;&lt;/em&gt; functionality at work here:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_171924.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_171924.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_171924.png?w=650&amp;amp;tok=5d1b56&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The working folder name is displayed in the window&amp;#039;s title bar and you can therefore see the Composition, Distinguishing Artist and Recording Year fields being filled in for me, simply by parsing different bits out of the working folder name.
&lt;/p&gt;

&lt;p&gt;
The &lt;strong&gt;new, minor enhancement in Semplice Version 2.06&lt;/strong&gt; is that &lt;em&gt;the GENRE tag will be auto-guessed for you&lt;/em&gt;, again by looking at the working folder&amp;#039;s name: for example, if it contains the word &amp;#039;Symph&amp;#039;, then the GENRE field will be set to “Symphonic”, but if it contains the word &amp;#039;Piano&amp;#039;, the GENRE might be auto-set to “Keyboard”. The case of the words being searched for is irrelevant: SYMPHONY or sYmPhonY will both yield a guessed GENRE of &amp;#039;Symphonic&amp;#039;.
&lt;/p&gt;

&lt;p&gt;
Guessing is, of course, prone to, er… &amp;#039;issues&amp;#039;! For example, in my earlier case the working folder name contains both the word &amp;#039;Piano&amp;#039; and the word &amp;#039;Concerto&amp;#039;… so is this going to be guessed to be “Keyboard” or “Concerto” genre?! Well, there&amp;#039;s an order of precedence, as follows:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Symph → Symphonic&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Sinfoni → Symphonic&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Concerto → Concerto&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Quartet → Quartet&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Sonata → Chamber&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Piano → Keyboard&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Organ → Keyboard&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Harpsichord → Keyboard&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Incidental → Film - Theatre - Radio&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Requiem → Choral&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Missa → Choral&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Only the &lt;strong&gt;first&lt;/strong&gt; match wins the prize, so something called a &amp;#039;piano concerto&amp;#039; will match rule number 3 first and thus be auto-tagged a Concerto:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_172718.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_172718.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_172718.png?w=650&amp;amp;tok=82729d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Of course, the guesses will not be perfect: for starters, if you&amp;#039;ve got an opera, ballet, oratorio or most choral works, nothing at all will be guessed: it&amp;#039;s hard to guess “Opera” from a folder name of “Don Giovanni”, unless you had a comprehensive encyclopedia of all the operas ever written by anyone, after all! Similarly, if you&amp;#039;ve got a harpsichord concerto called “Pastoral Studies on Elizabethan Themes” then no genre is going to be guessed for it, since it contains none of the magic &amp;#039;keywords&amp;#039;. Worse, if you had a ballet called “Mr Planchet Plays The Piano”, then it&amp;#039;s going to be guessed to be a Keyboard work, because the magic word &amp;#039;piano&amp;#039; is in it and Semplice can&amp;#039;t guess context!
&lt;/p&gt;

&lt;p&gt;
So yes: the auto-guessing will be less than accurate on many occasions. From personal experience, however, it&amp;#039;s going to get the guess right about 70% of the time, which means one hell of a lot of typing is saved. Of course, if it &lt;em&gt;does&lt;/em&gt; guess wrong, you just manually edit the genre by hand: that&amp;#039;s true for all the other guessed fields as well, of course.
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Enhancement #4&lt;/strong&gt;&lt;/em&gt;: It is the complete absence of metadata in the first FLAC of the working folder that triggers the “tag guessing” just described above. Given the ghastly state of much vendor-supplied tag metadata, however, you may well want to get Semplice to &lt;em&gt;pretend&lt;/em&gt; there&amp;#039;s no metadata in that FLAC even when there is… and thus get Semplice to fill in the various tag fields for you automatically, deriving the required data from the working folder name as described before. A new option called &lt;strong&gt;[Auto-guess tags]&lt;/strong&gt; on the lower part of the recording-wide tag form now lets you manually trigger a replacement of already-present metadata by auto-guessed data derived from the working folder name. For example:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_180340.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_180340.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_180340.png?w=650&amp;amp;tok=1f402d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Here I have freshly started tagging inside the &amp;#039;Piano Concerto (Britten - 1967)&amp;#039; folder and have taken the same &amp;#039;Read existing metadata&amp;#039; option as normal: unfortunately, on this occasion, the FLACs &lt;em&gt;do&lt;/em&gt; have some pre-existing metadata, so Semplice has read it and put it into the various data entry fields on the form. The trouble is, the metadata is just complete nonsense and I don&amp;#039;t want to have to step through every field in turn, hit Ctrl+U and wipe it before being able to type in something more sensible. So, instead, I tab around to the new [Auto-guess Tags] button and press [Enter] when it&amp;#039;s highlighted:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_180630.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241016_180630.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241016_180630.png?w=650&amp;amp;tok=250124&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
As you can see, the pre-existing metadata has been wiped from the form (even though it&amp;#039;s currently still stored within the FLACs) and the form&amp;#039;s fields have been replaced with data guessed from the current working folder name. You&amp;#039;ll still have to type the composer&amp;#039;s name in yourself -and the Distinguishing Artist&amp;#039;s &lt;em&gt;first&lt;/em&gt; name would be nice to have, too. But if you get the name of your physical working folder correct before invoking Semplice, a lot of the tedium of filling in appropriate tag entries has now been eradicated. Once you press the [Submit] button, your new auto-guessed (and possibly manually tweaked) tags will be written back to the FLACs found within the working folder.
&lt;/p&gt;

&lt;p&gt;
This feature also allows you to step back from significant data input errors: if you accidentally lean on your keyboard when typing into one of the tag fields, filling it with hundreds of garbage characters that would be a pain to delete one-by-one, for example, you can now just &amp;#039;Auto-guess&amp;#039; and revert back to a set of data that makes more sense!
&lt;/p&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Bug-fix #1&lt;/strong&gt;&lt;/em&gt;: In prior Semplice versions, when creating SuperFLACs, if the path in which the containing folder is found contained a hash character (#), that would cause the program to error in an ugly way:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241018_105335.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20241018_105335.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20241018_105335.png?w=650&amp;amp;tok=fc0abd&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You will note that the path in which this SuperFLAC creation attempt is taking place contains a &amp;#039;#&amp;#039; character (look at the top of the file manager window lurking behind the Semplice terminal, showing that somewhere in the path the abbreviation &amp;#039;Sym. #2&amp;#039; has been used): that&amp;#039;s actually bad form in any case, because you really ought to work with NTFS-compliant folder and file names, even if you can&amp;#039;t stand the sight of Windows and NTFS (it&amp;#039;s the lowest common denominator, basically: a file or folder name that works on NTFS is pretty much guaranteed to work anywhere, on any file system) -and the hash character is illegal on NTFS. But that&amp;#039;s besides the point: if you happen to want to use hash characters in your folder names, it&amp;#039;s not for Semplice to say you&amp;#039;re doing it wrong!
&lt;/p&gt;

&lt;p&gt;
The bug-fix implemented in Semplice Version 2.06 is therefore that the presence of hash characters anywhere within the working folder path hierarchy no longer prevents SuperFLAC creation. The only slight catch is that you are now no longer permitted to have folder names that contain the string &lt;strong&gt;+^+^+&lt;/strong&gt; (plus-caret-plus-caret-plus) in them, anywhere. Frankly, if this new restriction affects you, you&amp;#039;re doing extremely strange things and should probably stop… and you&amp;#039;ll also still experience the sort of error shown above. The workaround is simple: use more sensible folder names!!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.06 - 25th October 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_206_-_25th_october_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;41156-52611&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit10&quot; id=&quot;semplice_version_205_-_september_14th_2024&quot;&gt;Semplice Version 2.05 - September 14th 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Minor bug-fix&lt;/strong&gt;&lt;/em&gt;: When converting from one audio format to another. After file format conversion, if the output format was FLAC, the code sought to &amp;#039;clean&amp;#039; the tags of the output FLAC files. It did so by calling an inappropriate procedure name, however. The bug-fix means the correct code is now invoked and thus tag cleaning works as intended following conversion to FLAC.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.05 - September 14th 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_205_-_september_14th_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;52612-53046&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit11&quot; id=&quot;semplice_version_204_-_august_17th_2024&quot;&gt;Semplice Version 2.04 - August 17th 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;em class=&quot;u&quot;&gt;&lt;strong&gt;Minor bug-fix&lt;/strong&gt;&lt;/em&gt;: Sometimes, the grep statement that determines bit-depth and sample rate would occasionally produce a &amp;#039;binary file matches&amp;#039; error, which would then prevent the renaming of FLACs to include those two pieces of information (if that option was enabled in the configuration file). This release merely adds the -a switch so that the grep program treats binary files as if they were text files, which resolves the error. I am unable to determine what specific circumstances would trigger the &amp;#039;binary files&amp;#039; error in the first place: I only encountered it on one FLAC recently purchased. So I don&amp;#039;t think it&amp;#039;s a widespread issue, but the 2.04 release should mean it&amp;#039;s never an issue again, anyway!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.04 - August 17th 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_204_-_august_17th_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:11,&amp;quot;range&amp;quot;:&amp;quot;53047-53813&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit12&quot; id=&quot;semplice_version_203_-_august_14th_2024&quot;&gt;Semplice Version 2.03 - August 14th 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
There are &lt;strong&gt;two small enhancements&lt;/strong&gt; to functionality in this release, as follows:
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: When creating a SuperFLAC (SuperFLAC menu, Option 2), the program now auto-cleans the SuperFLAC as soon as it&amp;#039;s been created. Previously, no cleaning took place unless the manual option to clean was taken (press &amp;#039;K&amp;#039;) or the quit program with post-processing option was specified (&lt;strong&gt;Quit&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt;); now the freshly-created SuperFLAC is cleaned without you having to do the job manually. The process of &amp;#039;cleaning&amp;#039; tags firstly removes non-canonical tags (such as &amp;#039;Copyright&amp;#039; or &amp;#039;Record Label&amp;#039; and &lt;em&gt;adds&lt;/em&gt; one non-canonical tag, namely TAGDATE, which is then assigned the current system date/time in Unix Epoch format, so that a value of 1723631422 can &lt;a href=&quot;https://www.epochconverter.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.epochconverter.com&quot; rel=&quot;ugc nofollow noopener&quot;&gt;later be converted to a human-readable date&lt;/a&gt; of Wednesday, 14 August 2024 10:30:22, thereby letting you know precisely when you created and/or tagged a FLAC into your collection. Thus, SuperFLACs created in earlier Semplice versions lacked a TAGDATE tag, but was otherwise in possession of all the canonical tags. This new release therefore simply ensures that freshly-created SuperFLACs do indeed get created with a TAGDATE tag.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;&lt;em class=&quot;u&quot;&gt;Minor Enhancement&lt;/em&gt;&lt;/strong&gt;: When you perform a volume boost with AUTOBOOST enabled in earlier Semplice versions, if a volume boost &lt;em&gt;can&lt;/em&gt; be applied to your FLACs, one will be automatically -but you will have no idea how &lt;em&gt;big&lt;/em&gt;that volume boost is. New in Version 2.03, therefore, is a very small addition to the status line when an auto-boost is underway that simply tells you how big the volume boost is, like this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240814_113547.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20240814_113547.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240814_113547.png?w=650&amp;amp;tok=18bff4&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
The message at the bottom of the screen &lt;em&gt;used&lt;/em&gt; to read &amp;#039;Performing a volume boost…&amp;#039;. It now adds the words &amp;#039;of +&lt;strong&gt;x&lt;/strong&gt;dB&amp;#039; to that message, so you know precisely what the automatically applied volume boost is.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.03 - August 14th 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_203_-_august_14th_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:12,&amp;quot;range&amp;quot;:&amp;quot;53814-55807&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit13&quot; id=&quot;semplice_version_202_-_august_7th_2024&quot;&gt;Semplice Version 2.02 - August 7th 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
When tagging FLAC files with album artwork, you are given the opportunity to &amp;#039;point&amp;#039; to a piece of artwork. Semplice has always checked the file you point to, to ensure that it&amp;#039;s a genuine JPG or PNG file, rather than (say) &amp;#039;word.exe&amp;#039; renamed to be &amp;#039;word.png&amp;#039; for giggles. Unfortunately, I didn&amp;#039;t realise that not all genuine JPGs or PNGs are built the same: most will use what is termed the &amp;#039;sRGB colourspace&amp;#039;, and this is the colourspace that Semplice was originally written to check for as a sign of &amp;#039;genuine image-ness&amp;#039;. This makes sense: colourspaces affect how devices handle the colour information within an image file and for anything involving computers, the sRGB colourspace is the &amp;#039;right&amp;#039; one to use.
&lt;/p&gt;

&lt;p&gt;
Unfortunately, not all record companies are entirely consistent on the point, and one recent download I purchased came with album artwork that declared itself to be a JPG &lt;em&gt;but used the CMYK colourspace internally.&lt;/em&gt; This also makes sense: the record company has to physically &lt;em&gt;print&lt;/em&gt; this artwork when manufacturing its CDs, and the CMYK colourspace is best suited to printing. Trouble thus starts when you point Semplice at a JPG which is internally using the CMYK colourspace (which is not something you&amp;#039;d particularly know was happening, unless you knew how to check!): Semplice simply won&amp;#039;t use such images and your FLACs will remain untagged with that particular bit of artwork. You might think you could force the issue using some other tagging program -and, indeed, you probably would be successful in doing that… but if you were to play such a force-fed FLAC in Giocoso (which uses the img2sixel program to allow graphics to display within a terminal, you&amp;#039;d see this sort of output:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240806_183312.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20240806_183312.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240806_183312.png?w=650&amp;amp;tok=d30de3&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You might notice that the image on the right is in a sort-of &amp;#039;negative&amp;#039; state. This is an sRGB environment trying to make sense of an embedded CMYK image.
&lt;/p&gt;

&lt;p&gt;
I hadn&amp;#039;t realised this sort of thing could actually happen… until it happened to me! Version 2.02 of Semplice thus fixes this issue by doing a silent conversion of any CMYK images it finds into sRGB ones, over-writing the originals whilst doing so. The conversion process doesn&amp;#039;t change what the standalone image looks like on your computer screen, but merely alters the internal way in which the image handles colours. Embedded art then displays correctly in Giocoso, like so:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240806_194247.png&quot; class=&quot;media&quot; title=&quot;software:semplice:screenshot_20240806_194247.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/screenshot_20240806_194247.png?w=650&amp;amp;tok=33ab05&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;650&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.02 - August 7th 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_202_-_august_7th_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:13,&amp;quot;range&amp;quot;:&amp;quot;55808-58343&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit14&quot; id=&quot;semplice_version_201_-_july_15th_2024&quot;&gt;Semplice Version 2.01 - July 15th 2024&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
This release was necessitated by the realisation that ImageMagick (the program Semplice uses to display and manipulate album art when music files are being tagged with album or cover art) comes in two versions. Version 6 uses a program called “convert”, for which a command such as “convert -resize 450&amp;times;450 image.jpg” would be valid. Version 7 puts up a warning message if the &amp;#039;convert&amp;#039; command is used, saying that its use is deprecated. It also changes the syntax requirements so that the replacement program, “magick”, now &lt;em&gt;requires&lt;/em&gt; that the commands come in “image - task” order. Issue a command such as “magick -resize 450&amp;times;450 image.jpg” therefore, and you&amp;#039;ll get an error message saying that no image file called “450&amp;times;450” could be found. Instead, you have to say, “magick image.jpg -resize 450&amp;times;450”: get the image mentioned first, then say what tasks you want applied to it.
&lt;/p&gt;

&lt;p&gt;
The syntax variation means that you can&amp;#039;t just alias convert → magick. You literally have to issue different commands, depending on which version of ImageMagick you&amp;#039;re working with. Up until very recently, Version 6 was the one used by default in &lt;em&gt;all&lt;/em&gt; the distros that Semplice was tested on, so the issue never arose in my testing. The recent release of KDE Version 6, however, means that I noticed some distros are now shipping ImageMagick Version 7 by default.
&lt;/p&gt;

&lt;p&gt;
This release therefore adds code to (1) identify which version of ImageMagick is installed; and (2) issues an appropriate convert or magick command (using different syntax ordering as needed) depending on what version is detected.
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
| &lt;strong&gt;&lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semplice&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semplice&quot; data-wiki-id=&quot;softwares:semplice:semplice&quot;&gt;Back to Semplice Home Page&lt;/a&gt;&lt;/strong&gt; |
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Semplice Version 2.01 - July 15th 2024&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;semplice_version_201_-_july_15th_2024&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:14,&amp;quot;range&amp;quot;:&amp;quot;58344-&amp;quot;} --&gt;
&lt;!-- cachefile /var/www/dokuwiki/data/cache/e/eea144e33bf8fd818536df3a3bc1b0cd.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/blog/semplice_version_2.13_released">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T15:17:23+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>semplice_version_2.13_released</title>
        <link>https://www.bbritten.com/blog/semplice_version_2.13_released</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;semplice_version_213_released&quot;&gt;Semplice Version 2.13 Released&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/software/semplice/sempliceico.png?w=220&amp;amp;tok=2e3735&quot; class=&quot;medialeft&quot; align=&quot;left&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;220&quot; /&gt;A little later than intended, but I&amp;#039;ve just released the new Version 2.13 of Semplice. It&amp;#039;s quite a substantial release: the new graphical look and feel is perhaps the most obvious one, along with the ability to set the colours for the individual display elements of the program interface. Under the hood, some fairly significant bugs got squashed, too, however: the biggest ones are mostly to do with making Semplice a first-class citizen on a macOS installation. In particular, macOS&amp;#039;s handling of Unicode characters that involve accents is, er… “unpredictable” and the new version of Semplice brings some order to the chaos! Full details, as always, are available from &lt;a href=&quot;https://www.bbritten.com/softwares/semplice/semchange&quot; class=&quot;wikilink1&quot; title=&quot;softwares:semplice:semchange&quot; data-wiki-id=&quot;softwares:semplice:semchange&quot;&gt;the Semplice Changelog&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
This update is, unfortunately a &amp;#039;breaking update&amp;#039;, meaning that simply taking the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 3&lt;/strong&gt; will certainly upgrade to the latest Semplice release, but it will look like a disaster when you&amp;#039;re done and some important things will be missing (which &lt;em&gt;won&amp;#039;t&lt;/em&gt; be missing if you were doing a fresh install, by the way).
&lt;/p&gt;

&lt;p&gt;
So, to ensure the unpleasantness is kept to a minimum, you need to do a bit more than just taking that &amp;#039;check for program updates&amp;#039; menu option. The first thing you need to do (again, only if you&amp;#039;re upgrading an existing Semplice installation) is to install some extra packages which are new dependencies that Semplice now has and didn&amp;#039;t before:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Fedora: &lt;strong&gt;sudo dnf install libsixel libsixel-utils kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Mint: &lt;strong&gt;sudo apt install libsixel-bin kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; AlmaLinux10: &lt;strong&gt;sudo dnf install kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Suse: &lt;strong&gt;sudo zypper install libsixel1 libsixel-utils kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Arch: &lt;strong&gt;sudo pacman -S kitty libsixel&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Debian/Raspbian: &lt;strong&gt;sudo apt install libsixel-bin kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Ubuntu: &lt;strong&gt;sudo apt install libsixel-bin kitty&lt;/strong&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Once that new software is installed, you can proceed to do the standard Semplice upgrade procedure (i.e., take the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 3&lt;/strong&gt; and supply the sudo password when prompted). The upgrade will appear to fail:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_14.52.13.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-30_at_14.52.13.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_14.52.13.png?w=600&amp;amp;tok=281c52&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Don&amp;#039;t worry about that: just press [Enter] or click OK to accept the message: you&amp;#039;ll be returned to the main program screen, which will look ghastly:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/software/screenshot_2026-03-30_at_14.57.04.png&quot; class=&quot;media&quot; title=&quot;software:screenshot_2026-03-30_at_14.57.04.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/software/screenshot_2026-03-30_at_14.57.04.png?w=600&amp;amp;tok=788659&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Don&amp;#039;t worry about this, either. Just take the Miscellaneous menu option once more, Option 1 to edit the configuration file and then keep pressing [Enter] to step through every page of options without changing anything. When you press [Enter] on the last page of the configuration options, you&amp;#039;ll return to the main program menu and see this:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.00.13.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-30_at_15.00.13.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.00.13.png?w=600&amp;amp;tok=f8b85a&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
At this point, the only real problem remaining is the size of the &amp;#039;grumpy Beethoven&amp;#039; logo, over on the right of the program display: go back into the &lt;strong&gt;Edit Configuration File&lt;/strong&gt; option once more. On the last page, you&amp;#039;ll find a set of four new configuration options:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.01.23.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-30_at_15.01.23.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.01.23.png?w=600&amp;amp;tok=c6c4ec&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Set the “size of the program logo” to something smaller or larger, depending on how things are appearing on your screen. Use the “program logo position” parameter to supply a negative (move left) or positive (move right) number to adjust the precise position of the logo. For my Fedora installation, I found a size of 110 and a position of 0 worked fine, but your mileage might vary:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.18.31.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-30_at_15.18.31.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.18.31.png?w=600&amp;amp;tok=28535b&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Once the display looks fine, your upgrade is complete. I apologise for the fact that this upgrade is non-trivial and requires a bit of manual intervention on your part beforehand: I try to keep these &amp;#039;breaking updates&amp;#039; to a minimum and I hope this will be the last one for a good long while!
&lt;/p&gt;

&lt;p&gt;
Finally, note that on AlmaLinux, the terminal type that the Semplice launcher runs Semplice in cannot display graphics: that&amp;#039;s why these instructions mentioned installing the Kitty terminal, which &lt;em&gt;can&lt;/em&gt; display those graphics (this may be true for other distros, too). It is accordingly recommended that you use the Kitty terminal for all Semplice operations on that platform in future. If you want to adjust the program launcher so that it invokes Kitty automatically, you&amp;#039;ll need to edit the appropriate launcher file. That&amp;#039;s located in &lt;strong&gt;$HOME/.local/share/applications/semplice.desktop&lt;/strong&gt;. So:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nano $HOME/.local/share/applications/semplice.desktop&lt;/pre&gt;

&lt;p&gt;
Change the “Exec” line of the file. At the moment, it&amp;#039;s reading something like:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Exec=/usr/bin/xterm -xrm &amp;#039;xterm*iconHint: /home/hjr/.local/share/semplice2/art/sempliceico.xpm&amp;#039; -bg black -fg green -geometry 103x28 -fa &amp;#039;Luxi Mono:style=Regular&amp;#039; -fs 11 -ti 340 -tn xterm-256color -e semplice2.sh&lt;/pre&gt;

&lt;p&gt;
Change that to read (rather more simply!):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Exec=/usr/bin/kitty -e semplice2.sh&lt;/pre&gt;

&lt;p&gt;
You may also want to configure Kitty generally to display things in a nicer fashion than it does by default. That&amp;#039;s done by editing the $HOME/.config/kitty/kitty.conf file. My own is very, very simple:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;font_family      family=&amp;#039;Luxi Mono&amp;#039; postscript_name=LuxiMono
font_size 12.0&lt;/pre&gt;

&lt;p&gt;
…but many more configuration options are available to anyone with time to invest in such things!
&lt;/p&gt;

&lt;/div&gt;

&lt;!-- cachefile /var/www/dokuwiki/data/cache/4/49e3c3ba647d39d8a08c63cf1a5a2b95.xhtml used --&gt;
</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.18.31.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:18:41+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_15.18.31.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.18.31.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.18.31.png?w=500&amp;amp;h=500&amp;amp;tok=333b66&quot; alt=&quot;screenshot_2026-03-30_at_15.18.31.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.01.23.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:18:00+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_15.01.23.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.01.23.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.01.23.png?w=500&amp;amp;h=500&amp;amp;tok=d0778c&quot; alt=&quot;screenshot_2026-03-30_at_15.01.23.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.00.13.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:17:05+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_15.00.13.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_15.00.13.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_15.00.13.png?w=500&amp;amp;h=500&amp;amp;tok=7549eb&quot; alt=&quot;screenshot_2026-03-30_at_15.00.13.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=software%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=software&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:14:32+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_14.57.04.png - created</title>
        <link>https://www.bbritten.com/?image=software%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=software&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/software/screenshot_2026-03-30_at_14.57.04.png?w=500&amp;amp;h=500&amp;amp;tok=9d8bff&quot; alt=&quot;screenshot_2026-03-30_at_14.57.04.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:09:08+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_14.57.04.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.57.04.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_14.57.04.png?w=500&amp;amp;h=500&amp;amp;tok=c30b8b&quot; alt=&quot;screenshot_2026-03-30_at_14.57.04.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.52.13.png&amp;ns=blog&amp;do=media">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-30T14:07:41+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>screenshot_2026-03-30_at_14.52.13.png - created</title>
        <link>https://www.bbritten.com/?image=blog%3Ascreenshot_2026-03-30_at_14.52.13.png&amp;ns=blog&amp;do=media</link>
        <description>&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-30_at_14.52.13.png?w=500&amp;amp;h=500&amp;amp;tok=3f684c&quot; alt=&quot;screenshot_2026-03-30_at_14.52.13.png&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; /&gt;</description>
    </item>
    <item rdf:about="https://www.bbritten.com/blog/niente_version_5.05_released">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-29T13:09:21+00:00</dc:date>
        <dc:creator>hjr (hjr@undisclosed.example.com)</dc:creator>
        <title>niente_version_5.05_released</title>
        <link>https://www.bbritten.com/blog/niente_version_5.05_released</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;niente_version_505_released&quot;&gt;Niente Version 5.05 Released&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;img src=&quot;https://www.bbritten.com/_media/softwares/niente/beethoven-inspecting7.png?w=220&amp;amp;tok=f1cb0b&quot; class=&quot;medialeft&quot; align=&quot;left&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;220&quot; /&gt;I have just released (almost on-time!) the latest version of Niente: version 5.05. &lt;a href=&quot;https://www.bbritten.com/softwares/niente/nenchange&quot; class=&quot;wikilink1&quot; title=&quot;softwares:niente:nenchange&quot; data-wiki-id=&quot;softwares:niente:nenchange&quot;&gt;The changelog, as ever&lt;/a&gt;, has all the details, but the short version is that there was a fairly nasty bug concerning Niente and ReplayGain, which is now fixed; and there&amp;#039;s been a whole truck-load of flim-flammery concerning Niente&amp;#039;s visual appearance. The story there is, basically, to bring it in-line with how all my other software works (or is about to work): colour selection and a graphical logo.
&lt;/p&gt;

&lt;p&gt;
Unfortunately, these changes mean that the upgrade process is not as simple as using the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 5&lt;/strong&gt;. It&amp;#039;s a little bit more convoluted than that! Here goes:
&lt;/p&gt;

&lt;p&gt;
First, make a note of all your existing configuration settings. We&amp;#039;re going to wipe these shortly and you&amp;#039;ll need to be able to put them back later. So take a screenshot now of &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 5&lt;/strong&gt; and or otherwise note the contents of that configuration setting: we&amp;#039;re going to need to use that as a template later.
&lt;/p&gt;

&lt;p&gt;
Next, you need to ensure that both libsixel and kitty are installed, so that Niente can do its new &amp;#039;graphical logo thing&amp;#039;. How you do that depends on your distro:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Fedora: sudo dnf install libsixel libsixel-utils kitty&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Mint: sudo apt install libsixel-bin kitty&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; AlmaLinux10: sudo dnf install kitty&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Suse: sudo zypper install libsixel1 libsixel-utils kitty&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Arch: sudo pacman -S kitty libsixel&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Debian/Raspbian: sudo apt install libsixel-bin kitty&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Ubuntu: sudo apt install libsixel-bin kitty&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
I should explain that I cannot find a way to install sixel graphics support on AlmaLinux 9 or 10, so we don&amp;#039;t bother and instead install the Kitty terminal, which is a completely different ball-game that still manages to install support for doing in-terminal graphics. Note that this means either that 1) you can&amp;#039;t use &amp;#039;gnome terminal“ to run Niente going forward; or 2) if you insist on using gnome-terminal, you&amp;#039;re not going to see the &amp;#039;beethoven looking grumpy&amp;#039; logo.
&lt;/p&gt;

&lt;p&gt;
Anyway, once those new packages are installed, you fire up Niente and take the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 5: Check for software updates&lt;/strong&gt;. Follow the prompts and the upgrade process should complete without error… except that you&amp;#039;re very likely to see variations on this unholy mess at the end of it:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_16.45.41.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-28_at_16.45.41.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_16.45.41.png?w=600&amp;amp;tok=8ace60&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Don&amp;#039;t panic! At this point, exit Niente (tap &amp;#039;x&amp;#039;) and then issue this command:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;rm -f $HOME/.local/share/niente/txt/niente.conf&lt;/pre&gt;

&lt;p&gt;
That deletes your specific persistent configuration file, because the absence of such a file triggers Niente to create a &lt;em&gt;default&lt;/em&gt; one, containing all the new parameters that the new version expects to find. Of course, this also means that the new configuration file will be missing all the really important &lt;em&gt;personalised&lt;/em&gt; settings you may have set previously: that&amp;#039;s why you were told to make a note or screenshot of those existing settings before we started! You did do that, didn&amp;#039;t you?!
&lt;/p&gt;

&lt;p&gt;
Now you can re-launch Niente (on AlmaLinux, this &lt;em&gt;must&lt;/em&gt; be from within Kitty): you will likely be warned that your new, default configuration file mentions a database called “niente” (the default name), but that no such database exists:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_17.41.45.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-28_at_17.41.45.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_17.41.45.png?w=600&amp;amp;tok=386030&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Again, this is the consequence of having deleted your original configuration file. It&amp;#039;s expected, so click [OK] and Niente will launch in its new 4.05 guise. Immediately visit the &lt;strong&gt;Administration&lt;/strong&gt; menu and take the &lt;strong&gt;Edit Configuration File&lt;/strong&gt; option. Put back all the &amp;#039;correct&amp;#039; configuration file options you previously made a note of, such as the default database name. Make sure you add in values for &amp;#039;Preferred browser&amp;#039;, for example. If you are on AlmaLinux, you &lt;em&gt;must&lt;/em&gt; switch on “Use Kitty Graphics”: set it to a value of “yes”. Quit Niente once more and then immediately relaunch into it: you should now find that you&amp;#039;re viewing Niente correctly, with colour, and with a colourful logo in the left-hand pane:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_18.44.11.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-28_at_18.44.11.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_18.44.11.png?w=600&amp;amp;tok=1a3da0&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You may well notice, as in this screenshot, that the logo is &lt;em&gt;way&lt;/em&gt; too big and in completely the wrong place! Again, don&amp;#039;t panic: you have the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 1&lt;/strong&gt; to adjust the &amp;#039;Size of the Program Logo&amp;#039; and the “Program Logo position&amp;#039;. On my particular virtual machine, displaying on an iMac (so who knows what the right settings might be on real hardware?!), I found setting the logo size to “110” and the position to ”-5” to be ideal:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_18.46.17.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-28_at_18.46.17.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_18.46.17.png?w=600&amp;amp;tok=e82524&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Play around as you like… and then consider taking the &lt;strong&gt;Administration&lt;/strong&gt; menu, &lt;strong&gt;Option 6&lt;/strong&gt; to fiddle with the colour values associated with the various program display elements.
&lt;/p&gt;

&lt;p&gt;
I&amp;#039;m sorry the upgrade process is a bit more convoluted than normal this time around. If you prefer, you can simply re-install Niente from scratch:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;wget software.bbritten.com/neninst
bash neninst&lt;/pre&gt;

&lt;p&gt;
A fresh install automatically installs the Kitty terminal and libsixel components needed to get that graphical logo displayed correctly. For a mere upgrade, you have to take care of those extra component requirements manually, I&amp;#039;m afraid. It is a once-off requirement! I did find that even on fresh installations, Niente would look ghastly until you had taken the Administration menu, Option 1 and pressed [Enter] to create a new persistent configuration file: it&amp;#039;s a quirk of the transition, sadly.
&lt;/p&gt;

&lt;p&gt;
Additionally, note that you &lt;em&gt;don&amp;#039;t&lt;/em&gt; have to run Niente with a graphical logo. If you would prefer to run Niente on AlmaLinux (for example) in the gnome-terminal, without switching on Kitty graphics, that will work just fine:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_20.15.18.png&quot; class=&quot;media&quot; title=&quot;blog:screenshot_2026-03-28_at_20.15.18.png&quot;&gt;&lt;img src=&quot;https://www.bbritten.com/_media/blog/screenshot_2026-03-28_at_20.15.18.png?w=600&amp;amp;tok=8e393d&quot; class=&quot;mediacenter&quot; loading=&quot;lazy&quot; alt=&quot;&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
You just won&amp;#039;t see the &amp;#039;grumpy beethoven&amp;#039; icon on the right-hand side (which some might prefer, the Luddites!)
&lt;/p&gt;

&lt;p&gt;
Note that unmentioned in the changelog is a bunch of code tidying that is really rather important that you have: I can&amp;#039;t tell you the number of subtle code howlers I spotted whilst preparing this release! So I&amp;#039;d encourage you to upgrade, apologise again for the extra steps required, and assure you that nothing this big should happen again for quite a long time!
&lt;/p&gt;

&lt;/div&gt;

&lt;!-- cachefile /var/www/dokuwiki/data/cache/3/3e2b80c42a743c5fc90438ceb461f6c1.xhtml used --&gt;
</description>
    </item>
</rdf:RDF>
