This software contains UPnP/DLNA components, including MediaRenderer and MediaServer, used for device-to-device communication and media streaming.
For users, Coherence is a standalone DLNA/UPnP MediaServer that exports both local and remote media files via its backends to other UPnP clients. Additionally, users can control the DLNA/UPnP MediaRenderer using GStreamer or Rhythmbox. It works seamlessly on different operating systems, including Linux, BSD, and Windows.
For application developers, Coherence provides a framework written in Python that incorporates an emerging DBus API. The API allows applications to participate in digital living networks, especially in the UPnP universe. The goal of Coherence is to help developers relieve their applications of UPnP-related tasks. At its core, Coherence provides a complete implementation of a SSDP server, MSEARCH client, server and client for HTTP/SOAP requests, and server and client for Event Subscription and Notification (GENA).
UPnP device implementations can be grouped around the core. Developers can attach a MediaServer device or a MediaRenderer device. Alternatively, they can attach both or two MediaServers and a ControlPoint. This is where one of Coherence's particular features comes in handy. Coherence enables developers to make a connection between the core and its backend, which is like a dock for the backend to be plugged in. Consequently, a device implementation is simply a translation map between the core and its backend.
As an example, a MediaServer connects to the core via the ContentDirectory and ConnectionManager services, and bridges them to a filesystem backend. Alternatively, it can bridge them to a more robust MediaStore of a MediaCenter, exposing its content pre-sorted by album, artist, genre, etc.
Coherence supports various devices, including PlayStation 3 (Firmware 2.10) using Coherence 0.5.0, TV Acer AT MGW 3705 using Coherence 0.5.2, and Nokia N800.
In summary, Coherence is an all-inclusive UPnP/DLNA devices solution that caters to both users and application developers. Its ease of use, versatility, and cross-platform compatibility make it an excellent choice for anyone who needs a comprehensive solution to manage media files.
Version 0.6.4: N/A