Re: [Banshee-List] Banshee as a UPnP client



On Mon, Jan 16, 2012 at 2:10 PM, olivier dufour <olivier duff gmail com> wrote:
> OK,
>
> So +1 for me if this in an extention disable by default to have enough time
> for advanced users to test it and not add crashs/bugs to regular user.
>
> Is Mono.UPnP client store in a backend assembly? In order to have the
> possibility to switch to an external library later if needed?

The bits from Mono.Upnp are going to be in src/Librairies. For the
curious, I've pushed my branch to my gitorious repository :
https://gitorious.org/~bl8/banshee/bl8-clone/commits/upnp_client

If we switch to an external Mono.Upnp, we'll just add a build
dependency on it and remove the folders added in there.

> About UPnP Server, I never heard about CollectionIndexer. I see it in code
> with Beroe client but do not get the key feature behind it...

The idea behind CollectionIndexer is to allow other applications to
get data from the Banshee database (tracks, etc.) through D-Bus. If
the main UI is not running, this is done through the Beroe headless
client, which goes away if you start Banshee normally.
This nice ASCII-art flow chart from Aaron might be helpful :
http://git.gnome.org/browse/banshee/tree/src/Clients/Booter/Booter/Entry.cs
I love pointing people to that, just for kicks ;)

> On Mon, Jan 16, 2012 at 11:19 AM, Bertrand Lorentz
> <bertrand lorentz gmail com> wrote:
>>
>> Hi,
>>
>> On Sun, Jan 15, 2012 at 10:16 PM, olivier dufour <olivier duff gmail com>
>> wrote:
>> > Hi,
>> >
>> > I will answer with questions ;-):
>> > 1) OMG, it is very sad to hear that about Scott.
>> > 2) Is Mono.UPnP stable enough and tested enough to be used in banshee?
>> > You
>> > said that banshee will be the only one to used it and we have no
>> > maintainer
>> > on it. So I take the option to bundle it inside banshee and only take
>> > part
>> > needed but only if it is stable/tested enough of course.
>>
>> I haven't seen any crashes in my (quite limited) testing. I don't have
>> any UPnP device, so I just used the MediaTomb server.
>> I think we might see issues due to different behaviors of the various
>> servers out there, as there are already some device-specific quirks
>> handled in the code, but I hope those will not result in crashes. And
>> of course, those issues will only pop up once the code is in the wild.
>> In any case, I plan to have the UPnP extension built by default, but
>> disabled by default, so users not interested in that feature should
>> not see any difference.
>>
>> > 3) What about Rygel, I see 2 branch in the GSOC github.It seems that
>> > Rygel
>> > is for server part.
>>
>> Yes, I think the idea is to use Rygel to share your Banshee library,
>> without having to run the full Banshee app (using the
>> CollectionIndexer feature). I haven't looked into that in more details
>> for now, so any help is welcome.
>>
>> > 4) How much banshee size increase with this added ? is it big?
>>
>> What I plan to add in src/Libraries is about 800 KB, and has 223 cs
>> files. A good portion of that is a direct "translation" of the UPnP
>> spec, with classes like MusicTrack, MusicAlbum, PlaylistItem, etc.
>>
>> The full Mono.Upnp source is about 1.4 MB, and has 333 .cs files. The
>> difference is stuff that is interesting for a full UPnP
>> implementation, but not for our use in Banshee : a GTK+ client UI, a
>> server which shares media from the file system, a
>> MSMediaReceiverRegistrar (whatever that is), etc.
>>
>> The reason I'm suggesting bundling part of the source is that I'm not
>> willing to maintain the whole of Mono.Upnp myself, but I think we can
>> handle bugfixes to a subset of it as part of Banshee, and have those
>> bugfixes flow back to the mono/mono-upnp repo.
>>
>>
>> > Anyway, UPnP support is a really important missing feature.
>> > Hope we will merge it !
>> >
>> > cheers,
>> > Olivier Dufour
>> >
>> >
>> >
>> > On Sun, Jan 15, 2012 at 8:23 AM, Alexander Kojevnikov <alexk gnome org>
>> > wrote:
>> >>
>> >> Hi Bertrand,
>> >>
>> >> Thank you for working on this, it was on my TODO list for awhile, but
>> >> unfortunately I never found time...
>> >>
>> >> On 15 January 2012 02:27, Bertrand Lorentz <bertrand lorentz gmail com>
>> >> wrote:
>> >> > Hi everyone,
>> >> >
>> >> > As you might know, there's been a lot of work done towards enabling
>> >> > Banshee to act as a UPnP client (browse and play music and videos in
>> >> > Banshee by connecting to a UPnP media server). The lastest effort
>> >> > being from Tobias Arrskog, our 2011 Summer of Code student. You can
>> >> > read about his work at http://topfs2.wordpress.com/
>> >> >
>> >> > So we have for some time now a working extension, which uses
>> >> > Mono.Upnp, but Tobias's branch hasn't been merged yet into the main
>> >> > git repository. My understanding is that we were waiting on a release
>> >> > of Mono.Upnp, to be able to have it as a dependency.
>> >> > Sadly, Scott Thomas Peterson, the creator of Mono.Upnp, passed away a
>> >> > few months ago.
>> >> >
>> >> > I would really like to have UPnP support for the release of Banshee
>> >> > 2.4, which I plan to dedicate to Scott.
>> >>
>> >> I'm very saddened to hear about Scott.
>> >>
>> >> > So, unless someone steps up as a maintainer of Mono.Upnp in the
>> >> > coming
>> >> > days and makes a release, I plan to add the necessary source bits of
>> >> > Mono.Upnp in the Banshee source tree (in src/Libraries), make the
>> >> > extension use them, and merge this in git master. In fact, I've
>> >> > already done this in my local repo, and it works well for me (with
>> >> > MediaTomb as a server).
>> >> >
>> >> > I realize bundling source code is not ideal, but in this case I think
>> >> > it's the best solution for now :
>> >> > - AFAIK, we are the only consumer of Mono.Upnp.
>> >> > - Mono.Upnp contains a lot of other stuff that is not used by Banshee
>> >> > (server stuff, client GUI, etc.). So maintaining the bundled source
>> >> > is
>> >> > less effort than maintaining the whole thing.
>> >> > - This allows us to offer uPnP support without adding any external
>> >> > dependencies.
>> >> > - This is not really different from the situation for our DAAP
>> >> > support
>> >> >
>> >> > In any case, if somebody picks up Mono.Upnp in the future, we will
>> >> > then drop the bundled source and depend on it as an external
>> >> > dependency.
>> >> >
>> >> > So what do you think about this ? Any thoughts or objections ?
>> >>
>> >> Why not commit it to the main repo at mono/mono-upnp? In August I
>> >> asked Miguel to add this repo to the Banshee team, we now have full
>> >> access to it.
>> >>
>> >> > Please keep in mind that I'm only speaking about Banshee acting as a
>> >> > client, not sharing your Banshee library through UPnP.
>> >> >
>> >> > --
>> >> > Bertrand Lorentz
>> >>
>> >> Thanks again!
>> >>
>> >> Cheers,
>> >> Alex
>> _______________________________________________
>> banshee-list mailing list
>> banshee-list gnome org
>> http://mail.gnome.org/mailman/listinfo/banshee-list  (unsubscribe here)
>
>
>
> _______________________________________________
> banshee-list mailing list
> banshee-list gnome org
> http://mail.gnome.org/mailman/listinfo/banshee-list  (unsubscribe here)



-- 
Bertrand Lorentz


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]