Hace tiempo que he configurado mi Raspberry Pi 3 como reproductor de audio Airplay, y aprovecho para publicar este artículo de cómo tener Airplay de audio en la Raspberry Pi 3 a 2018. Con Stretch e iOS 11. Entre las actualizaciones de Raspbian y las de iOS, a veces lo que tienes funcionando perfectamente, de un día para otro deja de funcionar.
Importante: este artículo sólo habla de Airplay de audio, por ejemplo si quieres enviar el sonido de Spotify a una mini cadena (que fue la razón por la cual yo monté este sistema). Como tengo un par de Raspberry Pi en casa, era una solución barata y muy cómoda.
La solución que vamos a utilizar es Shairport-Sync.
Esta configuración está hecha usando:
- Raspberry Pi 3
- Raspbian Stretch (2017-11-29) recién instalado
- iOS 11.2.1 en un iPhone 6s
Obtener Shairport Sync
Por suerte, Shairport ya está disponible en los repositorios de Raspberry. Cuando instalé mi primera versión, había que compilarlo. Si por lo que sea necesitas o quieres compilarlo, abajo está el método para compilarlo.
Como siempre, antes de instalar un paquete nuevo, vamos a asegurarnos que el sistema operativo está actualizado.
sudo apt-get update
sudo apt-get upgrade
Luego, descargamos Shairport Sync (ojo que Shairport -a secas- es otro software)
sudo apt-get install shairport-sync
Y ya está, así de fácil. 😛
Salida por HDMI o jack
El sonido ahora sale por el puerto HDMI. Pero yo quería que saliera por el puerto minijack, para ello hay que tocar un par de cosas.
Lo primero, es editar el fichero /boot/config.txt
sudo joe /boot/config.txt
Y agregar esta línea al final del fichero, y reiniciar.
audio_pwm_mode=2
¡Ojo! Con este último cambio, el audio siempre saldrá por el puerto minijack y no por el puerto HDMI. Si quieres cambiar esto, simplemente agrega un # al principio de la línea anterior, y reinicia las Raspberry.
Configurando Shairport Sync
Según el desarrollador, recomienda tocar algunos parámetros del fichero de configuración.
Si queremos ver el fichero de configuración, editamos el fichero en /etc/shairport-sync.conf. Yo utilizo joe como editor de textos:
sudo joe /etc/shairport-sync.conf
Agregar estas líneas:
volume_range_db = 40 ;
drift_tolerance_in_seconds=0.010;
Yo ademas quiero que aparezca un nombre «Friendly» en el iPhone.
name = "Pi3 Air" ;
Método alternativo: compilar Shairport Sync
En su momento yo he seguido con las instrucciones de la web del desarrollador, y pude compilar Shairport Sync desde 0, y funcionó durante mucho tiempo. Luego, actualicé a Stretch y el método automático (apt-get) ya quedó funcionando.
La página:
https://github.com/mikebrady/shairport-sync
Airplay de audio en la Raspberry Pi iOS11 y Stretch
Más artículos de Raspberry Pi
Estupendo tutorial!
Me ha funcionado perfecto, es una pena que no funcione el modo multiroom…
Tengo una duda, como se le puede su ir el volumen a la salida de auriculares de la raspberry??? Lo Estoy usando en dos habitaciones, en una de ellas tengo un amplificador modular, y suena bien aunque le suba el volumen, pero en otra uso un sistema de audio de pc ( altavoces autoamplificados) y le tengo que subir el volumen al maximo para poder escucharlos…
Gracias!!
Hola!
Una manera fácil es usar el comando
alsamixer
Tendrás una interfaz para poder subir el volumen.
Si quieres automatizarlo, con este comando subes el volumen a los dB deseados:
amixer set PCM -- -XYY
Pone el volumen en -X.YYdB
En esta web incluso puedes encontrar la manera de crear scripts para subir y bajar el volumen, en plan volumeup y volumedown 😛
Setting the volume for 3.5mm jack
Espero que ayude!
Alfonso
Funciona perfecto!,
lo acabo de hacer funcionar en una Orange Pi Zero, pero tengo una consulta..
Se podría habilitar un Gpio de la placa que se active cuando esta reproduciendo? la idea es alimentar un amplificador pero a través de un riele para que solo se encienda cuando reproduce.
gracias