Navidrome is de perfecte zelf gehoste muziekserver voor Raspberry Pi
Muziek streamen is niet meer weg te denken uit het moderne leven en de meeste mensen zijn gewend aan het gemak van diensten als Spotify en YouTube. Als je een grote eigen muziekcollectie hebt, kun je Navidrome gebruiken om je favoriete muziek naar je mobiele apparaten te streamen en naar internetradio te luisteren.
Waarom Navidrome gebruiken om muziek te streamen vanaf je Raspberry Pi?
Het aanleggen van grote muziekbibliotheken is een leuk tijdverdrijf voor veel mensen. Ondanks het feit dat prominente streamingdiensten beschikken over enorme repositories van gelicenseerde nummers, is voor toegang tot minder bekende muzikanten meestal een abonnement tegen betaling nodig. Bovendien bestaat er binnen het grote aantal beschikbare streamingplatforms geen zekerheid dat de dienst van iemands voorkeur voortdurend de rechten zal behouden op elke muzikale compositie waarvoor ze momenteel een licentie hebben.
Het kiezen van een gratis abonnement voor muziek streaming platforms kan resulteren in opdringerige dataverzamelingspraktijken en advertenties, die heel vervelend kunnen blijken te zijn. Een praktischer alternatief zou zijn om je eigen muziekrepertoire aan te schaffen door individuele nummers of albums te kopen, of door je bestaande fysieke cd-collectie om te zetten in digitaal formaat en het persoonlijk te streamen.
Mopidy is een van de vele haalbare opties die het gebruik van een Raspberry Pi als muziekstreamer mogelijk maakt. Daarnaast kan Jellyfin streaming media center voor dit doel gebruikt worden. Het is de moeite waard om op te merken dat het integreren van Nextcloud op een Raspberry Pi ruime mogelijkheden biedt voor het integreren van verschillende muziek-streaming toepassingen.
Navidrome onderscheidt zich van andere concurrenten door zich uitsluitend te richten op muziekproductie en verschillende onderscheidende kenmerken te bieden, waaronder de mogelijkheid om naadloos te functioneren op minimalistische hardware zoals de Raspberry Pi Zero.
Hoe installeer je Navidrome op je Raspberry Pi
Om Navidrome op je Raspberry Pi te installeren, moet je eerst een aantal handelingen verrichten. Ten eerste moet je van je Raspberry Pi een webhosting server maken door een aantal eenvoudige instructies te volgen. Hoewel het installeren van MariaDB en PHP niet verplicht is voor deze specifieke onderneming, kan het wel voordelig zijn voor andere intrigerende Raspberry Pi hostingprojecten. Zorg er bovendien voor dat je handmatig de meest recente versie van Docker Compose implementeert.
Maak verbinding met je Raspberry Pi via Secure Shell (SSH) en maak een nieuwe mappenstructuur aan door aparte mappen te maken voor Navidrome en de bijbehorende bestanden.
ssh pi@your-pi-local-ip-address
mkdir navidrome navidrome/data
Om je mediabestanden efficiënt te beheren, is het belangrijk om een speciale opslagruimte in te richten voor je muziek- en videocollecties. Hoewel deze ruimte vrijwel overal kan worden ondergebracht, raden we aan om als optimale oplossing een specifieke map aan te wijzen in je persoonlijke gebruikersmap.
mkdir music
Om mediabestanden van uw pc naar uw Raspberry Pi over te zetten, start u een nieuwe terminalsessie op uw apparaat en gebruikt u het hulpprogramma Secure Copy (SCP) om de inhoud naar de Raspberry Pi te kopiëren:
scp -r /path/to/your/music/folder/* pi@your-pi-local-ip-address:~/music/
Om toegang te krijgen tot de Navidrome map via SSH op je Raspberry Pi, gebruik je de opdrachtregelinterface om naar de gespecificeerde locatie te navigeren en gebruik je vervolgens de nano teksteditor voor het maken of bewerken van bestanden in die map.
cd navidrome
nano docker-compose.yml
Voeg de volgende regels toe:
version: "3"
services:
navidrome:
image: deluan/navidrome:latest
user: 1000:1000
ports:
- "4533:4533"
restart: unless-stopped
environment:
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: ""
volumes:
- "/home/pi/navidrome/data:/data"
- "/home/pi/music:/music:ro"
Druk eerst op “Ctrl \ O” om een ongedaanmaking uit te voeren indien nodig voordat u opslaat; druk vervolgens op “Ctrl \ X” om de actie van het opslaan te bevestigen; druk ten slotte op “Enter” of klik op de knop “Opslaan” in de werkbalk om het proces te voltooien.
docker-compose -f path/to/docker-compose.yml up --detach
.
docker-compose up -d
Docker Compose is ontworpen om meerdere containers efficiënt te beheren door de nodige image-bestanden te downloaden en Navidrome containers in te stellen voor optimale prestaties. Zodra het installatieproces is voltooid, kun je de applicatie benaderen via een webbrowser op je lokale apparaat door het IP-adres van je Raspberry Pi in te typen (dat moet worden weergegeven als “your-pi-local-ip-address”) gevolgd door 4533 in de URL-balk.
Om een administratieve gebruikersaccount aan te maken op dit platform, voer je een gebruikersnaam en een veilig wachtwoord in en authenticeer je je met deze gegevens om toegang te krijgen. Na het inloggen zul je direct zien dat al je muziekcollecties beschikbaar zijn.
Uw Navidrome Instance toegankelijk maken op het web
Ga naar het configuratiescherm van uw domeinregistratie en navigeer naar de Geavanceerde DNS-instellingen voor uw domein. Maak een nieuw A-record aan door ‘@’ op te geven in het veld host en uw lokale IP-adres op te geven in het veld waarde. Stel daarnaast de TTL-waarde (Time to Live) in op het laagst toegestane niveau.
Om verder te gaan met de noodzakelijke configuratie voor de Raspberry Pi, moet er een nieuw Apache-configuratiebestand gegenereerd worden.
cd /etc/apache2/sites-available/
sudo nano navidrome.conf
Neem de volgende tekst op in het herziene document:
<VirtualHost *:80>
ServerName muo.lol
ProxyPass / http://127.0.0.1:4533/
ProxyPassReverse / http:/127.0.0.1:4533/
ProxyPreserveHost On
</VirtualHost>
Om deze website te kunnen gebruiken, moet je een unieke domeinnaam toewijzen aan “muo.lol”. Dit kun je doen door een aangepaste domeinnaam te registreren en configureren via een domeinregistrar of webhosting service provider naar keuze. Hierdoor krijgen gebruikers toegang tot de site via het door jou opgegeven domein in plaats van via “muo.lol”, wat zowel de functionaliteit als de professionele uitstraling ten goede komt.
Tot slot is het gebruik van Nano om een TXT-record aan te maken voor de gewenste hostnaam een effectieve methode om te controleren of je de eigenaar van het domein bent. Door een reeks toetsaanslagen uit te voeren zoals “Ctrl \ O”, gevolgd door “Ctrl \ X”, kun je Nano opslaan en afsluiten met behoud van alle wijzigingen die je in de editor hebt gemaakt. Om de veiligheidsmaatregelen op je website verder te verbeteren, kun je overwegen om Let’s Encrypt en zijn automatiseringstool Certbot te gebruiken om Transport Layer Security (TLS) certificaten en sleutels voor je domein aan te schaffen en te implementeren.
sudo certbot
Selecteer een domeinnaam uit de lijst en druk op Enter om verder te gaan.
Je hebt nu toegang tot je Navidrome instantie via een webbrowser door de opgegeven domeinnaam te gebruiken en alle verbindingen zijn omgezet naar het veilige HTTPS-protocol.
De Navidrome webinterface
De gebruikersinterface van het Navidrome platform is ontworpen met een hoge mate van gebruiksvriendelijkheid in gedachten, met een hoofdmenu dat prominent wordt weergegeven aan de linkerkant van het scherm. Als deze lay-out te veel ruimte in beslag neemt, kunnen gebruikers gebruikmaken van het hamburgerpictogram erboven, waarmee de menustructuur gemakkelijk kan worden ingeklapt.
Verken onze uitgebreide muziekbibliotheek op verschillende manieren, zoals artiesten, titels van nummers of albums. Daarnaast kun je je favoriete nummers, vaak gedraaide nummers, recentelijk gedraaide nummers en nieuw toegevoegde platen bekijken voor een verbeterde luisterervaring.
Als je muzikale voorkeuren onzeker zijn of als je op zoek bent naar afwisseling, kun je kiezen voor een willekeurig gegenereerde afspeellijst. Helaas biedt de huidige webgebaseerde interface niet de mogelijkheid om een geïmproviseerde mix rond een specifiek nummer te maken; deze functionaliteit is echter gepland voor opname in een volgende update en is beschikbaar in bepaalde compatibele toepassingen.
De interface van het album biedt verschillende functionaliteiten zoals het afspelen van volledige albums, het toevoegen van favorieten en beoordelingen voor specifieke nummers en het ordenen in afspeellijsten of wachtrijen voor toekomstig luisteren.
De gebruikersinterface heeft een reeks functies in het rechterpaneel, bestaande uit drie ongedefinieerde symbolen die verschillende bewerkingen vertegenwoordigen. Door op het eerste pictogram te klikken, wordt de visuele weergave bijgewerkt met actuele informatie. Een volgende klik genereert een reeks meetgegevens met betrekking tot de Navidrome-installatie, waaronder de werkingsduur en het totale aantal mappen. Bovendien is door het derde symbool te selecteren een keuze tussen prompt of uitgebreid scannen beschikbaar voor het verwerken van het muziekarchief, wat langere tijd in beslag kan nemen, afhankelijk van de omvang van de opgeslagen gegevens.
De laatste menuoptie heeft betrekking op administratieve taken, met subopties waarmee je je individuele gebruikersinterface kunt aanpassen. Daarnaast heb je de mogelijkheid om gebruikers toe te voegen of te verwijderen en een overzicht van eerder gebruikte client-apparaten en applicaties te bekijken.
Radiozenders toevoegen aan Navidrome
Natuurlijk kan het na verloop van tijd eentonig worden om te genieten van je persoonlijke selectie muzikale schatten, maar de radio is een uitstekend middel om nieuwe muziek te ontdekken, zowel binnen als buiten je favoriete genre.
Hoewel het browsen van online radio moeiteloos gaat via een internetbrowser, en het bouwen van een Raspberry Pi internetradio met aanraakfunctionaliteit ook haalbaar is, zorgt de integratie van radiostations in de webinterface van Navidrome ervoor dat gebruikers naadloos toegang hebben tot hun radiostations en mediabibliotheek vanaf één locatie.
Om een radiostation op te nemen in Navidrome, selecteer de optie “Radio’s” en geef een naam op voor je eerste radiostation. Voer de streaming URL van het station in, samen met een optionele URL voor de startpagina van het station. Klik op de knop “Opslaan” als je de vereiste informatie hebt ingevoerd om je toevoeging te voltooien. Je kunt meerdere radiostations toevoegen aan het gedeelte “Radio’s” en alle stations zullen toegankelijk zijn via dit tabblad.
Mobiele apps voor Navidrome
Door de functionaliteit van een progressive web app te integreren in de gebruiksvriendelijke interface van onze Navidrome installatie, hebben we gezorgd voor optimale prestaties op alle apparaten, inclusief apparaten met kleinere schermen. Het is echter belangrijk op te merken dat de compatibiliteit verder gaat dan deze specifieke webinterface, want Navidrome is volledig compatibel met een uitgebreide reeks Subsonic clients. Met de vele beschikbare opties, kunnen gebruikers gemakkelijk hun favoriete Subsonic applicaties ontdekken en downloaden door het uitvoeren van een eenvoudige zoekopdracht in de app store van hun keuze.
Navidrome maakt het eenvoudig om je muziekcollectie te streamen en te beheren
Door gebruik te maken van een Navidrome server op je Raspberry Pi, ben je in staat om je persoonlijke muziekselecties wereldwijd uit te zenden vanaf elke locatie. De mogelijkheden van de Raspberry Pi reiken echter veel verder dan deze functionaliteit. Voor mensen met een uitgebreide bibliotheek aan films die liever niet afhankelijk zijn van streamingdiensten zoals Netflix, Disney of HBO, biedt Jellyfin een haalbaar alternatief voor installatie.