dnssd->TXTRecordSetValue(&txtRecord, "tp", strlen(RAOP_TP), RAOP_TP);
dnssd->TXTRecordSetValue(&txtRecord, "md", strlen(RAOP_MD), RAOP_MD);
dnssd->TXTRecordSetValue(&txtRecord, "vs", strlen(GLOBAL_VERSION), GLOBAL_VERSION);
- dnssd->TXTRecordSetValue(&txtRecord, "am", strlen(RAOP_AM), RAOP_AM);
- dnssd->TXTRecordSetValue(&txtRecord, "sf", strlen(RAOP_SF), RAOP_SF);
+ dnssd->TXTRecordSetValue(&txtRecord, "sm", strlen(RAOP_SM), RAOP_SM);
+ dnssd->TXTRecordSetValue(&txtRecord, "ek", strlen(RAOP_EK), RAOP_EK);
/* Convert hardware address to string */
ret = utils_hwaddr_raop(servname, sizeof(servname), hwaddr, hwaddrlen);
#define DNSSDINT_H
#define RAOP_TXTVERS "1"
-#define RAOP_CH "2"
-#define RAOP_CN "0,1"
-#define RAOP_ET "1"
+#define RAOP_CH "2" /* Audio channels: 2 */
+#define RAOP_CN "0,1" /* Audio codec: PCM, ALAC */
+#define RAOP_ET "0,1" /* Encryption type: none, RSA */
#define RAOP_SV "false"
#define RAOP_DA "true"
#define RAOP_SR "44100"
-#define RAOP_SS "16"
-#define RAOP_VN "65537"
+#define RAOP_SS "16" /* Sample size: 16 */
+#define RAOP_VN "3"
#define RAOP_TP "TCP,UDP"
-#define RAOP_MD "0,1,2"
-#define RAOP_AM "AppleTV2,1"
-#define RAOP_SF "0x4"
+#define RAOP_MD "0,1,2" /* Metadata: text, artwork, progress */
+#define RAOP_SM "false"
+#define RAOP_EK "1"
#endif
#define GLOBAL_FEATURES 0x7
#define GLOBAL_MODEL "AppleTV2,1"
-#define GLOBAL_VERSION "104.29"
+#define GLOBAL_VERSION "130.14"
#define MAX_HWADDR_LEN 6
free(original);
return -1;
}
+ if (strstr(current, ":")) {
+ /* FIXME: iTunes sends IP4 even with an IPv6 address, does it mean something */
+ family = AF_INET6;
+ }
ret = netutils_parse_address(family, current,
&raop_rtp->remote_saddr,
sizeof(raop_rtp->remote_saddr));