libdlna aims at being the reference open-source implementation
of DLNA (Digital Living Network Alliance) standards. Its primary goal is to provide DLNA support to uShare, an embedded DLNA & UPnP A/V Media Server, but it will be used to build both DLNA servers and players in the long term.
libdlna is written in C and relies on FFMPEG librairies (libavformat and libavcodec) to handle and demux A/V streams. You still need libupnp to provide basic UPnP support to your project.
libdlna is based on official DLNA specifications and aims at a providing a complete respect of the defined standards. Right now, libdlna can be used to build compliant DLNA Media Servers.
libdlna is copyright (C) 2007-2008 Benjamin Zores.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
libdlna is also available through apt-get. Simply add the following line to your /etc/apt/sources.list file :
deb http://www.geexbox.org/debian/ unstable main
and install libdlna with :
apt-get update && apt-get install libdlna0
Development Tree
The latest libdlna development tree can be grabbed using Mercurial, a revision control system, similar in purpose to tools such as CVS, SCCS, and Subversion. It is used to keep track of the changes made to a source tree and to help programmers combine and otherwise manipulate changes made by multiple people or at different times.
There are currently 2 ways of accessing the Mercurial tree: via command-line or web interface (to just have a look to some changes on a specific file, for example). You can directly access to the web interface with your browser from:
In order to access to Mercurial via command line, create and enter a new directory and do the following (be sure that you have installed the mercurial package).
To get a local copy of the libdlna Mercurial repository :
hg clone http://hg.geexbox.org/libdlna
To update your local copy of the Mercurial, synchronizing with our server :
libdlna is work in progress right now. If you're interested in its development, you're highly welcomed to join in.
Development roadmap focuses on the following:
Add complete DLNA 1.5 profiles detection
Add UPnP A/V layer (ripped from uShare) to easily create MediaServer
Many people have indirectly contributed to libdlna by sponsoring its development or by having donated DLNA certified hardware to test it with.
My eternal thanks go to these people who done so much for this project:
DLNA Specifications
Many thanks to Tim Bird (Sony) and Rahul Saxena (Intel) from CE Linux Forum : a California Non-Profit Corporation, is focused on the advancement of Linux as an open source platform for consumer electronics (CE) devices.
Nokia N95 (see here)
offered by the finnish Wippies community, which develops and introduces services which challenge the conventional ways of thinking as well as make your life a little bit easier and more enjoyable. As a Wippie, one is invited to develop new ideas and build services with us. All our services are based on open source software so that you can take part in developing services you would like to use.
If you're interested in OpenSource DLNA related programs, applications, libraries (and development as a whole), you may want to join the DLNA-Dev mailing List.