[vlc-devel] All things UPNP!

mirsal mirsal at mirsal.fr
Wed Sep 14 10:02:00 CEST 2011


Hi, Jorgen !

On Wed, 2011-09-14 at 11:12 +0900, Jorgen Lundman wrote:
> I am between projects, and I thought it would be nice to give something back to 
> VLC. If that is appreciated, that is. :)
> 
> I have just finished implementing UPNP client and server for an embedded STB 
> device, so the knowledge is fresh. I also added UPNP to my own "llink" media 
> content streamer.

Great, your help would be very much appreciated indeed.

> I would propose to do the following:
> 
> * Use Cyberlink for C UPNP library, uses BSD style license.
> 
> * Implement as loadable .so/.dylib/.dll if present (this is the preferred VLC 
> way, no?)
> 
> * Implement both UPNP client, and UPNP server, with optional UPNP 
> MediaRenderer.(Remote control, not a media transcoder as the name implies).

VLC used to have a couple of UPnP A/V services discovery modules
(ControlPoint / MediaRenderer-ish in UPnP semantics) one based on pupnp
and the other on the cyberlink SDK, though the latter (cyberlink) got
removed because it was unmaintained and it had a lower code quality.

The issues we have with the client part are mostly due to limitations in
VLC's services discovery APIs.

The client code is in the main VLC repository:

http://git.videolan.org/?p=vlc.git;a=blob;f=modules/services_discovery/upnp.hpp;h=47782160a74859708ea61a9138b866686243a1cf;hb=HEAD
http://git.videolan.org/?p=vlc.git;a=blob;f=modules/services_discovery/upnp.cpp;h=3a9b174c6dc8789211d995bab51ceb191649b191;hb=HEAD

And my personal repo contains a few unmerged changes (New pupnp
initialization routines / IPv6):

http://git.videolan.org/?p=vlc/vlc-mirsal.git;a=commitdiff;h=d6c1ff88ad652ef0965d2d8cbbca0c78c4d2e94a

There is a pupnp-based MediaServer implementation somewhat in the works,
there:

http://git.videolan.org/?p=vlc/vlc-mirsal.git;a=tree;f=modules/control/dlna;h=e7cf5ea19756613f8b4459e453173214bfbb8006;hb=refs/heads/upnp-control

> However, I understand that work on UPNP may already have started. Since "too 
> many chefs spoils the broth", just let me know if that is the case.

Well, starting a cyberlink-based MediaServer module would obviously be
duplicating efforts though I certainly won't stop you from doing it.
However, help on the pupnp-based one would be very welcome.

> Let's at least have a discussion about UPNP.

Sure, do not hesitate to ping me or thresh on IRC (#videolan @freenode)

-- 
mirsal 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20110914/747549f6/attachment.sig>


More information about the vlc-devel mailing list