Mopidy-dLeyna¶
Mopidy-dLeyna is a Mopidy extension that lets you play music from DLNA Digital Media Servers using the dLeyna D-Bus interface.
This extension lets you browse, search, and stream music from your NAS, PC, or any other device running a UPnP/DLNA compliant media server. Compatible devices are discovered automatically on your local network, so there is no configuration needed.
Installation¶
On Debian Linux and Debian-based distributions like Ubuntu or
Raspbian, install the mopidy-dleyna
package from apt.mopidy.com:
apt-get install mopidy-dleyna
Otherwise, first make sure the following dependencies are met on your system:
- D-Bus Python bindings, such as the package
python-dbus
in Debian/Ubuntu/Raspbian [1]. - The
dleyna-server
package available in Ubuntu 14.04 and Debian “jessie”. For other platforms, please see the dLeyna installation instructions.
Then install the Python package from PyPI:
pip install Mopidy-dLeyna
Footnotes
[1] | On some distributions such as Arch Linux, it may also
be necessary to install the dbus-glib package. |
Configuration¶
This extension provides a number of configuration values that can be tweaked. However, the default configuration should contain everything to get you up and running, and will usually require only a few modifications, if any, to match personal preferences.
Configuration Values¶
-
dleyna/enabled
¶ Whether this extension should be enabled or not.
-
dleyna/upnp_browse_limit
¶ The maximum number of objects to retrieve per UPnP Browse action, or
0
to retrieve all objects.
-
dleyna/upnp_lookup_limit
¶ The maximum number of objects to retrieve by ID in a single UPnP Search action, or
0
for no limit. Note that for this setting to have any effect, the media server must advertise that it is capable of searching for object IDs.This is an experimental setting and may be changed or removed in future versions.
-
dleyna/upnp_search_limit
¶ The maximum number of objects to retrieve per UPnP Search action, or
0
to retrieve all objects.
-
dleyna/dbus_start_session
¶ The command to start a D-Bus session bus if none is found, for example when running Mopidy as a service.
Default Configuration¶
For reference, this is the default configuration shipped with Mopidy-dLeyna release 1.2.2:
[dleyna]
enabled = true
# maximum number of objects to retrieve per UPnP Browse action, or 0
# to retrieve all objects
upnp_browse_limit = 500
# maximum number of objects to retrieve by ID in a single UPnP Search
# action (if supported by device), or 0 for no limit
upnp_lookup_limit = 20
# maximum number of objects to retrieve per UPnP Search action, or 0
# to retrieve all objects
upnp_search_limit = 100
# command to start session bus if none found, e.g. when running Mopidy
# as a service
dbus_start_session = dbus-daemon --fork --session --print-address=1 --print-pid=1
Change Log¶
v1.2.2 (2018-05-08)¶
- Add workaround for browsing errors with certain media servers.
v1.2.1 (2017-10-24)¶
- Add support for
audioBook
,audioBroadcast
andplaylistContainer
classes. - Improve handling of browse and search limits.
v1.2.0 (2016-09-23)¶
- Add
dbus_start_session
configuration value for specifying the command to start a session bus. The default is to invokedbus-daemon
directly, sodbus-launch
is no longer needed (but is still supported for now). - Check for
$XDG_RUNTIME_DIR/bus
before starting a session bus. - Update installation dependencies.
- Improve log messages if search is not supported.
v1.1.1 (2016-06-28)¶
- Add workaround for partially retrieved browse results with Kodi 16.0 DLNA server.
v1.1.0 (2016-05-21)¶
- Add
upnp_lookup_limit
configuration value (experimental). - Add support for
albumartist
queries. - Add support for minidlna “All Albums” collections.
- Add track bitrate according to DLNA specification.
- Add basic unit tests for
library
andplayback
providers. - Update documentation and build environment.
- Various code refactorings and improvements.
v1.0.5 (2016-01-22)¶
- Specify sort order when browsing.
- Add
apt.mopidy.com
to installation options. - Remove
Album.images
property (deprecated in Mopidy v1.2). - Handle exceptions in
dLeynaPlaybackProvider
.
v1.0.4 (2015-11-03)¶
- Handle uppercase characters in server UDNs.
v1.0.3 (2015-10-24)¶
- Refactor server handling.
- Handle persistent URIs in
dLeynaClient
.
v1.0.2 (2015-10-16)¶
- Improve startup error messages.
- Performance improvements.
v1.0.1 (2015-09-12)¶
- Add workaround for permanently lost media servers.
v1.0.0 (2015-08-21)¶
- Add
upnp_browse_limit
config value. - Add
upnp_search_limit
config value. - Refactor
get_images
implementation. - Improve debug output.
v0.5.3 (2015-08-19)¶
- Fix lost server handling.
- Check device’s SearchCaps when searching.
- Improve log messages.
v0.5.2 (2015-08-18)¶
- Move mapping helpers to translator module.
- Add
mopidy_dleyna.dleyna.__main__
. - Update README.rst.
v0.5.1 (2015-08-14)¶
- Start/stop D-Bus daemon from backend.
v0.5.0 (2015-08-14)¶
- Add support for album art.
v0.4.2 (2015-08-14)¶
- Use asynchronous D-Bus calls to improve performance on Raspberry Pi.
v0.4.1 (2015-08-11)¶
- Add workaround for integer conversion issues on 32 bit systems.
v0.4.0 (2015-08-11)¶
- Start session bus on headless systems or when running as a daemon.
- Use recursive search for container lookups.
- Add browse/search filters.
- Persistent URI handling.
v0.3.1 (2015-04-11)¶
- Perform search asynchronously.
v0.3.0 (2015-04-10)¶
- Add basic search capabilities.
- Return proper reference types when browsing.
v0.2.0 (2015-04-08)¶
- Add workaround for minidlna crashing on empty filter.
v0.1.0 (2015-04-07)¶
- Initial release.
License¶
Mopidy-dLeyna is Copyright (c) 2015-2018 Thomas Kemmer.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this software except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.