From 01f290cc2a1fa89d0bda0d07c01c2c5394b7f163 Mon Sep 17 00:00:00 2001 From: ejurgensen Date: Fri, 7 Feb 2014 22:10:40 +0100 Subject: [PATCH] Replace AirTunes with AirPlay in doc and log messages --- INSTALL | 4 ++-- README | 26 ++++++++++----------- src/player.c | 64 ++++++++++++++++++++++++++-------------------------- 3 files changed, 47 insertions(+), 47 deletions(-) diff --git a/INSTALL b/INSTALL index 7683fccb..341b9a2f 100644 --- a/INSTALL +++ b/INSTALL @@ -191,10 +191,10 @@ The LSB header below sums it up: # Should-Start: avahi # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 -# Short-Description: media server with support for RSP, DAAP, DACP and AirTunes +# Short-Description: media server with support for RSP, DAAP, DACP and AirPlay # Description: forked-daapd is an iTunes-compatible media server for # sharing your media library over the local network with RSP # clients like the SoundBridge from Roku and DAAP clients -# like iTunes. It can also stream music to AirTunes devices, +# like iTunes. It can also stream music to AirPlay devices, # and it can be controlled by Apple Remote (and compatibles). ### END INIT INFO diff --git a/README b/README index 6666fa95..bd3b3e7d 100644 --- a/README +++ b/README @@ -24,6 +24,14 @@ forked-daapd is a complete rewrite of mt-daapd (Firefly Media Server). Supported clients ----------------- +forked-daapd supports streaming to AirPlay devices (like the AirPort Express, +Shairport and various AirPlay speakers). + +Like iTunes, you can control forked-daapd with Apple Remote, or with a +compatible Android app like Retune, TunesRemote+ or Hyperfine Remote. Another +controller is TunesRemoteSE, which is based on Java and runs in Windows, MacOS +and Linux. + forked-daapd supports iTunes clients as well as a number of devices similar to the SoundBridge. @@ -33,14 +41,6 @@ or RSP. A single forked-daapd instance can handle several clients concurrently, regardless of the protocol. -forked-daapd support streaming to AirTunes devices (like the AirPort Express, -Shairport and various AirPlay speakers). - -Like iTunes, you can control forked-daapd with Apple Remote, or with a -compatible Android app like Retune, TunesRemote+ or Hyperfine Remote. Another -controller is TunesRemoteSE, which is based on Java and runs in Windows, MacOS -and Linux. - Using Remote ------------ @@ -118,7 +118,7 @@ Hit Ctrl-C to terminate avahi-browse. ------------------------ Remote gets a list of output devices from the server; this list includes any -and all devices on the network we know of that advertise AirTunes: AirPort +and all devices on the network we know of that advertise AirPlay: AirPort Express, Apple TV, ... It also includes the local audio output, that is, the sound card on the server (even if there is no soundcard). @@ -132,11 +132,11 @@ server startup, provided they appear in the 5 minutes following the startup and no playback has occured yet. -AirTunes devices (AirPlay speakers) ------------------------------------ +AirPlay devices/speakers +------------------------ -forked-daapd will discover the AirTunes devices available on your network. For -devices that are password-protected, the device's AirTunes name and password +forked-daapd will discover the AirPlay devices available on your network. For +devices that are password-protected, the device's AirPlay name and password must be given in the configuration file. See the sample configuration file for the syntax. diff --git a/src/player.c b/src/player.c index 40d5d6e2..324a6348 100644 --- a/src/player.c +++ b/src/player.c @@ -170,7 +170,7 @@ static uint64_t pb_pos; /* Stream position (packets) */ static uint64_t last_rtptime; -/* AirTunes devices */ +/* AirPlay devices */ static int dev_autoselect; static struct raop_device *dev_list; @@ -1535,7 +1535,7 @@ device_remove(struct raop_device *dev) if (!rd) return; - DPRINTF(E_DBG, L_PLAYER, "Removing AirTunes device %s; stopped advertising\n", dev->name); + DPRINTF(E_DBG, L_PLAYER, "Removing AirPlay device %s; stopped advertising\n", dev->name); /* Make sure device isn't selected anymore */ if (dev->selected) @@ -1662,7 +1662,7 @@ device_remove_family(struct player_command *cmd) if (!rd) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device %s stopped advertising, but not in our list\n", dev->name); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device %s stopped advertising, but not in our list\n", dev->name); device_free(dev); return 0; @@ -1709,12 +1709,12 @@ device_streaming_cb(struct raop_device *dev, struct raop_session *rs, enum raop_ ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared during streaming!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared during streaming!\n"); return; } - DPRINTF(E_LOG, L_PLAYER, "AirTunes device %s FAILED\n", dev->name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay device %s FAILED\n", dev->name); if (player_state == PLAY_PLAYING) speaker_deselect_raop(dev); @@ -1731,12 +1731,12 @@ device_streaming_cb(struct raop_device *dev, struct raop_session *rs, enum raop_ ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared during streaming!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared during streaming!\n"); return; } - DPRINTF(E_INFO, L_PLAYER, "AirTunes device %s stopped\n", dev->name); + DPRINTF(E_INFO, L_PLAYER, "AirPlay device %s stopped\n", dev->name); dev->session = NULL; @@ -1779,7 +1779,7 @@ device_shutdown_cb(struct raop_device *dev, struct raop_session *rs, enum raop_s ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared before shutdown completion!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared before shutdown completion!\n"); if (cur_cmd->ret != -2) cur_cmd->ret = -1; @@ -1823,7 +1823,7 @@ device_activate_cb(struct raop_device *dev, struct raop_session *rs, enum raop_s ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared during startup!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared during startup!\n"); raop_set_status_cb(rs, device_lost_cb); raop_device_stop(rs); @@ -1900,7 +1900,7 @@ device_probe_cb(struct raop_device *dev, struct raop_session *rs, enum raop_sess ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared during probe!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared during probe!\n"); if (cur_cmd->ret != -2) cur_cmd->ret = -1; @@ -1947,7 +1947,7 @@ device_restart_cb(struct raop_device *dev, struct raop_session *rs, enum raop_se ret = device_check(dev); if (ret < 0) { - DPRINTF(E_WARN, L_PLAYER, "AirTunes device disappeared during restart!\n"); + DPRINTF(E_WARN, L_PLAYER, "AirPlay device disappeared during restart!\n"); raop_set_status_cb(rs, device_lost_cb); raop_device_stop(rs); @@ -2396,7 +2396,7 @@ playback_start(struct player_command *cmd) ret = raop_device_start(rd, device_restart_cb, last_rtptime + AIRTUNES_V2_PACKET_SAMPLES); if (ret < 0) { - DPRINTF(E_LOG, L_PLAYER, "Could not start selected AirTunes device %s\n", rd->name); + DPRINTF(E_LOG, L_PLAYER, "Could not start selected AirPlay device %s\n", rd->name); continue; } @@ -2414,12 +2414,12 @@ playback_start(struct player_command *cmd) ret = raop_device_start(rd, device_restart_cb, last_rtptime + AIRTUNES_V2_PACKET_SAMPLES); if (ret < 0) { - DPRINTF(E_DBG, L_PLAYER, "Could not autoselect AirTunes device %s\n", rd->name); + DPRINTF(E_DBG, L_PLAYER, "Could not autoselect AirPlay device %s\n", rd->name); speaker_deselect_raop(rd); continue; } - DPRINTF(E_INFO, L_PLAYER, "Autoselecting AirTunes device %s\n", rd->name); + DPRINTF(E_INFO, L_PLAYER, "Autoselecting AirPlay device %s\n", rd->name); cmd->raop_pending++; break; } @@ -2654,7 +2654,7 @@ speaker_enumerate(struct player_command *cmd) laudio_name = cfg_getstr(cfg_getsec(cfg, "audio"), "nickname"); - /* Auto-select local audio if there are no AirTunes devices */ + /* Auto-select local audio if there are no AirPlay devices */ if (!dev_list && !laudio_selected) speaker_select_laudio(); @@ -3793,7 +3793,7 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha ret = safe_hextou64(name, &id); if (ret < 0) { - DPRINTF(E_LOG, L_PLAYER, "Could not extract AirTunes device ID (%s)\n", name); + DPRINTF(E_LOG, L_PLAYER, "Could not extract AirPlay device ID (%s)\n", name); return; } @@ -3801,18 +3801,18 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha at_name = strchr(name, '@'); if (!at_name) { - DPRINTF(E_LOG, L_PLAYER, "Could not extract AirTunes device name (%s)\n", name); + DPRINTF(E_LOG, L_PLAYER, "Could not extract AirPlay device name (%s)\n", name); return; } at_name++; - DPRINTF(E_DBG, L_PLAYER, "Event for AirTunes device %" PRIx64 "/%s (%d)\n", id, at_name, port); + DPRINTF(E_DBG, L_PLAYER, "Event for AirPlay device %" PRIx64 "/%s (%d)\n", id, at_name, port); rd = (struct raop_device *)malloc(sizeof(struct raop_device)); if (!rd) { - DPRINTF(E_LOG, L_PLAYER, "Out of memory for new AirTunes device\n"); + DPRINTF(E_LOG, L_PLAYER, "Out of memory for new AirPlay device\n"); return; } @@ -3844,21 +3844,21 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha p = keyval_get(txt, "tp"); if (!p) { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: no tp field in TXT record!\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: no tp field in TXT record!\n", name); goto free_rd; } if (*p == '\0') { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: tp has no value\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: tp has no value\n", name); goto free_rd; } if (!strstr(p, "UDP")) { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: device does not support AirTunes v2 (tp=%s), discarding\n", name, p); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: device does not support AirTunes v2 (tp=%s), discarding\n", name, p); goto free_rd; } @@ -3867,13 +3867,13 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha p = keyval_get(txt, "pw"); if (!p) { - DPRINTF(E_INFO, L_PLAYER, "AirTunes %s: no pw field in TXT record, assuming no password protection\n", name); + DPRINTF(E_INFO, L_PLAYER, "AirPlay %s: no pw field in TXT record, assuming no password protection\n", name); has_password = 0; } else if (*p == '\0') { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: pw has no value\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: pw has no value\n", name); goto free_rd; } @@ -3884,14 +3884,14 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha if (has_password) { - DPRINTF(E_LOG, L_PLAYER, "AirTunes device %s is password-protected\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay device %s is password-protected\n", name); apex = cfg_gettsec(cfg, "apex", at_name); if (apex) password = cfg_getstr(apex, "password"); if (!password) - DPRINTF(E_LOG, L_PLAYER, "No password given in config for AirTunes device %s\n", name); + DPRINTF(E_LOG, L_PLAYER, "No password given in config for AirPlay device %s\n", name); } devtype = RAOP_DEV_APEX_80211N; @@ -3899,7 +3899,7 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha p = keyval_get(txt, "am"); if (!p) { - DPRINTF(E_INFO, L_PLAYER, "AirTunes %s: no am field in TXT record, assuming old Airport Express\n", name); + DPRINTF(E_INFO, L_PLAYER, "AirPlay %s: no am field in TXT record, assuming old Airport Express\n", name); /* Old AirPort Express */ devtype = RAOP_DEV_APEX_80211G; @@ -3909,7 +3909,7 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha if (*p == '\0') { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: am has no value\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: am has no value\n", name); goto no_am; } @@ -3924,14 +3924,14 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha p = keyval_get(txt, "md"); if (!p) { - DPRINTF(E_INFO, L_PLAYER, "AirTunes %s: no md field in TXT record.\n", name); + DPRINTF(E_INFO, L_PLAYER, "AirPlay %s: no md field in TXT record.\n", name); goto no_md; } if (*p == '\0') { - DPRINTF(E_LOG, L_PLAYER, "AirTunes %s: md has no value\n", name); + DPRINTF(E_LOG, L_PLAYER, "AirPlay %s: md has no value\n", name); goto no_md; } @@ -3939,7 +3939,7 @@ raop_device_cb(const char *name, const char *type, const char *domain, const cha wants_metadata = 1; no_md: - DPRINTF(E_DBG, L_PLAYER, "AirTunes device %s: password: %s, type %s\n", name, (password) ? "yes" : "no", raop_devtype[devtype]); + DPRINTF(E_DBG, L_PLAYER, "AirPlay device %s: password: %s, type %s\n", name, (password) ? "yes" : "no", raop_devtype[devtype]); rd->advertised = 1; @@ -4167,7 +4167,7 @@ player_init(void) ret = mdns_browse("_raop._tcp", mdns_flags, raop_device_cb); if (ret < 0) { - DPRINTF(E_FATAL, L_PLAYER, "Could not add mDNS browser for AirTunes devices\n"); + DPRINTF(E_FATAL, L_PLAYER, "Could not add mDNS browser for AirPlay devices\n"); goto mdns_browse_fail; }