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
Ontslagen bij Ubisoft Toronto, Splinter Cell-remake nog wel in ontwikkeling
Huis

Ontslagen bij Ubisoft Toronto, Splinter Cell-remake nog wel in ontwikkeling

Ubisoft heeft bevestigd dat er ongeveer veertig werknemers van diens studio in Toronto, Canada worden ontslagen. Wel benadrukt het bedrijf dat de Splinter Cell-remake nog altijd in ontwikkeling is.

De veertig ontslagen werknemers beslaan ongeveer acht procent van de complete Ubisoft Toronto-studio. Dat is een van de grotere Ubisoft-studio's. "Dit besluit is niet lichtzinnig gemaakt en zegt niets over het talent, de motivatie en bijdrage van de individuen", zo stelde een woordvoerder.

Ubisoft Toronto heeft odner andere Far Cry 6, Splinter Cell: Blacklist en Watch Dogs Legion ontwikkeld. Ook werkt het al geruime tijd aan een remake van Splinter Cell. Ubisoft heeft benadrukt dat die remake in ontwikkeling blijft bij de studio.

Remake van Splinter Cell

In 2021 werd de remake van de klassieke stealthgame Splinter Cell aangekondigd. Sindsdien is er maar mondjesmaat informatie over de game naar buiten gekomen. Kort na de aankondiging werd gemeld dat het verhaal wordt herschreven voor een moderner publiek.

Eind vorig jaar bleek dat David Grivel terugkeerde naar Ubisoft Toronto om aan het spel te werken. Hij nam de regie van de remake oorspronkelijk op zich, maar vertrok in 2022. Inmiddels is hij dus weer terug op het oude nest en werkt hij weer aan het spel.

Watch on YouTube

Reorganisatie van Ubisoft

Afgelopen januari kondigde de Franse uitgever en ontwikkelaar Ubisoft al een grootschalige reorganisatie van het bedrijf aan, waarbij ook zes games werden geannuleerd - waaronder de remake van Prince of Persia: The Sands of Time.

Ubisoft noemde de reorganisatie een "grote organisatorische, operationele en portfolio-reset". Daarbij wil het bedrijf nog meer letten op de kwaliteit die het uitgeeft. Ubisofts nieuwe model gaat zich richten op verschillende 'creatieve huizen' die zich elk met andere soorten games bezighouden. Een daarvan is Vantage Studios, de vorig jaar met Tencent opgerichte dochteronderneming waar Assassin's Creed, Far Cry en Rainbow Six nu onder vallen.

Ubisoft heeft daarnaast aangekondigd dat het thuiswerken niet meer toelaat en dat alle werknemers worden geacht om fulltime op kantoor aanwezig te zijn. Wel krijgen werknemers een "een jaarlijkse toelage bestaande uit thuiswerkdagen". Twee studio's van Ubisoft sloten daarnaast hun deuren: de studio's in Halifax en Stockholm. Gedurende de volgende twee jaren wil het bedrijf nog eens 200 miljoen euro besparen.

Ubisoft heeft de laatste jaren wisselend succes met zijn games. Zo viel de verkoop van het miljoenenproject Star Wars Outlaws tegen. Zover bekend is het begin vorig jaar uitgekomen Assassin's Creed Shadows wel een verkoopsucces.

▼ Volgende artikel
De eerste volledige Toy Story 5-trailer is gearriveerd
Huis

De eerste volledige Toy Story 5-trailer is gearriveerd

Na een korte teaser vorig najaar is deze week de eerste volledige trailer van de aankomende animatiefilm Toy Story 5 uitgebracht.

In het vijfde deel van de uiterst succesvolle Pixar-animatiefilmreeks maakt het levende speelgoed kennis met de Lilypad. Dat is een tablet waar alle aandacht naar uit gaat en dus een bedreiging vormt voor het speelgoed.

Met dat concept speelt de film slim in op de hedendaagse tijd. Tablets en smartphones zijn immers niet meer weg te denken uit de hedendaagse maatschappij, ook onder de jeugd. Lilypad luistert zelfs altijd mee, een duidelijke referentie naar de vrees dat onze smartphones ook alles wat we doen vastleggen.

Woody, Buzz en het andere speelgoed dat we nog kennen uit de vorige vier Toy Story-films zal er in ieder geval een stokje voor proberen te steken. Hoe dat afloopt, is vanaf 19 juni in de Amerikaanse bioscopen. Vaak is de Nederlandse premièredatum een dagje eerder op donderdag - in dit geval 18 juni - en waarschijnlijk geldt dat ook voor Toy Story 5.

Watch on YouTube