Vi bruger Apple Airplay til at distribuere musik i vores hus, vi har godt nok aldrig haft en apple airplay enhed, blot brugt airplay protokollen først som beskrevet i min post shairport fra 2015 og siden med shairport-sync. I begyndelsen skulle man selv downloade kildeteksten og installere den, nu er den typisk tilgængelig i et repository, og man skal blot installere og konfigurere det. Jeg bruger mine openwrt routere der spredt ud over huset med et externt usb-sound-card, i tillæg til de netværks bootede pogo-plugs der kører Debian.
Her er hvad jeg gør for at få det til at spille under OpenWRT
opkg update opkg install alsa-utils usbutils kmod-usb-audio opkg install shairport-sync
Så skal den blot konfigureres en jomfruelig /etc/config/shairport-sync ser således ud:
# Use your own config file config shairport-sync 'shairport_sync_file' option enabled '0' option respawn '1' option conf_custom '1' option conf_file '/etc/shairport-sync.conf' # Use OpenWrt UCI config config shairport-sync 'shairport_sync' option enabled '1' option respawn '1' # General option name '%h' option password '' option interpolation '' # basic/soxr option output_backend '' # alsa/pipe/stdout/ao/dummy/pulse/sndio option mdns_backend '' # avahi/external-avahi/dns-sd/external-dns-sd/tinysvcmdns option port '' # 5000 option udp_port_base '' # 6001 option udp_port_range '' # 100 option statistics '' # no/yes option drift '' # 88 option resync_threshold '' # 2205 option log_verbosity '' # 0/1/2/3 option ignore_volume_control '' # no/yes option volume_range_db '' # 30 to 150 option regtype '' # _raop._tcp option playback_mode '' # stereo/mono # Metadata option metadata_enabled '' # no/yes option metadata_cover_art '' # no/yes option metadata_pipe_name '' # /tmp/shairport-sync-metadata option metadata_pipe_timeout '' # 5000 option metadata_socket_address '' # 226.0.0.1 option metadata_socket_port '' # 5555 option metadata_socket_msglength # 65000 # Session Control option sesctl_run_before_play_begins '' # /etc/shairport-sync-start.sh option sesctl_run_after_play_ends '' # /etc/shairport-sync-stop.sh option sesctl_wait_for_completion '' # no/yes option sesctl_session_interruption 'yes' # no/yes option sesctl_session_timeout '' # 120 # ALSA option alsa_output_device '' # default option alsa_mixer_control_name '' # PCM option alsa_mixer_device '' # default option alsa_latency_offset '' # 0 option alsa_buffer_length '' # 6615 option alsa_disable_synchronization '' # no/yes option alsa_period_size '' # number option alsa_buffer_size '' # number # Pipe option pipe_name '' # /tmp/shairport-sync-audio option pipe_latency_offset '' # 0 option pipe_buffer_length '' # 44100 # Stdout option stdout_latency_offset '' # 0 option stdout_buffer_length '' # 44100 # AO option ao_latency_offset '' # 0 option ao_buffer_length '' # 44100
Det eneste der behøves er:
# Use OpenWrt UCI config config shairport-sync 'shairport_sync' option enabled '1' option respawn '1' option name '%h' option metadata_socket_msglength # 65000 option sesctl_session_interruption 'yes' # no/yes