<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  
  
  <channel>
    <title>chrisjrob: sonos</title>
    <link>https://chrisjrob.com</link>
    <atom:link href="https://chrisjrob.com/tag/sonos/feed/index.xml" rel="self" type="application/rss+xml" />
    <description>GNU Linux, Perl and FLOSS</description>
    <language>en-gb</language>
    <pubDate>Fri, 13 Feb 2026 17:22:31 +0000</pubDate>
    <lastBuildDate>Fri, 13 Feb 2026 17:22:31 +0000</lastBuildDate>
    
    <item>
      <title>Fixing Album Art in SONOS Under Linux</title>
      <link>https://chrisjrob.com/2018/09/23/fixing-album-art-in-sonos-under-linux/</link>
      <pubDate>Sun, 23 Sep 2018 13:00:00 +0000</pubDate>
      <author>chrisjrob@gmail.com (Chris Roberts)</author>
      <guid>https://chrisjrob.com/2018/09/23/fixing-album-art-in-sonos-under-linux</guid>
      <description>
       <![CDATA[
         
           <img src="https://chrisjrob.com/assets/sonos-play-3.jpg" align="right" alt="Featured Image">
         
         <p>Following my purchase of a <a href="/2016/02/20/sonos-review/">SONOS system</a>, I wanted to be able to play my music collection through it.
Unfortunately many of the album covers were missing.
After considerable googling I eventually determined that the missing covers were missing because I had embedded the album cover with a higher resolution than SONOS can cope with.</p>

<p>To fix this problem I needed to extract the embedded images, change the resolution, remove the current images, and re-embed the new lower resolution image.
I needed to do this for each album that was missing its cover.</p>

<!--more-->

<h2 id="adding-your-music-library-to-sonos">Adding your music library to SONOS</h2>

<p>Firstly, a word about adding my music library to SONOS. 
This involved transferring my MP3 music collection onto an external hard drive and plugging it into my router and sharing it as a Samba share.
The final step is to add Music Library as a service within the SONOS app, and specify the location of the Samba share created above.</p>

<p>If your router doesn’t offer a Samba option, then you might consider a Raspberry Pi with a simple samba share, or using NextCloud or a dedicated plug-in device like the <a href="/2011/02/25/tonidoplug-tnd003sp1a03-65-tonido-store/">Tonido Plug</a>, or pretty much any NAS device.</p>

<h2 id="important-notice">Important Notice</h2>

<p>Unfortunately, whilst I made some key notes at the time, a couple of years has passed before I finally found the time to type up this post.
As a result there may be some errors, or you might need need to interpret / adjust some of these commands.</p>

<p>I do not wish to be responsible for you losing your music collection, please do take a backup of your music before you start.</p>

<p>Please do let me know if you spot any mistakes, by commenting below.</p>

<h2 id="preparation">Preparation</h2>

<p>These instructions only require eyeD3 and either grapicsmagick or imagemagick.
These instructions were written for Ubuntu GNU Linux, you will need to adapt these instructions if you use a different distribution.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo apt install eyed3 graphicsmagick
</code></pre></div></div>

<p>If you already have Imagemagick installed, then you may use that instead, just remove the “gm “ from the relevant commands below.</p>

<h2 id="step-1-extract-image-from-music">Step 1: Extract image from music</h2>

<p><strong>Please change directory into the first album that requires fixing, and stay in that directory until you have finished all steps.</strong></p>

<p>As the album cover is embedded in each track in the album, you only need to extract this once per album:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ eyeD3 --write-images=./ "01 - Track 1 name.mp3"
</code></pre></div></div>

<p>This will extract the embedded image from the file as:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>FRONT_COVER.JPG
</code></pre></div></div>

<h2 id="step-2-identify-current-resolution">Step 2: Identify current resolution</h2>

<p>The next step is to identify the size of the image, to do this I use graphicsmagick, but imagemagick will work the same (just omit the <code class="language-plaintext highlighter-rouge">gm</code>):</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ gm identify FRONT_COVER.JPG
</code></pre></div></div>

<p>If the size of the image is already smaller than 300x300 pixels, then it <em>should</em> already be working, otherwise we need to reduce its size.</p>

<h2 id="step-3-convert">Step 3: Convert</h2>

<p>To reduce the size of the image, do a simple convert:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ gm convert FRONT_COVER.JPG -geometry 300x300 folder.jpg
</code></pre></div></div>

<p>If you would like to check that this has worked just run:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ gm identify folder.jpg
</code></pre></div></div>

<h2 id="step-4-remove-images-from-mp3-files">Step 4: Remove images from MP3 files</h2>

<p>Before we can add the newly sized image, we need to remove all the embedded images in the tracks.</p>

<p>Please note that this command alters your music, please do take a backup to ensure that you can restore the tracks if necessary.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ eyeD3 --remove-images *.mp3
</code></pre></div></div>

<h2 id="step-5-add-new-image-to-mp3-files">Step 5: Add new image to MP3 files</h2>

<p>And finally we can now embed the smaller image:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ eyeD3 --add-image=./folder.jpg:FRONT_COVER *.mp3
</code></pre></div></div>

<h2 id="step-6-update-music-index">Step 6: Update music index</h2>

<p>I cannot remember whether or not I needed to update the music index, but if your album covers haven’t appeared already - try this:</p>

<ul>
  <li>Open the SONOS app</li>
  <li>Settings</li>
  <li>Manage Music Library</li>
  <li>Update Music Index Now</li>
</ul>

<h2 id="conclusion">Conclusion</h2>

<p>I was in two minds as to whether to post this, given the time elapsed, but hopefully it will prove useful to someone. 
Please do comment below if you spot any errors, or found it useful.</p>

<p>Thank you.</p>

       ]]>
      </description>
    </item>
    
    <item>
      <title>Sonos Review</title>
      <link>https://chrisjrob.com/2016/02/20/sonos-review/</link>
      <pubDate>Sat, 20 Feb 2016 12:06:00 +0000</pubDate>
      <author>chrisjrob@gmail.com (Chris Roberts)</author>
      <guid>https://chrisjrob.com/2016/02/20/sonos-review</guid>
      <description>
       <![CDATA[
         
           <img src="https://chrisjrob.com/assets/sonos-play-3.jpg" align="right" alt="Featured Image">
         
         <p>I’ve been aware of Sonos as a premium wireless speaker solution for a long time, but the price always seemed excessive for what, on the face of it, offers little more than a simple Bluetooth speaker. 
But after Subsonic needed its database rebuilding for the third time and I was unable to play music for a dinner party, enough was enough. 
I was willing at last to pay the premium for something that was purported to work.</p>

<!--more-->

<h3 id="background">Background</h3>

<p>My music collection is mostly comprised of purchased Audio CDs that I have ripped under Linux. 
Currently I have a Music folder on our <a href="/tag/mythtv/">MythTV</a> system, and have installed <a href="http://www.subsonic.org">Subsonic</a> to share our music to our many tablets and phones, using the excellent Subsonic Android App.
If I want to play from Subsonic to my music system then I have a <a href="http://www.amazon.co.uk/gp/product/B00IJYG4FY/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B00IJYG4FY&amp;linkCode=as2&amp;tag=robsquadnet-21">Logitech Bluetooth Audio Receiver Adapter</a> that receives the audio and plays it through my old-school Sony amplifier.</p>

<p>The main issues with this set-up is that the music only plays in the living room and not elsewhere in the house. 
We have bought an additional <a href="http://www.amazon.co.uk/gp/product/B0056XMVZS/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B0056XMVZS&amp;linkCode=as2&amp;tag=robsquadnet-21">Creative D80 Bluetooth Wireless Speaker</a>, but of course each can only play independent streams.</p>

<p>I also find Bluetooth a frustrating technology where you don’t have a simple 1:1 paradigm. 
In our case we have probably a dozen tablets and phones, each determined to pair with the Bluetooth receivers and then prevent other devices from connecting.</p>

<h3 id="choosing-sonos-speakers">Choosing Sonos Speakers</h3>

<p>The Sonos range comprises of the small <a href="http://www.amazon.co.uk/gp/product/B00FMS1KO0/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B00FMS1KO0&amp;linkCode=as2&amp;tag=robsquadnet-21">Play:1</a> at £155, a medium-sized <a href="http://www.amazon.co.uk/gp/product/B005CI5H3U/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B005CI5H3U&amp;linkCode=as2&amp;tag=robsquadnet-21">Play:3</a> at £229 and a larger <a href="http://www.amazon.co.uk/gp/product/B015MWS9NU/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B015MWS9NU&amp;linkCode=as2&amp;tag=robsquadnet-21">Play:5</a> at £413. 
On the Goldilocks principle of the middle one being “just right”, I opted for two of the Play:3 at £229 each - one for the living room and one for the kitchen. 
The plan was to move those elsewhere at a later stage and hopefully upgrade the living room system to a pair of Play:5 speakers.</p>

<p>The important thing to understand is that neither the Play:1 nor the Play:3 speakers have a Line-In. 
This means that you can only play from on-line content. 
If you currently subscribe to one of the supported <a href="http://www.sonos.com/en-gb/streaming-music?r=1">Sonos Services</a>, then that is fine, but if you’re wanting to play content from a CD or other input source - then you can’t.
The Play:5 does have a Line-In, as does the <a href="http://www.amazon.co.uk/gp/product/B001G7PLTQ/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B001G7PLTQ&amp;linkCode=as2&amp;tag=robsquadnet-21">Sonos Connect</a> at £264.</p>

<p>A word about the <a href="http://www.amazon.co.uk/gp/product/B001G7PLTQ/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B001G7PLTQ&amp;linkCode=as2&amp;tag=robsquadnet-21">Sonos Connect</a>. 
A simple way to imagine it is that it is basically a Play:5, but without the speaker. 
In other words it has the same Sonos interface with Line-In but no speaker.
If you have an existing music system then this is potentially ideal and with hindsight I wish that what I had done was to purchase one Play:3 for the kitchen and one Sonos Connect for the living room.
The opposing view is that a pair of Play:5 speakers complete obsoletes an existing music system - so why not do away with the legacy equipment.</p>

<h3 id="amazon-prime-music">Amazon Prime Music</h3>

<p>One great disappointment was that, whilst Sonos supports Amazon Music, it does not support <a href="http://www.amazon.co.uk/PrimeMusic">Amazon Prime Music</a>. 
One of the main reasons we had bought Sonos was to play Amazon Prime Music, so this was a major problem. 
At the time of writing it <em>is</em> available in the US as a Beta service and has been for a few months. 
One can only hope that it will trickle across to the UK in due course.</p>

<h3 id="google-play-music">Google Play Music</h3>

<p>Hoping that the Amazon Prime issue would be resolved, we signed up to a 30 day free trial with <a href="https://play.google.com/music/">Google Play Music</a>. 
This worked extremely well, except for the recommended playlists which do not appear as a Sonos Queue. 
The main issue we found was that our children would choose a song and click “Play Next” and this would interrupt the playlist - very irritating if you were enjoying a particular song.
We assumed that this was a feature of Sonos, but Spotify does not work like that (see below).</p>

<h3 id="spotify">Spotify</h3>

<p>We then subscribed to the 30 days free trial with <a href="http://www.spotify.com">Spotify</a>. 
You only need the individual member subscription to work with Sonos, but the ongoing cost is the same as Google Play. 
The only advantage of Spotify is that the recommended playlists appear as a proper Sonos queue, enabling you to save it as a Sonos Playlist, or add a song into the queue.</p>

<h3 id="subsonic">Subsonic</h3>

<p>One delight was that we were able to play our local music via <a href="http://www.subsonic.org">Subsonic</a>. 
This is a Beta service and I did have a small problem getting it working. 
Unfortunately I cannot remember the nature of the problem, other than an Internet search solved it.</p>

<h3 id="conclusions">Conclusions</h3>

<p>Obviously we were disappointed at the lack of Amazon Prime Music. 
I was also a little disappointed at the abrupt handling of music changes - if you click “Play Now” the music stops instantly and the next track starts. 
I do feel that with a premium set-up like this that music transitions should be handled more smoothly.</p>

<p>We also have had issues with our children messing about with Sonos - as the interface is open to all. 
We have sufficient control of our children that this isn’t a significant problem, but knowing some families this could be a serious issue. 
I do feel there should be some security, to enable clients to be de-authorised, or limited only to a subset of features.</p>

<p>Will I continue to invest in Sonos? Undoubtedly yes, but I think the next purchase will be a <a href="http://www.amazon.co.uk/gp/product/B001G7PLTQ/ref=as_li_tl?ie=UTF8&amp;camp=1634&amp;creative=19450&amp;creativeASIN=B001G7PLTQ&amp;linkCode=as2&amp;tag=robsquadnet-21">Sonos Connect</a> followed by a better set of audio speakers.</p>


       ]]>
      </description>
    </item>
    
  </channel> 
</rss>
