Du trenger ikke stole på kommersielle musikkstrømmetjenester. Lag din egen Raspberry Pi musikkserver og lytt fra hvilken som helst enhet.

Streaming av musikk er en funksjon i det moderne livet, og de fleste er vant til bekvemmeligheten av tjenester som Spotify og YouTube. Hvis du har en stor, privateid musikksamling, kan du i stedet bruke Navidrome til å streame favorittlåtene dine til dine mobile enheter og lytte til internettradio.

Hvorfor bruke Navidrome til å streame musikk fra Raspberry Pi?

For mange mennesker er det en hobby å samle store musikksamlinger. Mens kommersielle strømmetjenester har ufattelig store lager av lisensierte spor, trenger du ofte et betalt abonnement for å lytte til mer obskure artister. Og midt i overfloden av forskjellige strømmeplattformer, er det ingen garanti for at din valgte leverandør vil beholde rettighetene til all musikken den for øyeblikket lisensierer på ubestemt tid.

Hvis du velger å bruke den gratis abonnementsmodellen for musikkstrømmetjenester, blir du utsatt for irriterende datainnsamling og reklame. Det er langt mer fornuftig å kjøpe din egen musikk, eller rippe den aldrende CD-samlingen din til digital form, og streame den selv.

Det er flere løsninger som lar deg bruke din Raspberry Pi som en musikkstreamer, inkludert Python-basert musikkserver Mopidy. Du kan også bruke Jellyfin streaming mediasenter for musikk, og selvfølgelig, Nextcloud på Raspberry Pi, som du kan legge til flere musikkavspillingsapper til.

Mens hver av disse har sine egne fordeler, har Navidrome et unikt fokus på musikk alene, og kommer med en rekke funksjoner som gjør det skiller seg ut over resten - spesielt hevder utviklerne at den vil kjøre uten problemer selv på svært lav-end maskinvare som Raspberry Pi Null.

Slik installerer du Navidrome på Raspberry Pi

Navidrome er ganske enkelt å installere på Raspberry Pi, men før du begynner bør du følge trinnene for å klargjør din Raspberry Pi som en webserver. Selv om du ikke trenger å installere MariaDB eller PHP for dette prosjektet, kan du finne at de kommer til nytte for andre flotte Raspberry Pi-selvhostingsprosjekter. Det burde du også installer den nyeste Docker Compose-utgivelsen manuelt.

Koble nå til din Raspberry Pi ved hjelp av Secure Shell (SSH), og lag nye kataloger for Navidrome og dens data:

ssh pi@your-pi-local-ip-address
mkdir navidrome navidrome/data

Du trenger også en plassering for å lagre albumene dine. Dette kan være hvor som helst du vil, men vi anbefaler at du oppretter en ny katalog i hjemmekatalogen din:

mkdir music

På din lokale maskin åpner du en ny terminal og bruker Secure Copy for å kopiere musikken din til Raspberry Pi:

scp -r /path/to/your/music/folder/* pi@your-pi-local-ip-address:~/music/

På Pi SSH-tilkoblingen din, gå inn i Navidrome-katalogen og bruk nanotekstredigereren til å opprette og redigere en ny fil:

cd navidrome
nanodocker-compose.yml

Legg til følgende linjer:

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"

Lagre og avslutt nano med Ctrl + O deretter Ctrl +X.

Få frem Docker Compose i løsrevet modus med:

docker-compose up -d

Docker Compose vil laste ned bilder og sette opp Navidrome-beholdere. Når prosessen er ferdig, åpne en nettleser på din lokale maskin; i URL-linjen skriver du inn din-pi-lokale-ip-adresse: 4533.

Opprett en admin-brukerkonto ved å skrive inn et brukernavn og passord, og logg deretter på. Du bør umiddelbart se alle musikkalbumene dine.

Gjør din Navidrome-instans tilgjengelig på nettet

Besøk domeneregistratoren din og finn Avansert DNS delen for domenet ditt. Lage en ny EN rekord, innstilling av Vert til '@' og verdifeltet til din innenlandske IP-adresse. Sett Time to Lease-verdien (TTL) så lav som mulig.

Tilbake på Pi må du opprette en ny Apache-konfigurasjonsfil:

cd /etc/apache2/sites-available/
sudonanonavidrome.conf

I den nye filen limer du inn følgende linjer:

<VirtualHost *:80>

ServerNamemuo.lol
ProxyPass / http://127.0.0.1:4533/
ProxyPassReverse / http:/127.0.0.1:4533/
ProxyPreserveHost On

VirtualHost>

Du bør erstatte muo.lol med ditt eget domenenavn.

Lagre og avslutt nano med Ctrl + O deretter Ctrl +X, og bruk deretter Certbot til å skaffe og bruke TLS-sertifikater og nøkler for domenet ditt:

sudo certbot

Velg ditt domenenavn fra en liste og trykk Tast inn.

Du kan nå besøke Navidrome-forekomsten din i en nettleser ved å bruke domenenavnet ditt. Alle tilkoblinger vil bli oppgradert til HTTPS.

Navidrome-nettgrensesnittet

Navidrome-nettgrensesnittet er ganske intuitivt å bruke, og du finner hovedmenyen løpende nedover venstre side av skjermen. Hvis dette tar for mye plass, kan du skjule det ved å bruke hamburgerikonet rett ovenfor.

Ved å bruke denne menyen kan du bla gjennom album etter artist, sangtittel eller album. Du kan også bla gjennom favorittene dine, mest spilte, nylig spilte og nylig lagt til.

Hvis du ikke vet hva du vil høre på, kan du generere en tilfeldig spilleliste. Dessverre har ikke nettgrensesnittet et alternativ for å lage en umiddelbar blanding basert på et bestemt spor; men dette vil bli lagt til i en fremtidig utgivelse og funksjonen støttes i flere kompatible klienter.

Fra albumvisningen kan du spille av album, favoritt og rangere individuelle spor, og legge til musikk i spillelister eller i en kø for å spille av senere.

På høyre side av den blå linjen vil du se tre umerkede ikoner for ulike oppgaver. Den første vil oppdatere visningen, mens den andre vil gi deg ulike statistikker knyttet til Navidrome-forekomsten, inkludert oppetid og antall kataloger. Du vil også kunne utløse en rask eller fullstendig ny skanning av musikkbiblioteket ditt – dette kan ta lang tid hvis du har terabyte med musikk.

Det siste ikonet gjelder administrasjon, og inneholder undermenyer for å tilpasse din egen brukeropplevelse. Du vil også kunne legge til og slette brukere, og se en liste over nylig brukte klientenheter og programvare.

Legg til radiostasjoner til Navidrome

Selvfølgelig kan det å lytte til din egen kuraterte samling av musikalske mesterverk blekne etter en tid, og radio er en utmerket måte å oppdage ny musikk innenfor eller borte fra din foretrukne sjanger.

Mens det er enkelt å lytt til nettradio i nettleseren din, og du kan til og med bygge en berøringsskjerm Raspberry Pi internettradio, kan du også legge til radiostasjoner i Navidromes nettgrensesnitt – slik at radiostasjonene og musikksamlingen er samlet på ett sted.

For å legge til en radiostasjon til Navidrome, klikk Radioer, og legg til din første stasjon ved å gi stasjonen et navn. Angi nettadressen for strømming, og eventuelt URL-adressen til stasjonens hjemmeside. Klikk Lagre når du er glad. Du kan legge til så mange radiostasjoner du vil, og få tilgang til dem alle gjennom Radioer fanen.

Mobilapper for Navidrome

Mens nettgrensesnittet for Navidrome-forekomsten din er en progressiv nettapp og ser bra ut selv på mindre skjermer, er Navidrome kompatibel med alle Subsonic-klienter. Det er dusinvis av mulige apper du kan bruke – bare søk etter "subsonic" i favorittappbutikken din.

Navidrome gjør det enkelt å streame og administrere musikksamlingen din

Med en Navidrome-server på din Raspberry Pi kan du streame din egen musikk uansett hvor du er i verden. Men din Raspberry Pi er i stand til mye mer enn dette. Hvis du har en stor filmsamling og ikke vil stole på Netflix, Disney eller HBO, bør du vurdere å installere Jellyfin.