<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Spotify on Mike Bell - Blog &amp; Stuff</title><link>https://mikebell.io/tags/spotify/</link><description>Recent content in Spotify on Mike Bell - Blog &amp; Stuff</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>hello@mikebell.io (Mike Bell)</managingEditor><webMaster>hello@mikebell.io (Mike Bell)</webMaster><copyright>© 2026 Mike Bell</copyright><lastBuildDate>Thu, 07 Mar 2024 09:51:56 +0000</lastBuildDate><atom:link href="https://mikebell.io/tags/spotify/index.xml" rel="self" type="application/rss+xml"/><item><title>Moving Away from Spotify</title><link>https://mikebell.io/posts/moving-away-from-spotify/</link><pubDate>Thu, 07 Mar 2024 09:51:56 +0000</pubDate><author>hello@mikebell.io (Mike Bell)</author><guid>https://mikebell.io/posts/moving-away-from-spotify/</guid><description>
&lt;p>Spotifys quality sucks, it&amp;rsquo;s UX is horrible and it pays it&amp;rsquo;s artists pretty much sod all so it&amp;rsquo;s time to move away and build my own cloud music service. It&amp;rsquo;s a lot easier than it sounds!&lt;/p>
&lt;h2 class="relative group">How do I get my data?
&lt;div id="how-do-i-get-my-data" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#how-do-i-get-my-data" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>Replacing each and every album I have saved on Spotify is no mean feat, I have hundreds saved on there. My first problem was getting all that data out of Spotify into something easy to understand, you can request &lt;em>all&lt;/em> your data from Spotify &lt;a
href="https://support.spotify.com/uk/article/data-rights-and-privacy-settings/"
target="_blank"
>here&lt;/a>. You request your data then wait a few days for it to show up, you get a boat load of badly organised JSON which isn&amp;rsquo;t great.&lt;/p>
&lt;p>Parsing all that data is the next job, I ended up using &lt;a
href="https://github.com/Yooooomi/your_spotify"
target="_blank"
>Your Spotify&lt;/a>. It connects to your existing Spotify account and downloads the last 30 days (I think) of data. You can also import your existing data from the json files you got earlier. This then builds up an accurate picture of what you&amp;rsquo;ve been listening to over your entire Spotify existence, in my case around 10 years.&lt;/p>
&lt;h2 class="relative group">Where does the music come from?
&lt;div id="where-does-the-music-come-from" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#where-does-the-music-come-from" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>This is where Your Spotify comes in really handy I can search around my data and find albums that I want to buy first. Most of my music is purchased from &lt;a
href="https://bandcamp.com/"
target="_blank"
>Bandcamp&lt;/a>, it turns out that supporting artists properly (ish) is quite a lot more than £17.99 a month. It&amp;rsquo;s a slow process as I&amp;rsquo;m not quite ready to drop thousands on all the music from my Spotify account but I&amp;rsquo;m getting there. I reckon it&amp;rsquo;ll probably take me around 5-10 years at the rate I&amp;rsquo;m going to fully rebuild my collection. I&amp;rsquo;m ok with this.&lt;/p>
&lt;h2 class="relative group">Where do I store it?
&lt;div id="where-do-i-store-it" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#where-do-i-store-it" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>I&amp;rsquo;ve lost my music collection once before many many years ago and it&amp;rsquo;s heartbreaking so this time everything is a bit more secure. I have a 20tb NAS which has redundancies in case of failure, I&amp;rsquo;m also planning some form of cloud backup in the future.&lt;/p>
&lt;h2 class="relative group">How do I sort it?
&lt;div id="how-do-i-sort-it" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#how-do-i-sort-it" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>For this I&amp;rsquo;m using &lt;a
href="https://beets.readthedocs.io/en/stable/index.html"
target="_blank"
>Beets&lt;/a> a CLI tool has plugin support. When I grab an album I use &lt;code>beet import&lt;/code> to import which renames the files and if possible downloads a &lt;code>cover.jpg&lt;/code> file. &lt;a
href="https://www.navidrome.org/"
target="_blank"
>Navidrome&lt;/a> scans my music folder once an hour for new music, although I can do this manually.&lt;/p>
&lt;h2 class="relative group">How do I listen to it all?
&lt;div id="how-do-i-listen-to-it-all" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#how-do-i-listen-to-it-all" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>I have an NFS share from my NAS to my Proxmox server which then connects to a dockerised Navidrome setup. This acts as my music server. I can play music through Navidrome but prefer to have third party clients connect:&lt;/p>
&lt;ul>
&lt;li>Windows 11 and OSX - &lt;a
href="https://github.com/dweymouth/supersonic"
target="_blank"
>Supersonic&lt;/a>&lt;/li>
&lt;li>Android TV - &lt;a
href="https://jellyfin.org/"
target="_blank"
>Jellyfin&lt;/a>&lt;/li>
&lt;li>Android - &lt;a
href="https://play.google.com/store/apps/details?id=app.symfonik.music.player&amp;amp;hl=en&amp;amp;gl=US"
target="_blank"
>Symfonium&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>All these apps (apart from Jellyfin) connect to Navidrome.&lt;/p>
&lt;h3 class="relative group">Symfonium and transcoding
&lt;div id="symfonium-and-transcoding" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#symfonium-and-transcoding" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h3>
&lt;p>The neat thing about Synfonium and Navidrome is that it transcodes on the fly so when I&amp;rsquo;m out and about and I don&amp;rsquo;t want to use gigs of mobile data it transcodes down to Opus Audio:&lt;/p>
&lt;pre tabindex="0">&lt;code>ffmpeg -i %s -map 0:0 -b:a %bk -v 0 -c:a libopus -f opus -
&lt;/code>&lt;/pre>&lt;p>I need to play around with Opus Audio to get an idea of what it&amp;rsquo;s capable but the file size vs quality is pretty damned good at the moment.&lt;/p>
&lt;h2 class="relative group">Conclusion
&lt;div id="conclusion" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#conclusion" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>I&amp;rsquo;m really happy with this setup, I&amp;rsquo;m not tied to any one application and any component can be swapped out at any time giving me the freedom to try different things.&lt;/p>
&lt;hr>
&lt;h2 class="relative group">Discuss at
&lt;div id="discuss-at" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#discuss-at" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;iframe src="https://remotelab.uk/@mikebell/112087551082246586/embed" class="mastodon-embed" style="max-width: 100%; border: 0" width="400" allowfullscreen="allowfullscreen">&lt;/iframe>&lt;script src="https://remotelab.uk/embed.js" async="async">&lt;/script>
&lt;p>Thanks for reading via RSS!&lt;/p>
&lt;p>Send me a message on &lt;a href="https://remotelab.uk/mikebell">Mastodon&lt;/a> or &lt;a href="mailto:hello@mikebell.io">email me&lt;/a>&lt;/p></description></item></channel></rss>