-
Notifications
You must be signed in to change notification settings - Fork 587
Coherence (abandoned)
Coherence is abandoned, Cohen3 is an untested alternative
What is Coherence?
- a DLNA/UPnP MediaServer stand-alone application, which exports local/home or online media files via its backends to other UPnP clients.
- an audio/video DLNA/UPnP MediaRenderer stand-alone application, based on the GStreamer framework .
- Cadre: an image DLNA/UPnP MediaRenderer stand-alone application, to be used as a picture frame.
- Mirabeau: a standalone UPnP bridge application, to share your UPnP content between two or more local networks over the Internet (work in progress).
- The Inspector: a UPnP Device and Service analyzer/debugger tool, which can also be used as a UPnP ControlPoint.
- Puncher: a command-line UPnP InternetGatewayDevice manipulation tool
- Plugins or extensions for other applications to open them to the UPnP world, thanks to the framework (either as MediaServers, ControlPoints or MediaRenderers). This includes Totem, Nautilus, Eye Of Gnome, Rythmbox, Banshee, Elisa, amarok...
The media server supports Transcoding (experimental). The toolkit is known to work on various Linux flavors, BSD, (Open)Solaris and Windows. It can be installed either as a standard python source-code download or through various OS-specific packages.
The Ampache backend has the following options:
- name: the name this backend should show up on your UPnP clients, defaults to Ampache
-
url: the url to access your Apache’s XML-API Example:
http://mydnsname.com/ampache
- key: the password to access the XML-API, for use with Ampache 3.3 and earlier.
- user: required username of the user you wish to authenticate to the XML-API with.
- password: the password for the username.
- version: optional, to define a different UPnP device version for that backend
<plugin active="yes">
<url>ampache/ampache/server/xml.server.php</url>
<backend>AmpacheStore</backend>
<name>Ampache</name>
<key>llama</key>
<user>username</user>
<password>username</password>
</plugin>
The user and password are the same as the username and password you use to log into the web interface.
coherence.add_plugin('AmpacheStore',
name='MyAmpache',
url='http://ampache-host/ampache/server/xml.server.php',
key='yourpassword')
coherence_service = dbus.SessionBus().get_object('org.Coherence','/org/Coherence')
coherence_service.add_plugin('AmpacheStore',
{'name':'MyAmpache,
'url'='http://ampache-host/ampache/server/xml.server.php',
'key'='yourpassword'},
dbus_interface='org.Coherence',
reply_handler=add_plugin_callback,
error_handler=error_callback)
coherence --plugin=backend:AmpacheStore,url:http://ampache-host/ampache/server/xml.server.php,key:yourpassword
You must setup a multicast route for UPnP messages, in this example with eth0 as the interface you want them to travel over.
route add -net 239.0.0.0 netmask 255.0.0.0 eth0
Running from the command line
To see of Coherence can connect to Ampache, run the following command. Be sure to change "ampache-host" to your Ampache host and add your RPC key after "key:"
coherence --plugin=backend:AmpacheStore,url:http://ampache-host/ampache/server/xml.server.php,key:YOURPASS_FROM_RPC_ACL
Then you should see something that resembles the following:
Coherence UPnP framework version 0.5.8 starting... (coherence/base.py:251)
WARN webserver Oct 22 09:31:44 WebServer on port 59615 ready (coherence/base.py:106)
WARN mediaserver Oct 22 09:31:45 Ampache MediaServer (Ampache storage) activated (coherence/upnp/devices/media_server.py:521)