DLNA/UPnP Linux Server with Coherence

Coherence is a DLNA/UPnP Media Server written in Python which exports local files or online media to UPnP clients. Coherence fetch the media files from several sources such as:

  • Local applications media collections, like those from Rythmbox or Banschee,
  • Audio-CD or DVB
  • Online services like Flickr, last.fm, YouTube, Picasa Web Albums and other.

Other sources can also be added thanks to Coherence plug-in architecture. The media server supports transcoding (currently experimental) that is to convert media files in another format.

Coherence toolkit also contains other packages such as:

  • Coherence-Config: a cross-platform GUI frontend for ‘Coherence’.
  • Cadre: a picture DLNA/UPnP MediaRenderer which can display pictures from the local filesystem or from a MediaServer.
  • Mirabeau: An application level proxy for UPnP devices which allows to share your UPnP content between two or more local networks over the Internet. It uses XMPP as a transport (work in progress).
  • UPnP-Inspector:  a graphical UPnP Device and Service analyzer, and a debugging tool. Detected devices are displayed in a tree-view where actions can be called and state-variables be queried.
  • Plugins or extensions for other applications to open them to the UPnP world via Coherence framework.  Totem, NautilusRythmbox and Banshee are some applications that can take advantage of Coherence DLNA/UPnP framework.

The Coherence toolkit is known to work on various Linux flavors, BSD, (Open)Solaris and Windows. Since it is written in Python it is cross-platform and can be supported by different architecture such as x86, arm, mips, ppc etc..

Developers can also make use of Coherence framework as it provides a:

  • SSDP server
  • MSEARCH client
  • Server and client for HTTP/SOAP requests
  • Server and client for Event Subscription and Notification (GENA)
Coherence Server Block Diagram
Coherence DLNA/UPnP Architecture

If you just want to install Coherence in Ubuntu, simply run:

sudo apt-get install python-coherence

To configure it with Totem Video player in Ubuntu, follow the instructions provided on ebower.com.

Developers can download the source code in a tarball or with svn:

  • Stable version:
  • Development head:

To program with the API and hack coherence visit:

Here’s a demo of Totem with Coherence playing Movie Trailers fetch on apple.com.


Share this:

Support CNX Software! Donate via cryptocurrencies or become a Patron on Patreon

ROCK Pi 4C Plus
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
Khadas VIM4 SBC