Musicbox

Start dit hoofdstuk met een nieuwe reservekopie van de Basisimage.

Natuurlijk kan je zelf voor muziek zorgen, maar wie wat testmateriaal nodig heeft, kan musicbox.zip downloaden.

Als je de gelukkige eigenaar van een Raspberry Pi bent, maak je toch gewoon je eigen streaming-audiosysteem? Je sluit je Pi eenvoudigweg op je luidsprekers en op het netwerk aan, waarna je het minicomputertje muziek van internet of van je lokale netwerk streamt. Je audiosysteem stuur je draadloos aan via je smartphone, tablet of browser.

Geluidsweergave testen en aanpassen

Na het aansluiten van de audio-uitgang op een versterker, hoofdtelefoon, monitor, bluetooth apparaat, enz., test je de geluidsweergave met de opdracht:

pi@raspberrypi:~ $ aplay /usr/share/sounds/alsa/Front_Center.wav
Playing WAVE '/usr/share/sounds/alsa/Front_Center.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono

De geluidsweergave werkt als je een stem Front Center hoort zeggen.

Misschien hoor je niets. Om de geluid te horen, moet je letten op:

  1. Indien de HDMI kabel of de monitor geen audio ondersteunt, zijn er twee oplossingen:
    • Verbind een audio-kabel van de 3,5 mm audio uitgang (niet aanwezig op Raspberry Pi 5) van de Raspberry Pi naar de actieve luidsprekers of een hoofdtelefoon.
    • Koppel een Bluetooth luidspreker of hoofdtelefoon met de Bluetooth knop rechts bovenaan het scherm aan de Raspberry Pi.
    • Gebruik een USB luidspreker.
  2. De juiste uitgang voor het geluid gebruikt wordt. Om gebruik te maken van Bluetooth luidsprekers, hoofdtelefoons of oortjes, volg je de volgende koppelprocedure.
    1. Zorg dat je Bluetooth apparaat niet gekoppeld is, aan een ander apparaat (smartphone, enz.).
    2. Activeer het Bluetooth menu in het systeemvak en start de opdracht Add Device....
    3. Zorg dat je Bluetooth apparaat zichtbaar is voor de Raspberry Pi.
    4. Selecteer uw Bluetooth apparaat en klik op de knop Pair.
    5. Bevestig het succcesvol koppelen van de Raspberry Pi met jouw Bluetooth apparaat.
  3. Daarna kan je de uitgang voor het geluid instellen door rechts te klikken op het luidspreker knopje in het systeemvak.

    Bluetooth LS
  4. Het volume van de luidsprekers luid genoeg staat.
  5. Het volume van Raspberry Pi OS luid genoeg staat. Je kunt het volume aanpassen met het luidsprekerknopje in het systeemvak, maar ook met de terminal opdracht alsamixer.

Mopidy

Om een MusicBox te maken, gebruiken we Mopidy, een uitbreidbare muziek server geschreven in Python. Standaard speelt Modipy muziek vanaf een lokale schijf of radio streams, via uitbreidingen heeft Modify toegang tot Spotify, SoundCloud, Google Play Music, enz. Je kunt de afspeellijst aanpassen vanaf een smartphone, tablet of computer met behulp van MPD- en web clients.

Mopidy is een Python applicatie die in de opdrachtregel (terminal) of in de achtergrond werkt op Linux en MacOS die met een netwerk verbonden zijn en een audio-uitgang hebben. Strikt gezien is Mopidy een MPD en HTTP server. Extra bedieningsmogelijkheden kunnen via extensies toegevoegd worden.

Modipy's uitbreidingen ondersteunen Python, JSON-RPC en JavaScript-API's waardoor Mopidy geschikt is om eigen projecten mee te bouwen.

Mopidy installatie

Zoals altijd zorgen we dat het besturingssysteem up to date is.

pi@raspberrypi:~ $ sudo apt update && sudo apt upgrade -y
Geraakt:1 http://deb.debian.org/debian bookworm InRelease
Geraakt:2 http://deb.debian.org/debian-security bookworm-security InRelease
Geraakt:3 http://deb.debian.org/debian bookworm-updates InRelease
Geraakt:4 http://archive.raspberrypi.com/debian bookworm InRelease                 
Pakketlijsten worden ingelezen... Klaar                                            
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar 
Alle pakketten zijn up-to-date.
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar 
Opwaardering wordt doorgerekend... Klaar
De volgende pakketten zijn automatisch geïnstalleerd en zijn niet langer nodig:
  linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8
  linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-kbuild-6.6.20+rpt
Gebruik 'sudo apt autoremove' om ze te verwijderen.
0 opgewaardeerd, 0 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.

En installeren we Mopidy:

pi@raspberrypi:~ $ sudo apt install mopidy
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar 
De volgende pakketten zijn automatisch geïnstalleerd en zijn niet langer nodig:
  linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8
  linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-kbuild-6.6.20+rpt
Gebruik 'sudo apt autoremove' om ze te verwijderen.
De volgende extra pakketten zullen geïnstalleerd worden:
  fonts-font-awesome fonts-lato gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0 gstreamer1.0-plugins-ugly
  gstreamer1.0-pulseaudio gstreamer1.0-tools libopencore-amrnb0 libopencore-amrwb0 libsidplay1v5 python3-gst-1.0
  python3-pykka python3-tornado sphinx-rtd-theme-common
Voorgestelde pakketten:
  sidplay-base mopidy-doc python3-pycurl python-tornado-doc python3-twisted
De volgende NIEUWE pakketten zullen geïnstalleerd worden:
  fonts-font-awesome fonts-lato gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0 gstreamer1.0-plugins-ugly
  gstreamer1.0-pulseaudio gstreamer1.0-tools libopencore-amrnb0 libopencore-amrwb0 libsidplay1v5 mopidy
  python3-gst-1.0 python3-pykka python3-tornado sphinx-rtd-theme-common
0 opgewaardeerd, 15 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.
Er moeten 5.549 kB aan archieven opgehaald worden.
Na deze bewerking zal er 21,1 MB extra schijfruimte gebruikt worden.
Wilt u doorgaan? [J/n] 
Ophalen:1 http://deb.debian.org/debian bookworm/main arm64 fonts-lato all 2.0-2.1 [2.696 kB]
Ophalen:2 http://archive.raspberrypi.com/debian bookworm/main arm64 gstreamer1.0-pulseaudio arm64 1.22.0-5+rpt1+deb12u1 [71,9 kB]
Ophalen:3 http://deb.debian.org/debian bookworm/main arm64 fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [517 kB]
...
Ophalen:13 http://deb.debian.org/debian bookworm/main arm64 sphinx-rtd-theme-common all 1.2.0+dfsg-1 [997 kB]
Ophalen:14 http://deb.debian.org/debian bookworm/main arm64 python3-pykka all 3.1.1-1 [71,1 kB]
Ophalen:15 http://deb.debian.org/debian bookworm/main arm64 mopidy all 3.4.1-1 [103 kB]
5.549 kB opgehaald in 1s (9.500 kB/s)
Voorconfigureren van pakketten ...
Voorheen niet geselecteerd pakket fonts-lato wordt geselecteerd.
(Database wordt ingelezen ... 167489 bestanden en mappen momenteel geïnstalleerd.)
Uitpakken van .../00-fonts-lato_2.0-2.1_all.deb wordt voorbereid...
Bezig met uitpakken van fonts-lato (2.0-2.1) ...
...
Voorheen niet geselecteerd pakket mopidy wordt geselecteerd.
Uitpakken van .../14-mopidy_3.4.1-1_all.deb wordt voorbereid...
Bezig met uitpakken van mopidy (3.4.1-1) ...
Instellen van python3-tornado (6.2.0-3) ...
Instellen van gir1.2-gstreamer-1.0:arm64 (1.22.0-2) ...
Instellen van fonts-lato (2.0-2.1) ...
...
Instellen van python3-gst-1.0 (1.22.0-2) ...
Instellen van python3-pykka (3.1.1-1) ...
Instellen van mopidy (3.4.1-1) ...
Bezig met afhandelen van triggers voor fontconfig (2.14.1-4) ...
Bezig met afhandelen van triggers voor desktop-file-utils (0.26-1) ...
Bezig met afhandelen van triggers voor gnome-menus (3.36.0-1.1) ...
Bezig met afhandelen van triggers voor libc-bin (2.36-9+rpt2+deb12u7) ...
Bezig met afhandelen van triggers voor man-db (2.11.2-2) ...
Bezig met afhandelen van triggers voor mailcap (3.70+nmu1) ...

Mopidy MusicBox Webclient

Aangezien Mopidy enkel een server is, hebben we nog een client nodig om de server te bedienen, m.a.w. muziek af te kunnen spelen. Uit de vele clients installeren we de populaire Mopidy-MusicBox-Webclient:

pi@raspberrypi:~ $ pip3 install Mopidy-MusicBox-Webclient --break-system-packages
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting Mopidy-MusicBox-Webclient
  Downloading https://www.piwheels.org/simple/mopidy-musicbox-webclient/Mopidy_MusicBox_Webclient-3.1.0-py3-none-any.whl (1.4 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 595.6 kB/s eta 0:00:00
Requirement already satisfied: Mopidy>=3.0.0 in /usr/lib/python3/dist-packages (from Mopidy-MusicBox-Webclient) (3.4.1)
Requirement already satisfied: Pykka>=2.0.1 in /usr/lib/python3/dist-packages (from Mopidy-MusicBox-Webclient) (3.1.1)
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from Mopidy-MusicBox-Webclient) (66.1.1)
Installing collected packages: Mopidy-MusicBox-Webclient
Successfully installed Mopidy-MusicBox-Webclient-3.1.0

Mopidy starten en stoppen

Start Mopidy:

pi@raspberrypi:~ $ mopidy &
[1] 2989
pi@raspberrypi:~ $ INFO     2024-06-05 16:27:55,627 [2989:MainThread] mopidy.__main__
  Starting Mopidy 3.4.1
INFO     2024-06-05 16:27:55,683 [2989:MainThread] mopidy.config
  Loading config from builtin defaults
INFO     2024-06-05 16:27:55,684 [2989:MainThread] mopidy.config
  Loading config from command line options
INFO     2024-06-05 16:27:55,688 [2989:MainThread] mopidy.internal.path
  Creating dir file:///home/pi/.cache/mopidy
INFO     2024-06-05 16:27:55,689 [2989:MainThread] mopidy.internal.path
  Creating dir file:///home/pi/.config/mopidy
INFO     2024-06-05 16:27:55,689 [2989:MainThread] mopidy.internal.path
  Creating dir file:///home/pi/.local/share/mopidy
INFO     2024-06-05 16:27:55,689 [2989:MainThread] mopidy.config
  Loading config from builtin defaults
INFO     2024-06-05 16:27:55,690 [2989:MainThread] mopidy.config
  Loading config from command line options
INFO     2024-06-05 16:27:55,693 [2989:MainThread] mopidy.internal.path
  Creating file file:///home/pi/.config/mopidy/mopidy.conf
INFO     2024-06-05 16:27:55,693 [2989:MainThread] mopidy.__main__
  Initialized file:///home/pi/.config/mopidy/mopidy.conf with default config
INFO     2024-06-05 16:27:55,892 [2989:MainThread] mopidy.__main__
  Enabled extensions: file, softwaremixer, http, m3u, stream, musicbox_webclient
INFO     2024-06-05 16:27:55,892 [2989:MainThread] mopidy.__main__
  Disabled extensions: none
INFO     2024-06-05 16:27:56,250 [2989:MainThread] mopidy.commands
  Starting Mopidy mixer: SoftwareMixer
INFO     2024-06-05 16:27:56,251 [2989:MainThread] mopidy.commands
  Starting Mopidy audio
INFO     2024-06-05 16:27:56,252 [2989:MainThread] mopidy.commands
  Starting Mopidy backends: FileBackend, M3UBackend, StreamBackend
INFO     2024-06-05 16:27:56,256 [2989:MainThread] mopidy.internal.path
  Creating dir file:///home/pi/.local/share/mopidy/m3u
INFO     2024-06-05 16:27:56,260 [2989:Audio-2 (_actor_loop)] mopidy.audio.actor
  Audio output set to "autoaudiosink"
INFO     2024-06-05 16:27:56,265 [2989:MainThread] mopidy.commands
  Starting Mopidy core
INFO     2024-06-05 16:27:56,270 [2989:MainThread] mopidy.commands
  Starting Mopidy frontends: HttpFrontend
INFO     2024-06-05 16:27:56,271 [2989:HttpFrontend-8 (_actor_loop)] mopidy.http.actor
  HTTP server running at [::ffff:127.0.0.1]:6680
INFO     2024-06-05 16:27:56,271 [2989:MainThread] mopidy.commands
  Starting GLib mainloop
INFO     2024-06-05 16:27:56,274 [2989:HttpServer] mopidy.internal.path
  Creating dir file:///home/pi/.local/share/mopidy/http
^C

Het &-teken na de mopidy opdracht zorgt ervoor dat mopidy op de achtergrond als server start, waardoor we verder opdrachten kunnen intypen en uitvoeren. Merk op dat de prompt verschijnt voor mopidy klaar is met het op het scherm plaatsen van informatie. Als je daar niet op let, kan je denken dat de terminal nog niet klaar is om een volgende opdracht te ontvangen. Druk Ctrl+c (^C in de voorbeeld hierboven) om de prompt terug weer te geven.

Mopidy stop je met de volgende opdracht:

pi@raspberrypi:~ $ pkill -f mopidy
INFO     2024-06-05 16:32:19,761 [2989:MainThread] mopidy.commands
  GLib mainloop got SIGTERM. Exiting...
pi@raspberrypi:~ $ INFO     2024-06-05 16:32:19,762 [2989:MainThread] mopidy.commands
  Stopping Mopidy frontends
INFO     2024-06-05 16:32:19,764 [2989:MainThread] mopidy.commands
  Stopping Mopidy core
INFO     2024-06-05 16:32:19,765 [2989:MainThread] mopidy.commands
  Stopping Mopidy backends
INFO     2024-06-05 16:32:19,766 [2989:MainThread] mopidy.commands
  Stopping Mopidy audio
INFO     2024-06-05 16:32:19,767 [2989:MainThread] mopidy.commands
  Stopping Mopidy mixer
^C
[1]+  Klaar                   mopidy

Lokale muziek afspelen

Zorg op de Raspberry Pi voor muziek in de Music map. Bijvoorbeeld door musicbox.zip te downloaden en uit te pakken. Verplaats de vier mappen met muziek na het uitpakken naar de Music map. Telkens je nieuwe muziek aan jouw muziekmap hebt toegevoegd, moet je Mopidy daarvan op de hoogte brengen.

Opnieuw installeren we daarvoor een Mopidy uitbreiding, maar deze keer is de uitbreiding aanwezig in de softwarebron van Raspberry Pi OS en kunnen we apt gebruiken. Geef steeds de voorkeur aan door Raspberry Pi OS aangeboden software, deze wordt namelijk samen met het systeem bijgewerkt en soms geoptimaliseerd voor de Raspberry Pi.

pi@raspberrypi:~ $ sudo apt install mopidy-local
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd... Klaar
De statusinformatie wordt gelezen... Klaar 
De volgende pakketten zijn automatisch geïnstalleerd en zijn niet langer nodig:
  linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8
  linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-kbuild-6.6.20+rpt
Gebruik 'sudo apt autoremove' om ze te verwijderen.
De volgende extra pakketten zullen geïnstalleerd worden:
  python3-uritools
De volgende NIEUWE pakketten zullen geïnstalleerd worden:
  mopidy-local python3-uritools
0 opgewaardeerd, 2 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.
Er moeten 47,7 kB aan archieven opgehaald worden.
Na deze bewerking zal er 269 kB extra schijfruimte gebruikt worden.
Wilt u doorgaan? [J/n] 
Ophalen:1 http://deb.debian.org/debian bookworm/main arm64 python3-uritools all 4.0.0-1 [25,3 kB]
Ophalen:2 http://deb.debian.org/debian bookworm/main arm64 mopidy-local all 3.2.1-1 [22,4 kB]
47,7 kB opgehaald in 0s (1.111 kB/s)    
Voorheen niet geselecteerd pakket python3-uritools wordt geselecteerd.
(Database wordt ingelezen ... 168212 bestanden en mappen momenteel geïnstalleerd.)
Uitpakken van .../python3-uritools_4.0.0-1_all.deb wordt voorbereid...
Bezig met uitpakken van python3-uritools (4.0.0-1) ...
Voorheen niet geselecteerd pakket mopidy-local wordt geselecteerd.
Uitpakken van .../mopidy-local_3.2.1-1_all.deb wordt voorbereid...
Bezig met uitpakken van mopidy-local (3.2.1-1) ...
Instellen van python3-uritools (4.0.0-1) ...
Instellen van mopidy-local (3.2.1-1) ...

Eerst kijken we welke muziek er bij kwam:

pi@raspberrypi:~ $ mopidy local scan
INFO     2024-06-05 16:47:48,279 [3639:MainThread] mopidy.__main__
  Starting Mopidy 3.4.1
INFO     2024-06-05 16:47:48,329 [3639:MainThread] mopidy.config
  Loading config from builtin defaults
INFO     2024-06-05 16:47:48,330 [3639:MainThread] mopidy.config
  Loading config from file:///home/pi/.config/mopidy/mopidy.conf
INFO     2024-06-05 16:47:48,331 [3639:MainThread] mopidy.config
  Loading config from command line options
INFO     2024-06-05 16:47:48,483 [3639:MainThread] mopidy.__main__
  Enabled extensions: http, stream, m3u, local, softwaremixer, musicbox_webclient, file
INFO     2024-06-05 16:47:48,484 [3639:MainThread] mopidy.__main__
  Disabled extensions: none
INFO     2024-06-05 16:47:48,552 [3639:MainThread] mopidy.internal.path
  Creating dir file:///home/pi/.local/share/mopidy/local
INFO     2024-06-05 16:47:48,552 [3639:MainThread] mopidy_local.commands
  Finding files in file:///home/pi/Music ...
INFO     2024-06-05 16:47:48,588 [3639:MainThread] mopidy_local.commands
  Found 42 files in file:///home/pi/Music
INFO     2024-06-05 16:47:48,589 [3639:MainThread] mopidy_local.schema
  Creating SQLite database schema v7
INFO     2024-06-05 16:47:48,656 [3639:MainThread] mopidy_local.commands
  Checking 0 tracks from library
INFO     2024-06-05 16:47:48,657 [3639:MainThread] mopidy_local.commands
  Removing 0 missing tracks
INFO     2024-06-05 16:47:48,658 [3639:MainThread] mopidy_local.commands
  Found 34 tracks which need to be updated
INFO     2024-06-05 16:47:48,659 [3639:MainThread] mopidy_local.commands
  Scanning...
INFO     2024-06-05 16:47:48,686 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/137aabfbce939e8a2e5923a5ccd3af05-400x400.jpeg
INFO     2024-06-05 16:47:48,687 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/1d53721aa6f2bf45dc8002409e75ea3b-460x460.jpeg
WARNING  2024-06-05 16:47:48,980 [3639:MainThread] mopidy_local.commands
  Failed scanning file:///home/pi/Music/Danielle%20Helena%20-%20Like%20Sunrise%20-%20158365%20---%20Jamendo%20-%20MP3/playlist.m3u: gst-stream-error-quark: This appears to be a text file (5)
INFO     2024-06-05 16:47:48,996 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/94f2c130d9353ad4d93dc6119b1722de-400x400.jpeg
INFO     2024-06-05 16:47:48,996 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/8e74551994342dde3778e72263b6989b-600x600.jpeg
WARNING  2024-06-05 16:47:49,101 [3639:MainThread] mopidy_local.commands
  Failed scanning file:///home/pi/Music/Oleg%20Fokin%20-%20JAZZZ%20-%20159770%20---%20Jamendo%20-%20MP3/playlist.m3u: gst-stream-error-quark: This appears to be a text file (5)
INFO     2024-06-05 16:47:49,113 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/0197d2906af9de072acf865a87596030-400x400.jpeg
INFO     2024-06-05 16:47:49,114 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/9d1a645427c5070bbc715ad080446142-1200x1078.jpeg
WARNING  2024-06-05 16:47:49,221 [3639:MainThread] mopidy_local.commands
  Failed scanning file:///home/pi/Music/Pascalb%20_%20Pascal%20Boiseau%20-%20Dans%20le%20vent%20-%20160174%20---%20Jamendo%20-%20MP3/playlist.m3u: gst-stream-error-quark: This appears to be a text file (5)
INFO     2024-06-05 16:47:49,233 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/a35baf389a50d2f1bc86372f8d16ffb1-400x400.jpeg
INFO     2024-06-05 16:47:49,234 [3639:MainThread] mopidy_local.storage
  Creating file file:///home/pi/.local/share/mopidy/local/images/3139df363b2d77b5cf3f24600857af20-600x600.jpeg
WARNING  2024-06-05 16:47:49,281 [3639:MainThread] mopidy_local.commands
  Failed scanning file:///home/pi/Music/Re-Lab%20-%20J.S.Bach_%20BWV584%20-%20159624%20---%20Jamendo%20-%20MP3/playlist.m3u: gst-stream-error-quark: This appears to be a text file (5)
INFO     2024-06-05 16:47:49,281 [3639:MainThread] mopidy_local.commands
  Scanned 34 of 34 files in 0.622s.
INFO     2024-06-05 16:47:49,281 [3639:MainThread] mopidy_local.commands
  Done scanning
INFO     2024-06-05 16:47:49,341 [3639:MainThread] mopidy_local.storage
  Cleaning up image directory

Tijdens het scannen werden enkele tekstbestanden gevonden, dit zijn uiteraard geen muziekbestanden, waardoor de modipy scanner deze niet kan verwerken en je daarvan op hoogte brengt. Om de scanresultaten of andere veranderingen aan Mopidy door te geven, herstart je Mopidy. Daar Mopidy reeds gestopt was, start je Mopidy terug op.

Mopidy bedienen

Radio 1 Radio 2 Antwerpen Radio 2 Limburg Radio 2 Oost-Vlaanderen Radio 2 Vlaams Brabant Radio 2 West-Vlaanderen Klara Klara continuo Studio Brussel MNM MNM Hits Ketnet Hits NWS

Zorg voor grafische toegang tot uw Raspberry Pi (VNC of scherm, toetsenbord en muis). Start de browser en surf naar http://localhost:6680. Klik op de koppeling naar de musicbox_webclient.

Lokale muziek speel je af door ernaar te bladeren (Browse > Local media). Open een muziekmap en klik op een song om deze af te spelen. Na het beëindigen van de song wordt de volgende song afgespeeld.

Internetradio en andere streams beluister je via de knop Streams. In het tekstvak URI typ je het URI-adres van het te beluisteren station, voor Radio Swiss Jazz: http://stream.srg-ssr.ch/m/rsj/mp3_128. In het tekstvak Name typ je de naam van het station. Klik op Play om het station te beluisteren. Informatie over de muziek verschijnt in de balk onderaan het scherm. Sla het station met bijhorende URI op in Mopidy met de knop Save.

Radio URL's kan je achterhalen op de websites van de betreffende radio's of via verzamelsites zoals radio-browser.info.

Met Fullscreen maak je van je Raspberry Pi een echte MusicBox. Waarop een volumeregelaar niet ontbreekt.

MusicBox Streams

Mopidy configureren

Je kunt de huidige configuratie opvragen met:

pi@raspberrypi:~ $ mopidy config
[core]
cache_dir = $XDG_CACHE_DIR/mopidy
config_dir = $XDG_CONFIG_DIR/mopidy
data_dir = $XDG_DATA_DIR/mopidy
max_tracklist_length = 10000
restore_state = false

[logging]
verbosity = 0
format = %(levelname)-8s %(asctime)s [%(process)d:%(threadName)s] %(name)s\n  %(message)s
color = true
config_file = 

[audio]
mixer = software
mixer_volume = 
output = autoaudiosink
buffer_time = 

[proxy]
scheme = 
hostname = 
port = 
username = 
password = 

[musicbox_webclient]
enabled = true
musicbox = false
websocket_host = 
websocket_port = 
on_track_click = PLAY_ALL

[file]
enabled = true
media_dirs = 
  $XDG_MUSIC_DIR|Music
  ~/|Home
excluded_file_extensions = 
  .directory
  .html
  .jpeg
  .jpg
  .log
  .nfo
  .pdf
  .png
  .txt
  .zip
show_dotfiles = false
follow_symlinks = false
metadata_timeout = 1000

[http]
enabled = true
hostname = 127.0.0.1
port = 6680
zeroconf = Mopidy HTTP server on $hostname
allowed_origins = 
csrf_protection = true
default_app = mopidy

[m3u]
enabled = true
base_dir = $XDG_MUSIC_DIR
default_encoding = latin-1
default_extension = .m3u8
playlists_dir = 

[softwaremixer]
enabled = true

[stream]
enabled = true
protocols = 
  http
  https
  mms
  rtmp
  rtmps
  rtsp
metadata_blacklist = 
timeout = 5000

[local]
enabled = true
max_search_results = 100
media_dir = $XDG_MUSIC_DIR
scan_timeout = 1000
scan_flush_threshold = 100
scan_follow_symlinks = false
included_file_extensions = 
excluded_file_extensions = 
  .cue
  .directory
  .html
  .jpeg
  .jpg
  .log
  .nfo
  .pdf
  .png
  .txt
  .zip
directories = 
  Albums                  local:directory?type=album
  Artists                 local:directory?type=artist
  Composers               local:directory?type=artist&role=composer
  Genres                  local:directory?type=genre
  Performers              local:directory?type=artist&role=performer
  Release Years           local:directory?type=date&format=%25Y
  Tracks                  local:directory?type=track
  Last Week's Updates     local:directory?max-age=604800
  Last Month's Updates    local:directory?max-age=2592000
timeout = 10
use_artist_sortname = false
album_art_files = 
  *.jpg
  *.jpeg
  *.png

Eigenlijk zou het wel handig zijn om Mopidy vanaf elke computer, laptop, tablet of smartphone te bedienen. Standaard kan je Mopidy enkel vanaf de Raspberry Pi bedienen, dit is veiliger, maar niet zo gebruiksvriendelijk. Daarvoor moeten we zelf een configuratiebestand aanmaken met eigen voorkeuren. Dit configuratiebestand moet in de map ~/.config/mopidy staan. Het ~ teken staat voor de gebruikersmap (verkorte notatie). De Mopidy configuratiemap maak je met:

pi@raspberrypi:~ $ mkdir ~/.config/mopidy
mkdir: kan map ‘/home/pi/.config/mopidy’ niet aanmaken: Bestand bestaat al

De opdracht meldt dat de map reeds bestaat. Lees steeds de uitvoer van opdrachten, meestal wordt enkel getoond wat uw aandacht verdiend. Nu we weten dat configuratiemap reeds bestaat kunnen we het configuratiebestand aanmaken of aanpassen met:

pi@raspberrypi:~ $ nano -B ~/.config/mopidy/mopidy.conf

In de sectie [http] staat de optie hostname. Schakel deze optie in door het # voor de regel te verwijderen. De optie hostname kan de volgende waarden hebben:

Mopidy browser
127.0.0.1
Ook wel localhost of loopback genoemd. Je hebt enkel toegang vanaf de Raspberry Pi zelf. De veiligste instelling en dus standaard.
::1
Localhost voor IPv6. Dus terug enkel toegang vanaf de Raspberry Pi zelf.
0.0.0.0
Toegang vanaf alle IPv4 adressen.
::
Toegang vanaf alle IPv4 en IPv6 adressen.

Na het herstarten van Mopidy kan je vanaf elke computer naar Mopidy op de Raspberry Pi surfen.

Praktijk opdracht
  1. Daar de bediening van Mopidy via een webspeler uitbreiding loopt, kan je deze eenvoudig aanpassen door een andere webspeler te installeren.
    1. Installeer op dezelfde manier als de Mopidy-MusicBox-Webclient de Mopidy-Iris uitbreiding.
      pi@raspberrypi:~ $ pip3 install Mopidy-Iris --break-system-packages
          Defaulting to user installation because normal site-packages is not writeable
      Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
      Collecting Mopidy-Iris
        Downloading https://www.piwheels.org/simple/mopidy-iris/Mopidy_Iris-3.69.3-py3-none-any.whl (7.0 MB)
           ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.0/7.0 MB 1.3 MB/s eta 0:00:00
      Requirement already satisfied: Mopidy>=3.0 in /usr/lib/python3/dist-packages (from Mopidy-Iris) (3.4.1)
      Requirement already satisfied: Pykka>=2.0.1 in /usr/lib/python3/dist-packages (from Mopidy-Iris) (3.1.1)
      Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from Mopidy-Iris) (66.1.1)
      Installing collected packages: Mopidy-Iris
      Successfully installed Mopidy-Iris-3.69.3
      
    2. Test na het herstarten van Mopidy de nieuwe webspeler.
      Mopidy Iris
    3. Maak het browservenster smaller om te testen of deze webspeler ook goed op een smartphone kan gebruikt worden.
  2. Radio luisteren met TuneIn:
    1. Installeer de Mopidy-TuneIn uitbreiding.
      pi@raspberrypi:~ $ sudo apt install mopidy-tunein
      Pakketlijsten worden ingelezen... Klaar
      Boom van vereisten wordt opgebouwd... Klaar
      De statusinformatie wordt gelezen... Klaar 
      De volgende pakketten zijn automatisch geïnstalleerd en zijn niet langer nodig:
        linux-headers-6.6.20+rpt-common-rpi linux-headers-6.6.20+rpt-rpi-2712 linux-headers-6.6.20+rpt-rpi-v8
        linux-image-6.6.20+rpt-rpi-2712 linux-image-6.6.20+rpt-rpi-v8 linux-kbuild-6.6.20+rpt
      Gebruik 'sudo apt autoremove' om ze te verwijderen.
      De volgende NIEUWE pakketten zullen geïnstalleerd worden:
        mopidy-tunein
      0 opgewaardeerd, 1 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.
      Er moeten 11,8 kB aan archieven opgehaald worden.
      Na deze bewerking zal er 58,4 kB extra schijfruimte gebruikt worden.
      Ophalen:1 http://deb.debian.org/debian bookworm/main arm64 mopidy-tunein all 1.1.0-1 [11,8 kB]
      11,8 kB opgehaald in 0s (425 kB/s) 
      Voorheen niet geselecteerd pakket mopidy-tunein wordt geselecteerd.
      (Database wordt ingelezen ... 168283 bestanden en mappen momenteel geïnstalleerd.)
      Uitpakken van .../mopidy-tunein_1.1.0-1_all.deb wordt voorbereid...
      Bezig met uitpakken van mopidy-tunein (1.1.0-1) ...
      Instellen van mopidy-tunein (1.1.0-1) ...
    2. Zorg dat Mopidy de Mopidy-TuneIn uitbreiding gebruikt.
    3. Als je TuneIn test, wees dan geduldig, sommige zenders zijn soms overbelast en reageren dan zeer traag. Luister voor de test naar een Lokale zender (Browse > TuneIn > By Location > Europe > Belgium > Bruges) zoals Joe België, deze reageren namelijk een stuk sneller.
      Mopidy TuneIn
    4. Voor een overzicht van alle Mopidy uitbreidingen kan je terecht op M Extensions.
  3. Nu Mopidy goed werkt, kunnen we dit bij het starten van de Raspberry Pi automatisch laten uitvoeren.
    1. Dit doen we door in de verborgen configuratiemap een autostart map aan te maken:
      pi@raspberrypi:~ $ mkdir .config/autostart
    2. Alle in deze map geplaatste startbestanden (.desktop bestanden) worden automatisch bij het opstarten van de Raspberry Pi uitgevoerd. Het autostart mopidy.desktop bestand maken we aan met nano:
      pi@raspberrypi:~ $ nano -B .config/autostart/mopidy.desktop
    3. Met de volgende inhoud:
      [Desktop Entry]
      Type=Application
      Exec=/usr/bin/mopidy
      
    4. Herstart de Raspberry Pi en controleer of Mopidy nu automatisch opstart.
  4. Android gebruikers hebben de app Mopidy Mobile. Dit is eigenlijk een webpagina in een app. iOS gebruikers kunnen dezelfde interface krijgen door de Mopidy-Mobile uitbreiding in Mopidy te installeren. Met deze uitbreiding surf je dan naar de Raspberry Pi met Mopidy en door Een bladwijzer voor een website toevoegen in Safari op de iPhone. Deze methode werkt ook op Android apparaten.
    pi@raspberrypi:~ $ pip3 install Mopidy-Mobile --break-system-packages
      Defaulting to user installation because normal site-packages is not writeable
    Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
    Collecting Mopidy-Mobile
      Downloading https://www.piwheels.org/simple/mopidy-mobile/Mopidy_Mobile-1.10.0-py2.py3-none-any.whl (749 kB)
         ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 750.0/750.0 kB 472.9 kB/s eta 0:00:00
    Requirement already satisfied: Mopidy>=0.19 in /usr/lib/python3/dist-packages (from Mopidy-Mobile) (3.4.1)
    Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from Mopidy-Mobile) (66.1.1)
    Installing collected packages: Mopidy-Mobile
    Successfully installed Mopidy-Mobile-1.10.0
    
    Mopidy Mobile
  5. Wie nog verder wil gaan, kan meer informatie en handleidingen vinden op de website van Mopidy. Mopidy kan je verder nog combineren met andere software om bijvoorbeeld een Multi-room (Snapcast, Shoutcast) systeem te bouwen.
  6. Een andere aanpak zien we bij Volumio Audiophile Music Player. Deze Audio speler bestaat uit een volledig besturingssysteem met de nodige software. Het voordeel is duidelijk, sneller van start gaan. Maar heeft ook nadelen, namelijk afhankelijkheid van de producent en minder vrijheid om deze speler te combineren met andere projecten.
    1. Om het meest recente Volumio besturingssysteem op de SD kaart te schrijven, gebruik je Raspberry Pi Imager:
      1. Selecteer met de knop jouw Raspberry Pi type.
      2. Klik op de knop .
      3. Scroll naar en klik op de categorie Media player OS.
      4. Klik op de subcategorie Volumio.
      5. Klik op het item Volumio (The Audiophile Music Player and Streamer).
      6. Klik op de knop en klik op het item met jouw SD kaart.
      7. Klik op de knop .
      8. Klik in het dialoogvenster OS aanpassen op . Deze mogelijkheid is enkel te gebruiken voor besturingssystemen op basis van Raspberry Pi OS.
      9. Lees de waarschuwing en klik op de knop om het Volumio OS besturingssysteem op de SD kaart te schrijven.
    2. Verwijder de SD-kaart veilig uit de computer.
    3. Start de Raspberry Pi met de Volumio SD-kaart.
    4. De eenvoudigste manier om Volumio in het netwerk op te nemen, is een netwerkkabel aansluiten. Indien Volumio opstart zonder netwerkkabel, maakt Volumio een Wireless Acces Point aan. Om Volumio te configureren, moet je dus eerst jouw computer koppelen aan het Volumio WiFi Station. Het Volumio WiFi Station gebruikt geen wachtwoord.
      Volumio WAP
    5. Volumio configureer en bedien je via een webpagina. We kunnen die bereiken via de standaard hostname volumio.local (of kortweg volumio) of het IP adres van de Raspberry Pi.
    6. Surf naar jouw Volumio Player.
      Volumio configuratie
    7. Selecteer en bevestig jouw taalkeuze.
    8. Inloggen met een account is enkel nodig voor extra diensten, voor de oefening mag je klikken.
    9. Kies een unieke netwerknaam voor de Volumio speler.
    10. Controleer en pas indien nodig de Audio Uitvoer aan. Een bluetooth luidspreker koppelen is bij mijn weten niet mogelijk, ook niet met plugins. Mocht Volumio draaien op het Raspberry Pi OS besturingssysteem, hadden we misschien zelf een oplossing kunnen zoeken en vinden.
    11. Koppel indien je geen netwerkkabel gebruikt de Volumio speler aan jouw eigen WiFi Netwerk.
    12. De muziek gaan we straks via een USB Stick aanbieden. Het scheiden van het systeem met de software (Volumio) en de gebruikersgegevens (de muziek) is een gekende methode om het onderhoud van zowel het systeem en de muziekbibliotheek te vereenvoudigen. Daarenboven kunnen zo verschillende gezinsleden elk hun eigen muziekverzameling eenvoudig aanbieden.
    13. Schakel de automatische updates in en klik .
    14. Accepteer na het lezen en akkoord gaan de algemene voorwaarden.
    15. Plaats op een USB Stick muziek (bijvoorbeeld de 4 mappen uit musicbox.zip).
    16. Verwijder de USB Stick veilig en sluit deze aan op de Volumio Player.
    17. Speel via de knop Bladeren > Muziekbibliotheek een lied van de USB Stick af.
    18. Verken de Volumio Speler en bepaal hoe je het volume (knop Zones en uitgangen) kunt regelen en een lied aan een afspeellijst kunt toevoegen. Om alle mogelijkheden van Volumio te ontdekken, raadpleeg je best de handleiding.
      Volumio
    19. Luister naar jouw favoriete VRT radiozender.
    20. Laat Volumio naar Media Servers in het netwerk scannen. Luister indien aanwezig naar de muziek die door gevonden Media Servers wordt aangeboden.
    21. De Volumio Speler kan ook bediend worden via een Android of iOS app.
      Volumio app
    22. Sluit de Volumio Player en de Raspberry Pi af via de webpagina. De handleiding van Volumio vermeld nergens hoe je het standaard wachtwoord kunt aanpassen. Dit is op zich een veiligheidsprobleem, hoewel dit in een veilig thuisnetwerk wel beperkt is.
  7. De moOde audio player gebruikt standaard Raspberry Pi OS, maar biedt de software aan in een kant en klaar image bestand. Ook deze keer kunnen we snel van start gaan. En kunnen we daarenboven de moOde speler combineren met andere projecten, want de basis is Raspberry Pi OS.
    1. Om het meest recente moOde besturingssysteem op de SD kaart te schrijven, gebruik je Raspberry Pi Imager:
      1. Selecteer met de knop jouw Raspberry Pi type.
      2. Klik op de knop .
      3. Scroll naar en klik op de categorie Media player OS.
      4. Klik op de subcategorie moOde audio player.
      5. Klik op het item moOde audio player 9.0.1 (64-bit Bookworm).
      6. Klik op de knop en klik op het item met jouw SD kaart.
      7. Klik op de knop .
      8. Aangezien moOdle gebaseerd is op Rapberry Pi OS kunnen we moOde nu reeds configureren. Klik op de knop AANPASSEN om het dialoogvenster OS aanpassen te openen.
      9. Geef jouw moOde een passende hostnaam. In de cursus gebruiken we de standaard hostnaam moode.local door het vinkje niet te activeren.
      10. Maak een gebruiker aan met:
        • Een Gebruikersnaam: in de cursus gebruiken we pi.
        • En een bijhorend Wachtwoord: zorg dat je dit wachtwoord straks nog weet, schrijf het desnoods op.
      11. Indien je geen netwerkkabel gebruikt, activeer je de optie Wifi instellen en vul je de SSID (WiFi naam), bijhorende Wachtwoord en Wifi land in.
      12. Activeer de optie Regio instellingen en vul de Tijdzone in waarin je woont. Selecteer de door jouw gebruikte Toetsenbord indeling.
      13. Activeer op het tabblad SERVICES de optie SSH inschakelen en zorg dat SSH gebruik maakt van wachtwoord authentificatie.
      14. Klik op de knop .
      15. Klik op de knop .
      16. Lees de waarschuwing en klik op de knop om het moOde OS besturingssysteem op de SD kaart te schrijven.
    2. Verwijder de SD-kaart veilig uit de computer.
    3. Start de Raspberry Pi (4 en 5 aansluiten op HDMI0) met de moOde SD-kaart.
    4. Ook moOde configureer en bedien je via een webpagina. We kunnen die bereiken via de hostname moode.local (of kortweg moode) of het IP adres van de Raspberry Pi.
    5. Surf met behulp van het gevonden IP adres of de hostnaam (http://moode/) naar jouw moOde Player.
    6. In de linkerkolom met muziekbronnen, selecteren we het testgeluid LR Channel And Phase (eerste item).
    7. Klik op de Play knop (driehoek) om de Stereo Test af te spelen. Boven de Play knop zien we een tijdlijn in een cirkel. De onderste cirkel is het volume, klik op de plus/min tekens om het volume te regelen.
      Moode Test
    8. Om te luisteren via Bluetooth verbonden luidsprekers (apparaat) moet je eerst Bluetooth instellen:
      1. Open je rechts bovenaan het moOde menu en start je de opdracht Configure.
      2. Activeer (klik op) het onderdeel Renderers.
      3. Activeer bij de sectie Bluetooth de optie Controller om Bluetooth te activeren.
      4. Klik op de knop Bluetooth control.
      5. Zorg dat de Bluetooth ontvanger zichtbaar is.
      6. Selecteer in de keuzelijst LIST paired de optie SCAN (Plus LE devices) of SCAN (Standaard).
      7. Klik op de knop van de gevonden Bluetooth luidsprekers.
      8. Klik op de knop van de gekoppelde Bluetooth luidsprekers. Dit mislukte met mijn Bluetooth luidsprekers.
      9. Selecteer bij de sectie Options met de keuzelijst Local Audio de audio uitgang Bluetooth speaker.
    9. Als je niets hoort (op lokale audio uitgangen, dus geen Bluetooth), open je rechts bovenaan het moOde menu en start je de opdracht Configure.
    10. Activeer het onderdeel Audio en zet de Output device op de correcte uitgang. De moOde speler ondersteunt verschrikkelijk veel audio uitbreidingskaarten (HAT's).
    11. Om terug de startpagina van moOde weer te geven, klik onderaan op de afspeelbalk naast de knoppen of op de knop met het huisje.
    12. Hardware aanpassingen vragen meestal een herstart via het moOde menu en de opdracht Power > Restart.
    13. Luister naar een standaard radiostream naar keuze.
    14. Regel het volume.
    15. Om de inhoud van een USB stick af te spelen, moeten we Moode toegang geven tot USB opslagapparaten:
      1. Activeer bij Configuration Settings > Library de optie Auto-update database (USB drive).
      2. Plaats een USB Stick met muziek in de Raspberry Pi.
      3. Open de moOde bestandsbeheerder (klik op de cover op de startpagina).
      4. Vernieuw indien nodig de inhoud.
      5. Speel een lied op de USB Stick af.
    16. Een voorbeeld van hoe je de weergave kunt aanpassen:
      1. Open de moOde bestandsbeheerder (klik op de cover op de startpagina).
      2. Selecteer met de keuzelijst Library (links bovenaan) Radio.
      3. Gebruik het tandwielknopje om de radio's te sorteren en te groeperen op Genre.
      4. Na een klik op de knop kom je terug bij het overzicht met radio's. Om de nieuwe instelling te activeren, moet je soms vernieuwen.
      5. Zoek en luister naar een Jazz radio.
    17. Zoek en luister naar een VRT zender naar keuze.
    18. moOde
    19. Je kunt muziek die lokaal (bijv. op USB opslag) beschikbaar is voor moOde ook delen in het netwerk. Dit gaat als volgt:
      1. Activeer bij Configuration Settings > System in de sectie File sharing de optie DLNA.
      2. Klik daarna in dezelfde sectie op de knop DLNA database.
      3. Even geduld terwijl de Database wordt opgebouwd.
      4. Start op jouw computer een DLNA compatibele Media speler zoals Windows Media Player of VLC.
      5. Laten we als voorbeeld VLC starten.
      6. Activeer via het menu Weergave de Afspeellijst.
      7. Activeer in de linkerkolom (met schuifbalk) bij Lokaal netwerk de categorie Universele Plug'n'Play. Indien jouw systeem een firewall gebruikt, zal deze de muziek afkomstig van een ander apparaat blokkeren. In Windows krijg je dan een melding, reageer gepast (zie afbeelding).
        Windows Firewall
      8. Open in het rechterpaneel de map Moode DLNA, navigeer naar de muziek en speel een song af.
    20. VLC DLNA
    21. Ook het omgekeerde kan, luisteren naar muziek in gedeelde netwerkmappen zoals op een NAS:
      1. Activeer in de Configuration Settings het onderdeel Library.
      2. Klik op de knop CREATE om een nieuwe muziekbron toe te voegen.
      3. Klik op de knop SCAN om in het netwerk naar gedeelde mappen met muziek te zoeken.
      4. Open de keuzelijst Path om een server te selecteren. Vul Path aan met een gedeelde map op die server.
      5. Voor onbeveiligde bronnen gebruik je het Userid Guest zonder wachtwoord.
      6. Geef de nieuwe muziekbron een naam (Name) en bevestig met de Save knop.
      7. Speel indien mogelijk een lied in een gedeelde netwerkmap af
  8. Bekijk ook alternatieven zoals piCorePlayer.

Raspberry Pi Bluetooth Audio Receiver

Op de website van Plugable staat mooi beschreven hoe je van jouw Raspberry Pi een Audio receiver maakt. De uitleg maakt gebruik van een aparte Bluetooth dongle, maar dat hoeft niet, met de ingebouwde Bluetooth ontvanger werkt het ook. In zijn meest eenvoudige vorm, gaat het als volgt:

  1. Zet een up to date en geconfigureerd Raspberry Pi OS op een SD kaart (Basisimage).
  2. Bekabel en start de Raspberry pi.
  3. Start een terminal.
  4. Download het project met de opdracht:
    pi@raspberrypi:~ $ wget -q https://github.com/nicokaiser/rpi-audio-receiver/archive/main.zip
  5. Pak het gedownloade ZIP-archief uit met de opdracht:
    pi@raspberrypi:~ $ unzip main.zip
    Archive:  main.zip
    4467d1caddfb2291185e842c08a4e7aec7ccf34a
       creating: rpi-audio-receiver-main/
     extracting: rpi-audio-receiver-main/.gitignore  
      inflating: rpi-audio-receiver-main/LICENSE  
      inflating: rpi-audio-receiver-main/README.md  
      inflating: rpi-audio-receiver-main/install.sh
  6. Nu het ZIP-archief is uitgepakt, kunnen we het verwijderen:
    pi@raspberrypi:~ $ rm main.zip
  7. Open de uitgepakte map:
    pi@raspberrypi:~ $ cd rpi-audio-receiver-main
  8. De volgende stap houdt een risico in. Je gaat namelijk een installatiescript als systeembeheerder (root) uitvoeren dat afkomstig is van het internet. Iemand met slechte bedoelingen kan zo veel schade aanrichten. Doe dit dus enkel als je de aanbieder vertrouwt. Veel projecten zijn open source, waardoor je de broncode kunt bekijken (controleren) en zelf compileren. Voor de begeleide installatie moeten we sudo (Super User Do) gebruiken:
    pi@raspberrypi:~/rpi-audio-receiver-main $ sudo ./install.sh
    Raspberry Pi Audio Receiver
    ./install.sh: regel 25: [: ontbrekende ']'
    Hostname [raspberrypi]: Soundwave
    Pretty hostname [Raspberry Pi]: Soundwave

    De opmerking over regel 25 kan je negeren, heb ik persoonlijk gecheckt.

    De Hostname is de naam van ons apparaat zelf, en de Pretty hostname is wat we daadwerkelijk zullen zien in onze Bluetooth-lijst wanneer we onze apparaten proberen te verbinden. De Pretty hostname mag verschillen van de hostname als je dat wilt. In dit voorbeeld houden we het op Soundwave als Hostname en Pretty hostname. Zodra je je namen hebt gekozen, begint de installatie.
  9. Met de vraag wat je wilt installeren. Installeer Bluetooth Audio (PulseAudio) - dit moet worden geïnstalleerd. Voer y in voor ja.
    Do you want to install Bluetooth Audio (ALSA)? [y/N] y
    Ophalen:1 http://archive.raspberrypi.com/debian bookworm InRelease [23,6 kB]
    Ophalen:2 http://archive.raspberrypi.com/debian bookworm/main arm64 Packages [417 kB]
    Ophalen:3 http://archive.raspberrypi.com/debian bookworm/main armhf Packages [418 kB]
    Geraakt:4 http://deb.debian.org/debian bookworm InRelease
    Ophalen:5 http://deb.debian.org/debian-security bookworm-security InRelease [48,0 kB]
    Ophalen:6 http://deb.debian.org/debian bookworm-updates InRelease [55,4 kB]
    Ophalen:7 http://deb.debian.org/debian-security bookworm-security/main arm64 Packages [157 kB]
    Ophalen:8 http://deb.debian.org/debian-security bookworm-security/main armhf Packages [154 kB]
    1.169 kB opgehaald in 1s (1.009 kB/s)                    
    Pakketlijsten worden ingelezen... Klaar
    Boom van vereisten wordt opgebouwd... Klaar
    De statusinformatie wordt gelezen... Klaar 
    1 pakket kan opgewaardeerd worden. Voer 'apt list --upgradable' uit om het te zien.
    Pakketlijsten worden ingelezen... Klaar
    Boom van vereisten wordt opgebouwd... Klaar
    De statusinformatie wordt gelezen... Klaar 
    De volgende extra pakketten zullen geïnstalleerd worden:
      libasound2-plugin-bluez
    Aanbevolen pakketten:
      bluez-obexd
    De volgende NIEUWE pakketten zullen geïnstalleerd worden:
      bluez-alsa-utils bluez-tools libasound2-plugin-bluez
    0 opgewaardeerd, 3 nieuw geïnstalleerd, 0 te verwijderen en 1 niet opgewaardeerd.
    Er moeten 257 kB aan archieven opgehaald worden.
    Na deze bewerking zal er 1.535 kB extra schijfruimte gebruikt worden.
    Ophalen:1 http://deb.debian.org/debian bookworm/main arm64 libasound2-plugin-bluez arm64 4.0.0-2 [38,2 kB]
    Ophalen:2 http://deb.debian.org/debian bookworm/main arm64 bluez-alsa-utils arm64 4.0.0-2 [83,7 kB]
    Ophalen:3 http://deb.debian.org/debian bookworm/main arm64 bluez-tools arm64 2.0~20170911.0.7cb788c-4 [136 kB]
    257 kB opgehaald in 0s (3.764 kB/s)  
    Voorheen niet geselecteerd pakket libasound2-plugin-bluez:arm64 wordt geselecteerd.
    (Database wordt ingelezen ... 147803 bestanden en mappen momenteel geïnstalleerd.)
    Uitpakken van .../libasound2-plugin-bluez_4.0.0-2_arm64.deb wordt voorbereid...
    Bezig met uitpakken van libasound2-plugin-bluez:arm64 (4.0.0-2) ...
    Voorheen niet geselecteerd pakket bluez-alsa-utils wordt geselecteerd.
    Uitpakken van .../bluez-alsa-utils_4.0.0-2_arm64.deb wordt voorbereid...
    Bezig met uitpakken van bluez-alsa-utils (4.0.0-2) ...
    Voorheen niet geselecteerd pakket bluez-tools wordt geselecteerd.
    Uitpakken van .../bluez-tools_2.0~20170911.0.7cb788c-4_arm64.deb wordt voorbereid...
    Bezig met uitpakken van bluez-tools (2.0~20170911.0.7cb788c-4) ...
    Instellen van libasound2-plugin-bluez:arm64 (4.0.0-2) ...
    Instellen van bluez-tools (2.0~20170911.0.7cb788c-4) ...
    Instellen van bluez-alsa-utils (4.0.0-2) ...
    Created symlink /etc/systemd/system/bluetooth.target.wants/bluealsa-aplay.service → /lib/systemd/system/bluealsa-aplay.service.
    Created symlink /etc/systemd/system/bluetooth.target.wants/bluealsa.service → /lib/systemd/system/bluealsa.service.
    Bezig met afhandelen van triggers voor dbus (1.14.10-1~deb12u1) ...
    Bezig met afhandelen van triggers voor man-db (2.11.2-2) ...
    Created symlink /etc/systemd/system/multi-user.target.wants/bt-agent@hci0.service → /etc/systemd/system/bt-agent@.service.
  10. De optionele Shairport Sync Airplay 1 Audio Receiver installeren we niet. Dit is enkel nodig om met Apple apparaten of iTunes software te gebruiken.
    Do you want to install Shairport Sync (AirPlay 2 audio player)? [y/N] N
  11. Ook de Spotify Connect installatie voeren we niet uit:
    Do you want to install Raspotify (Spotify Connect)? [y/N] N
  12. Om alle geïnstalleerde onderdelen te activeren, herstart je de Raspberry Pi:
    pi@raspberrypi:~/rpi-audio-receiver-main $ sudo shutdown -r now
  13. Hoewel het volgende ook grafische kan, gaan we toch verder met opdrachten in de terminal. De volgende bluetoothctl opdrachten schakelen Bluetooth in, maken de Raspberry Pi zichtbaar voor andere apparaten, zorgt dat andere apparaten kunnen koppelen met de Raspberry Pi en sluit uiteindelijk de Bluetooth controller software af. De Bluetooth instellingen blijven daarbij wel actief.
    pi@Soundwave:~ $ sudo bluetoothctl
    Agent registered
    [bluetooth]# power on
    Changing power on succeeded
    [bluetooth]# discoverable on
    Changing discoverable on succeeded
    [bluetooth]# pairable on
    Changing pairable on succeeded
    [bluetooth]# exit
  14. Koppel een ander apparaat aan de Raspberry Pi en speel muziek af. De muziek moet je nu horen via de Raspberry Pi. De afbeeldingen tonen een gekoppelde Android apparaat en een Linux Desktop. Opgelet: Je kunt maart één toestel koppelen met de Raspberry Pi. Om een ander apparaat te koppelen, moet je dus het eerste apparaat ontkoppelen (verwijderen) en pas na een tijdje proberen het nieuwe apparaat te koppelen.
    Android Bluetooth
    Linux KDE Bluetooth

Openbare reacties op deze pagina (kunnen door alle bezoekers gelezen worden)

, vrijdag 2 juni 2023 19:28