Coherence and Rhythmbox UPNP not seeing media server

Reported by Martin Bartlett on 2010-08-21
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Coherence
New
Unknown
coherence (Debian)
Fix Released
Unknown
coherence (Ubuntu)
Medium
Unassigned

Bug Description

Ubuntu 10.04 fully patched.

UPNP/AV server on 192.168.1.1 - which is also my ISP-provided router.

VLC: sees it perfectly - if the server is active when VLC starts, VLC displays it. If it deactivates while VLC is running VLC delists it, if it restarts while VLC is running, VLC lists it again. All media is browsable and playable - perfect behavior.

Coherence uPNP inspector: If the media server is up when the inspector starts, the inspector lists it. If it deactivates while the inspector is running, the inspector delists it. BUT if the media server is then brought back UP, the inspector DOES NOT RE-LIST IT (even when "rediscover devices" in the file menu is selected). However if the media server is down when the inspector is started and then is started, the inspector DOES add it correctly. When the server is seen by the inspector, the inspector can correctly browse its contents.

Rhythmbox just plain never sees the media server at all (and I checked in the device addition signal handler - it never receives notification that a device is there under any circumstances), although it CAN see a mediatomb server on another PC in the home network.

I conclude that there is a small bug in coherence itself, or the inspector - whereby a server that deactivates and then reactivates is not being successfully re-added. And there is a more significant bug in the Rhythmbox plugin whereby it is never being notified of the existence of a server on 192.168.1.1. Of course Rhythmbox has its own issues concerning the listing of tracks from UPNP media servers such as mediatomb - but that is dealt with in another bug report.

Related branches

djmount also successfully sees the server if it is up when djmount starts, or if it starts after djmount starts, but djmount reacts badly to the server being brought down while djmount is up. When it sees the server, nautilus can quite happily browse the server content and play it.

The point is that, despite this latter bug in djmount, it SEES the server perfectly well - so whatever is happening with Rhythmbox, it is not the server that is the problem, nor is it an issue with routing tables or firewall configurations or the such.

Adil Arif (adisari06) on 2010-08-21
summary: - Coherence and Rhytmn box UPNP not seeing media server
+ Coherence and Rhythmbox UPNP not seeing media server

OK, I think I see the problem - it's a painful painful route to get there, but the basic thing I believe (not knowing anything really about UPNP) is that the MediaServerClient object built to talk to my server never sees the last_updated fields of those services being anything but None.

That field gets set (and a Coherence.UPnP.DeviceClient.Service.notified signal sent, which triggers the checking code in MediaServerClient) by the code around line 320 in service.py - but THAT code only gets called when the relevant service receives an update event from the server.

My server seems to be fairly unchatty and doesn't send an update when not necessary. The Service objects associated with my server do, already, have the info necessary to be considered complete on initialization - SO copying the code at lines 316 to 321 down to after 370 (just after the Coherence.UPnP.Service.detection_completed signal is sent) appears to solve the issue - I can now see the server and its content in Rythmbox.

HOWEVER I am not a UPNP expert and the complete lack of doc and comments in the code makes it very tough to be sure that this is the correct fix - I'd appreciate an experts eye on the matter.

Here is a patch (badly named, sorry) that does what I described in the previous post.

tags: added: patch
affects: ubuntu → coherence (Ubuntu)
Charlie_Smotherman (cjsmo) wrote :

I have forwarded this bug and patch to upstreams bug tracker

http://coherence.beebits.net/ticket/320

tags: added: patch-forwarded-upstream
Changed in coherence (Ubuntu):
importance: Undecided → Medium
Changed in coherence:
status: Unknown → New
Daniel T Chen (crimsun) on 2011-07-28
tags: added: patch-forwarded-debian
removed: patch
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package coherence - 0.6.6.2-5ubuntu1

---------------
coherence (0.6.6.2-5ubuntu1) oneiric; urgency=low

  * Apply patch from Martin Bartlett that resolves Coherence and
    Rhythmbox UPNP not seeing a media server. (LP: #621722)
 -- Daniel T Chen <email address hidden> Thu, 28 Jul 2011 18:04:41 -0400

Changed in coherence (Ubuntu):
status: New → Fix Released
Daniel T Chen (crimsun) on 2011-08-03
tags: added: patch-accepted-debian
removed: patch-forwarded-debian
Changed in coherence (Debian):
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.