Apple Event: May 7th at 7 am PT

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

iTunes 8.1 Shared Library

I have a NAS Server that shares my music. When I start iTunes 8.1 I can see the share but when I click on the share, it disappears. It never connects like it did in 8.0. When I restart iTunes, it shows back up again but never lets me connect the the share.

Very bad upgrade. I hope that time machine will let me revert back to 8.0 until this gets fixed.

Home Built

Posted on Mar 11, 2009 10:58 PM

Reply
Question marked as Best reply

Posted on Mar 11, 2009 11:10 PM

What brand and model of NAS do you have? Does the NAS share your music using iTunes Music Sharing so it shows up under Shared in iTunes?
35 replies

Mar 19, 2009 10:01 AM in response to VistaNoGo

Sadly, I too have had problems with iTunes 8.1 messing up my shared library.

I have an iMac at home with 4 accounts (me, my wife, my son and my daughter). After upgrading to 8.1 all the music and podcasts went away. I've Added to Library again, but now when I try and update the podcasts I get a permissions problem. Permissions haven't changed.

* Sigh *

Maybe I should see if iTunes group needs some QA help.

Mar 21, 2009 7:48 AM in response to VistaNoGo

I had the same problem, but I have just succeeded in getting my Firefly media server to work with iTunes 8.1

It looks like the problem is in Bonjour and not in the DAAP handling.

To work around the problem I disabled port 3689 handling in my Bonjour server (avahi) reconfigured mt-daap to handle port 3689 and then changed the start up sequence so that mt-daap started well after avahi-daemon and netatalk (because I still want the file shares to be available via Bonjour).

Net result: a working Firefly media server accessible by iTunes 8.1 and a working AFP file shares.

Mar 21, 2009 1:10 PM in response to audio_n_video

I also had the same problem with a FreeNAS 0.69 based Firefly server. After analyzing the traffic with tcpdump, I concluded the problem was with Bonjour and not DAAP because no DAAP traffic was initiated.

The problem appears to be the lack of a TXT record. The built in Firefly mdns code sets one up, which is why using Firefly to advertise the service works. If using Avahi or mDNSResponderPosix (e.g., on FreeNAS), adding a TXT record with "txtvers=1 iTShVersion=131073 Version=196610" is sufficient to get things working. My working mdnsresponder.conf entry for FreeNAS/Firefly is:

freenas
daap.tcp. local.
3689
txtvers=1 iTShVersion=131073 Version=196610

Similar changes should work for other NAS or homegrown systems using Firefly with Avahi or mDNSResponderPosix.

Mar 21, 2009 5:55 PM in response to cstrouble

Confirmed. This works for Avahi too.

@cstrouble Are you sure that the "txtvers=1 iTShVersion=131073 Version=196610" should be one TXT record and not three? I note that it seems to work both ways.

In any case, here is my revised avahi service file (/etc/avahi/services/daap.service), which works for me:

<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<!-- See avahi.service(5) for more information about this configuration file -->
<service-group>
<name replace-wildcards="yes">Firefly on %h</name>
<service>
<type> daap.tcp</type>
<port>3689</port>
<txt-record>txtvers=1 iTShVersion=131073 Version=196610</txt-record>
</service>
<service>
<type> rsp.tcp</type>
<port>3689</port>
<txt-record>txtvers=1 iTShVersion=131073 Version=196610</txt-record>
</service>
</service-group>

Mar 22, 2009 1:21 AM in response to audio_n_video

@audio nvideo I'm not 100% sure, but mDNSResponder doesn't seem to allow for multiple TXT record lines. The tcpdump log shows a real iTunes quoting the TXT record entries, but that doesn't seem to be necessary (although it is in the RFC, so it might be a good idea). Firefly and iTunes both define additional information, which again don't seem necessary. My guess is that iTunes is now looking for the existence of a TXT record, which is a requirement of the Bonjour protocol.

Firefly includes the TXT record for all served plugins, which may be important for applications other than iTunes. According to http://www.dns-sd.org/ServiceTypes.html, however, DAAP is the only one that needs the record. The RSP entry isn't documented as being standard, and HTTP doesn't use the TXT record fields provided by Firefly.

Mar 22, 2009 2:18 AM in response to cstrouble

A little more info with a correction. According to the RFC ( http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt):

"The format of each constituent string within the DNS TXT record is a single length byte, followed by 0-255 bytes of text data."

So, the TXT record format I provided is not technically correct, and quotes are not necessary (just an artifact of tcpdump formatting). In mDNSResponder on FreeNAS, as audio nvideo points out, there should be multiple lines. This will create the correct TXT record with length bytes. The more correct mdnsresponder.conf entry is

freenas
daap.tcp. local.
3689
txtvers=1
iTSh Version=131073
Version=196610

(Also note that there's a space between iTSh and Version, which somehow was removed earlier.) While I haven't needed additional key value pairs, iTunes does send out information for Password, Database ID, Machine Name, Machine ID, OSsi (not sure what this is), and Media Kinds Shared (35 from iTunes 8.1).

Avahi is probably similar, in that multiple txt-record entries should be used.

Mar 28, 2009 2:49 PM in response to cstrouble

How do you get the mdnsresponder.conf file to keep it's settings? I'll edit it via su ssh'd into the machine and then go to restart the mdnsresponder service and the conf file gets overwritten with the default settings.

Also happens if I restart the Zeroconf or DAAP via the FreeNas GUI.

Is there another place that it's pulling those settings from?

Mar 28, 2009 3:07 PM in response to smatheson

Found out what the issue was. Fixed in the latest version of FreeNas (nighlies)

From:
http://apps.sourceforge.net/phpbb/freenas/viewtopic.php?f=55&t=1492&p=7338&hilit =itunes+8.1&sid=12c0187c0338074c4c31e34bf35479d6#p7338

---------------

Fixed in version 4481.
But if you don't want to upgrade your system, you can to add the string


-o "txtvers=1 iTShVersion=131073 Version=196610" -n \


as here


-i "count(//daap/enable) > 0" \
-v "//daap/servername" -n \
-o " daap.tcp. local." -n \
-v "//daap/port" -n \
-o "txtvers=1 iTShVersion=131073 Version=196610" -n \
-n \
-v "//daap/servername" -n \
-o " rsp.tcp. local." -n \
-v "//daap/port" -n \
-n \
-b \


in file /etc/rc.d/mdnsresponder.

--------

Did that and it works!

iTunes 8.1 Shared Library

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.