ID.nl logo
Maak je eigen AirPlay-speakers met de Raspberry Pi 2
© Reshift Digital
Zekerheid & gemak

Maak je eigen AirPlay-speakers met de Raspberry Pi 2

Voor speakers waarop je muziek streamt via Apples AirPlay-muziekprotocol moet je diep in de buidel tasten. Voor een fractie van die prijs configureren we een Raspberry Pi 2 zodat hij AirPlay ontvangt en hangen we er losse speakers aan. In dit artikel leggen we je uit hoe je dit voor elkaar krijgt.

Stap 1 - Raspbian installeren

We gaan ervan uit dat je het besturingssysteem Raspbian op de Raspberry Pi 2 hebt geïnstalleerd (zie ook dit artikel). Heb je NOOBS gebruikt om een ander besturingssysteem op je Pi te zetten, zoals OpenELEC, dan is dat eenvoudig terug te draaien. Steek de voeding van je Raspberry Pi 2 in een stopcontact en houd onmiddellijk de Shift-toets ingedrukt om het installatieprogramma opnieuw te openen.

Stap 2 - Benodigdheden installeren

Vervolgens updaten we de pakketinformatie van Raspbian met het commando sudo apt-get update, zodat we de nieuwste versies van alle software kunnen downloaden. Daarna upgraden we alle software op de Pi met het commando sudo apt-get upgrade naar de nieuwste beschikbare versies. En we installeren een boel pakketten die we nodig hebben om hierna de AirPlay-software te kunnen installeren: sudo apt-get install autoconf libtool libdaemon-dev libasound2-dev libpopt-dev avahi-daemon libavahi-client-dev libssl-dev.

©PXimport

Installeer met commando's de juiste benodigdheden.

Stap 3 - Shairport Sync installeren

Om audio naar onze Pi te streamen via het AirPlay-protocol gebruiken we de software Shairport Sync. Download de broncode met de opdracht git clone https://github.com/mikebrady/shairport-sync.git, navigeer naar de gedownloade directory met cd shairport-sync, voer de opdracht autoreconf -i -f uit en compileer de broncode met ./configure --with-alsa --with-avahi --with-ssl=openssl && make. Tot slot installeren we de software met sudo make install.

Stap 4 - Shairport Sync starten

Start nu Shairport Sync met de opdracht shairport-sync -a RaspberryPlay -- -d hw:0 -t hardware -c PCM. Vervang RaspberryPlay door een naam naar keuze en zet die tussen aanhalingstekens als er een spatie in voorkomt. Dat is de naam waaronder je Pi zichtbaar is bij AirPlay-compatibele apparaten. Als je op je iPad of iPhone het AirPlay-menu opent, zie je de Raspberry Pi tussen de beschikbare apparaten staan om audio naar te streamen. In iTunes kun je de Pi kiezen als je op het icoontje naast de volumeregelaar klikt. En OS X laat zelfs toe om je Pi als standaard audio-uitvoerapparaat te gebruiken via de menu's Systeemvoorkeuren / Geluid / Uitvoer.

©PXimport

In OSX kun je je Pi als standaard audio-uitgang gebruiken.

Stap 5 - Testen en tweaken

Sluit speakers aan op je Pi en test het streamen eens. Als je daarvoor de jackaansluiting van de Pi gebruikt, zul je wel merken dat er vrij veel ruis op zit. Daarom dat we verder in deze workshop een externe usb-geluidskaart gebruiken. Maar voor de test volstaat de jackaansluiting. Het audiovolume staat overigens standaard vrij laag in Raspbian. Sluit Shairport Sync af met Ctrl+C. Met de opdracht alsamixer open je een volumeregelaar. Met de pijltjestoetsen omhoog en omlaag pas je het volume aan. Ga niet boven de 80%, want dan wordt het geluid sterk vervormd. Met een druk op Esc sla je de instelling op.

Stap 6 - Automatisch opstarten

Nu moeten we er nog voor zorgen dat Shairport Sync automatisch opstart wanneer de Pi opstart. Daarvoor passen we het opstartscript aan. Open het met het commando sudo nano /etc/init.d/sharepoint-sync en ga naar regel 66, die begint met start-stop-daemon --start en eindigt met -d || return 2. Voeg achter de -d de volgende opties toe: -a RaspberryPlay -- -d hw:0 -t hardware -c PCM. Sla het bestand op met Ctrl+O en sluit het af met Ctrl+X. Herstart nu je Pi en probeer nog eens muziek te streamen naar je Pi.

©PXimport

Shaiport Sync automatisch opstarten als je Pi start.

Betere audio

De ingebouwde geluidsuitvoer van de Raspberry Pi is niet van al te goede kwaliteit. Gelukkig bestaan er heel wat oplossingen om daar iets aan te doen. Het eenvoudigste is een usb-geluidskaart. Het voordeel daarvan is ook dat je het in andere projecten kunt hergebruiken. Zelfs een goedkope usb-geluidskaart geeft al een merkbaar betere geluidskwaliteit. Daarnaast bestaat er ook audiohardware die speciaal voor de Raspberry Pi is ontworpen, zoals de HiFiBerry: de DAC+-versie heeft een analoge uitvoer en de Digi+-versie een elektrische en optische SPDIF-uitvoer.

Stap 7 - USB-geluidskaart

Aangezien de jackaansluiting van de Raspberry Pi geen denderende geluidskwaliteit geeft, steken we een usb-geluidskaart in onze Pi. We kozen voor de LogiLink TODO, die standaard door Raspbian is ondersteund. Kijk op de wiki van elinux.org (zie ook dit artikel) voor een uitgebreide lijst van ondersteunde geluidskaarten. Controleer met de opdracht aplay -l of je geluidskaart wordt herkend. Naast je card 0 (de interne audiohardware van de Pi) krijg je een card 1 te zien waarbij USB Audio staat.

©PXimport

Een USB-geluidskaart geeft betere geluidskwaliteit.

Stap 8 - USB-geluidskaart eerst

De Pi geeft voorrang aan zijn eigen audiohardware. We gaan nu instellen dat Raspbian de voorkeur geeft aan de usb-geluidskaart, niet alleen voor Shairport Sync, maar voor alle programma's die audio gebruiken. Open het configuratiebestand van ALSA (TODO) met de opdracht sudo nano /etc/modprobe.d/alsa-base.conf. Vind de regel met options snd-usb-audio index=-2 en vervang die door options snd-usb-audio nrpacks=1. Sla het bestand op met Ctrl+O en sluit nano af met Ctrl+X.

Stap 9 - Alias

Voor de volgende stap moeten we de alias van de usb-geluidskaart te weten komen. Voer de opdracht aplay -L uit. Bij ons zien we in de uitvoer onder andere front:CARD=Set,DEV=0. De alias is dan front:Set. Maak dan een configuratiebestand voor asound aan met het commando sudo nano /etc/asound.conf en plaats daarin achtereenvolgens de regels (waarbij je in de laatste regel in plaats van front:Set uiteraard de juiste alias in jouw situatie gebruikt):

pcm.mmap0 {

type mmap_emul;

slave {

pcm "hw:0,0";

}

}

pcm.!default front:Set

©PXimport

Maak een configuratiebestand aan voor de alias van jouw USB-geluidskaart.

Stap 10 - Volumemixer

Nu moeten we nog nakijken hoe de volumemixer van de usb-geluidskaart heet. Bij de interne audio van de Pi is dat PCM. Open nog eens alsamixer om het geluidsvolume aan te passen en kijk welke naam er onder het volumebalkje en achter Item: staat. Bij onze LogiLink TODO is dat Headphone. Open terug het opstartscript van Shairport Sync met het commando sudo nano /etc/init.d/shairport-sync en ga naar regel 66. Vervang daar -c PCM door -c Headpone of de overeenkomstige naam in jouw situatie. Reboot daarna je Pi en sluit je speakers op de audio-uitvoer van de geluidskaart aan. Stream opnieuw de audio van je Apple-apparaat naar je Pi en geniet van de betere geluidskwaliteit.

Stap 11 - Volume-instellingen opslaan

Tot nu toe moesten we na elke reboot opnieuw het volume veranderen in alsamixer omdat de standaardinstelling van het volume heel laag staat. Gelukkig kunnen we dat zelf ook definitief instellen. Start alsamixer en stel het volume in. Met de pijltjestoetsen naar links en rechts kun je van audio-uitvoer veranderen en met F6 kies je andere audioapparaten. Als je alles hebt ingesteld, druk je op Esc om je instellingen op te slaan en voer je daarna de opdracht sudo alsactl store 0 uit om je instellingen definitief op te slaan. Na een reboot blijft je volume nu zo hoog staan als je hebt ingesteld.

©PXimport

Zo sla je volume-instellingen op, wel zo handig.

Stap 12 - Meer opties

Shairport Sync ondersteunt nog heel wat opties. Bekijk de webpagina op GitHub voor meer informatie. Een interessante eigenschap van Shairport Sync is dat het altijd gesynchroniseerd blijft met de bron van de audio en dus ook met andere apparaten waarnaar dezelfde audio gestreamd wordt. Dat betekent dat multiroom-audio eenvoudig mogelijk is: plaats gewoon in elke kamer een Pi die Shairport Sync draait.

Speakers

Aan je speakers kun je zoveel of zo weinig geld uitgeven als je wilt. Voor een kleine ruimte of incidenteel gebruik volstaan zeker draagbare speakers die je al voor een tientje vindt. Ook een bluetooth-speaker is mogelijk, maar dat vereist wat extra configuratie en biedt doorgaans geen hoge audiokwaliteit. Voor enkele tientjes heb je al goede pc-speakers. Voor grotere ruimtes heb je uiteraard wat meer vermogen nodig en kijk je beter naar hifi-speakers.

▼ Volgende artikel
Elfde Fast and Furious-film gaat in 2028 in première
Huis

Elfde Fast and Furious-film gaat in 2028 in première

De naam en premièredatum van de elfde en tegelijkertijd waarschijnlijk ook allerlaatste Fast and Furious-film zijn bekendgemaakt.

Universal Pictures bevestigde dat de film Fast Forever gaat heten en op 17 maart 2028 in première gaat. Het was al geruime tijd bekend dat er een nieuwe Fast and Furious-film zou komen, maar nu zijn eindelijk de eerste details bevestigd. Het lijkt daarbij de laatste film in de franchise te worden, al weet je dat natuurlijk nooit helemaal zeker in Hollywood.

De goedkeuring van de film had nog wat voeten in de aarde. Afgelopen oktober kwam al naar buiten dat er nog geen script klaar lag, en dat de hoofdrolspelers nog geen contract hadden ondertekend. Dit had deels te maken met het gerucht dat er een budget van zo'n 250 miljoen dollar nodig was om de film te creëren, en dat Universal zou hebben geëist dat de kosten met 20 procent naar beneden werden bijgesteld.

In 2023 kwam de meest recente film in de reeks uit, Fast X. Het was oorspronkelijk de bedoeling dat hier een direct vervolg op zou uitkomen genaamd Fast X: Part Two. Die film zou in 2025 verschijnen, maar dat idee werd geschrapt. Fast Forever zal nu dus het verhaal uit die film opvolgen.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Streamtips: nieuwe films en series – Jurassic World Rebirth en The Muppet Show
© Disney
Huis

Streamtips: nieuwe films en series – Jurassic World Rebirth en The Muppet Show

Ben je op zoek naar iets nieuws om te streamen? Dan ben je aan het juiste adres. Of je nu zin hebt in actie, horror of een heleboel nostalgie: er is voor ieder wat wils! Wij hebben de beste tips voor je op een rij gezet, zodat je precies weet wat je deze week niet mag missen.

The Copenhagen Test (seizoen 1) | SkyShowtime | 2 februari

De zesdelige serie The Copenhagen Test draait om Alexander Hale (Simu Liu), een Chinese-Amerikaanse analist bij de geheime inlichtingendienst. Hij ontdekt dat zijn brein is gehackt en dat de daders dus toegang hebben tot alles wat hij ziet en hoort. Terwijl hij de schijn probeert op te houden dat alles oké is, moet hij erachter zien te komen wie de daders zijn en moet hij bewijzen aan wie hij echt loyaal is.

Watch on YouTube

Jurassic World Rebirth | SkyShowtime | 3 februari

De nieuwste toevoeging aan de Jurassic Park-franchise, Jurassic World Rebirth, is vanaf deze dinsdag te zien op SkyShowtime. Martin Krebs (Rupert Friend), een leidinggevende bij het farmaceutische bedrijf ParkerGenix, werft Zora Bennett (Scarlett Johansson), een voormalig militair, om samen te werken met paleontoloog Dr. Henry Loomis (Jonathan Bailey) aan een geheime missie. Door Zora voegen haar oude vriend Duncan Kincaid (Mahershala Ali), bootsman LeClerc (Bechir Sylvain), huurling Nina (Philippine Velge) en de hoofdbeveiliging Bobby Atwater (Ed Skrein) zich bij het team. Samen vertrekken ze naar een eiland in de Atlantische Oceaan om biomateriaalmonsters te verzamelen van verschillende dinosauriërs die daar leven.

Watch on YouTube

Bring Her Back | Netflix | 3 februari

De horrorfilm Bring Her Back volgt de tiener Andy (Billy Barratt) en zijn blinde zus Piper (Sora Wong). Hun vader is recent overleden en daarom worden de twee bij de pleegmoeder Laura (Sally Hawkins) geplaatst. Ze krijgen al snel het idee dat er iets niet in de haak is, wanneer Laura Piper en Andy uit elkaar begint te drijven. Bring Her Back is niet bepaald een film waar je een goed gevoel van krijgt, de narigheid druipt ervan af. Het steengoede acteerwerk van de cast, met name van Hawkins, maakt hem echter zeker het kijken waard.

Watch on YouTube

The Muppet Show | Disney+ | 4 februari

The Muppet Show is terug! Voor het eerst in meer dan veertig jaar staan onder anderen Kermit, Miss Piggy, Gonzo the Great, Fozzie Bear en Dr. Teeth and the Electric Mayhem weer terug op het podium met hun klassieke variétéshow. Te gast zijn Seth Rogen, Sabrina Carpenter, Maya Rudolph en misschien wel Game Awards-presentator Geoff Keighley. De special verschijnt ter gelegenheid van het 50-jarig bestaan van de Muppets. Vooralsnog blijft het bij één aflevering, maar naar verluidt is deze special ook een ‘backdoor pilot’, dus dat smaakt naar meer!

Watch on YouTube

Star Trek: Starfleet Academy (seizoen 1) | SkyShowtime | 5 februari

Het Star Trek-universum blijft zich uitbreiden met de nieuwe serie Starfleet Academy, die vanaf deze week op SkyShowtime te zien is. De serie speelt zich af in de 32e eeuw, na Star Trek: Discovery, op de titulaire Starfleet Academy. De nieuwe lichting Starfleet-cadetten krijgen les aan boord van de USS Athena en worden daar opgeleid tot officier. Deze donderdag verschijnen de eerste twee afleveringen, de overige acht worden daarna wekelijks toegevoegd.

Watch on YouTube