Merge branch 'master' into release-2.2
This commit is contained in:
commit
a1690bf565
@ -4,6 +4,14 @@ Changelog
|
||||
|
||||
This changelog is used to track all major changes to Mopidy.
|
||||
|
||||
v2.2.2 (UNRELEASED)
|
||||
===================
|
||||
|
||||
Bug fix release.
|
||||
|
||||
- Files: Fix crash due to mix of text and bytes in paths that come from
|
||||
``$XDG_CONFIG_HOME/user-dirs.dirs``. (Fixes: :issue:`1676`, :issue:`1725`)
|
||||
|
||||
|
||||
v2.2.2 (UNRELEASED)
|
||||
===================
|
||||
|
||||
@ -4,62 +4,10 @@
|
||||
MPRIS clients
|
||||
*************
|
||||
|
||||
`MPRIS <http://specifications.freedesktop.org/mpris-spec/latest/>`_ is short for Media Player Remote Interfacing
|
||||
Specification. It's a spec that describes a standard D-Bus interface for making
|
||||
media players available to other applications on the same system.
|
||||
`MPRIS <http://specifications.freedesktop.org/mpris-spec/latest/>`_ is short
|
||||
for Media Player Remote Interfacing Specification. It is a spec that describes
|
||||
a standard D-Bus interface for making media players available to other
|
||||
applications on the same system.
|
||||
|
||||
The MPRIS frontend provided by the `Mopidy-MPRIS extension
|
||||
<https://github.com/mopidy/mopidy-mpris>`_ currently implements all required
|
||||
parts of the MPRIS spec, plus the optional playlist interface. It does not
|
||||
implement the optional tracklist interface.
|
||||
|
||||
|
||||
.. _ubuntu-sound-menu:
|
||||
|
||||
Ubuntu Sound Menu
|
||||
=================
|
||||
|
||||
The `Ubuntu Sound Menu <https://wiki.ubuntu.com/Sound#menu>`_ is the default
|
||||
sound menu in Ubuntu since 10.10 or 11.04. By default, it only includes the
|
||||
Rhytmbox music player, but many other players can integrate with the sound
|
||||
menu, including the official Spotify player and Mopidy.
|
||||
|
||||
.. image:: ubuntu-sound-menu.png
|
||||
:height: 480
|
||||
:width: 955
|
||||
|
||||
If you install Mopidy from apt.mopidy.com, the sound menu should work out of
|
||||
the box. If you install Mopidy in any other way, you need to make sure that the
|
||||
file located at ``extra/desktop/mopidy.desktop`` in the Mopidy git repo is
|
||||
installed as ``/usr/share/applications/mopidy.desktop``, and that the
|
||||
properties ``TryExec`` and ``Exec`` in the file points to an existing
|
||||
executable file, preferably your Mopidy executable. If this isn't in place, the
|
||||
sound menu will not detect that Mopidy is running.
|
||||
|
||||
Next, Mopidy's MPRIS frontend must be running for the sound menu to be able to
|
||||
control Mopidy. The frontend is enabled by default, so as long as you have all
|
||||
its dependencies available, you should be good to go. Keep an eye out for
|
||||
warnings or errors from the MPRIS frontend when you start Mopidy, since it may
|
||||
fail because of missing dependencies or because Mopidy is started outside of X;
|
||||
the frontend won't work if ``$DISPLAY`` isn't set when Mopidy is started.
|
||||
|
||||
Under normal use, if Mopidy isn't running and you open the menu and click on
|
||||
"Mopidy Music Server", a terminal window will open and automatically start
|
||||
Mopidy. If Mopidy is already running, you'll see that Mopidy is marked with an
|
||||
arrow to the left of its name, like in the screen shot above, and the player
|
||||
controls will be visible. Mopidy doesn't support the MPRIS spec's optional
|
||||
tracklist interface yet, so you'll not be able to select what track to play
|
||||
from the sound menu. You can use the sound menu to check what you're currently
|
||||
playing, pause, resume, and skip to the next and previous track.
|
||||
|
||||
In summary, Mopidy's sound menu integration is currently not a full featured
|
||||
client, but it's a convenient addition to an MPD client since it's always
|
||||
easily available on Unity's menu bar.
|
||||
|
||||
|
||||
Rygel
|
||||
=====
|
||||
|
||||
Rygel is an application that will translate between Mopidy's MPRIS interface
|
||||
and UPnP, and thus make Mopidy controllable from devices compatible with UPnP
|
||||
and/or DLNA. To read more about this, see :ref:`upnp-clients`.
|
||||
See the `Mopidy-MPRIS documentation <https://github.com/mopidy/mopidy-mpris>`_
|
||||
for a survey of some MPRIS clients.
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 88 KiB |
@ -37,8 +37,8 @@ There are two ways Mopidy can be made available as an UPnP MediaRenderer:
|
||||
Using Mopidy-MPRIS and Rygel, or using Mopidy-MPD and upmpdcli.
|
||||
|
||||
|
||||
upmpdcli
|
||||
--------
|
||||
Mopidy-MPD and upmpdcli
|
||||
-----------------------
|
||||
|
||||
`upmpdcli <http://www.lesbonscomptes.com/upmpdcli/>`_ is recommended, since it
|
||||
is easier to setup, and offers `OpenHome
|
||||
@ -66,86 +66,15 @@ MediaRenderer to the network, while using the MPD protocol to control Mopidy.
|
||||
4. A UPnP renderer should be available now.
|
||||
|
||||
|
||||
Rygel
|
||||
-----
|
||||
Mopidy-MPRIS and Rygel
|
||||
----------------------
|
||||
|
||||
With the help of `the Rygel project <https://live.gnome.org/Rygel>`_ Mopidy can
|
||||
be made available as an UPnP MediaRenderer. Rygel will interface with the MPRIS
|
||||
interface provided by the `Mopidy-MPRIS extension
|
||||
<https://github.com/mopidy/mopidy-mpris>`_, and make Mopidy available as a
|
||||
MediaRenderer on the local network. Since this depends on the MPRIS frontend,
|
||||
which again depends on D-Bus being available, this will only work on Linux, and
|
||||
not OS X. MPRIS/D-Bus is only available to other applications on the same
|
||||
host, so Rygel must be running on the same machine as Mopidy.
|
||||
|
||||
1. Start Mopidy and make sure the MPRIS frontend is working. It is activated
|
||||
by default when the Mopidy-MPRIS extension is installed, but you may miss
|
||||
dependencies or be using OS X, in which case it will not work. Check the
|
||||
console output when Mopidy is started for any errors related to the MPRIS
|
||||
frontend. If you're unsure it is working, there are instructions for how to
|
||||
test it in the `Mopidy-MPRIS readme
|
||||
<https://github.com/mopidy/mopidy-mpris>`_.
|
||||
|
||||
2. Install Rygel. On Debian/Ubuntu::
|
||||
|
||||
sudo apt-get install rygel
|
||||
|
||||
3. Enable Rygel's MPRIS plugin. On Debian/Ubuntu, edit ``/etc/rygel.conf``,
|
||||
find the ``[MPRIS]`` section, and change ``enabled=false`` to
|
||||
``enabled=true``.
|
||||
|
||||
4. Start Rygel by running::
|
||||
|
||||
rygel
|
||||
|
||||
Example output::
|
||||
|
||||
$ rygel
|
||||
Rygel-Message: New plugin 'MediaExport' available
|
||||
Rygel-Message: New plugin 'org.mpris.MediaPlayer2.mopidy' available
|
||||
|
||||
In the above example, you can see that Rygel found Mopidy, and it is now
|
||||
making Mopidy available through Rygel.
|
||||
See the `Mopidy-MPRIS <https://github.com/mopidy/mopidy-mpris>`_ documentation
|
||||
for how to setup Rygel to make Mopidy an UPnP MediaRenderer.
|
||||
|
||||
|
||||
The UPnP-Inspector client
|
||||
=========================
|
||||
|
||||
`UPnP-Inspector <http://coherence.beebits.net/wiki/UPnP-Inspector>`_ is a
|
||||
graphical analyzer and debugging tool for UPnP services. It will detect any
|
||||
UPnP devices on your network, and show these in a tree structure. This is not a
|
||||
tool for your everyday music listening while relaxing on the couch, but it may
|
||||
be of use for testing that your setup works correctly.
|
||||
|
||||
1. Install UPnP-Inspector. On Debian/Ubuntu::
|
||||
|
||||
sudo apt-get install upnp-inspector
|
||||
|
||||
2. Run it::
|
||||
|
||||
upnp-inspector
|
||||
|
||||
3. Assuming that Mopidy is running with a working MPRIS frontend, and that
|
||||
Rygel is running on the same machine, Mopidy should now appear in
|
||||
UPnP-Inspector's device list.
|
||||
|
||||
4. If you expand the tree item saying ``Mopidy
|
||||
(MediaRenderer:2)`` or similiar, and then the sub element named
|
||||
``AVTransport:2`` or similar, you'll find a list of commands you can invoke.
|
||||
E.g. if you double-click the ``Pause`` command, you'll get a new window
|
||||
where you can press an ``Invoke`` button, and then Mopidy should be paused.
|
||||
|
||||
Note that if you have a firewall on the host running Mopidy and Rygel, and you
|
||||
want this to be exposed to the rest of your local network, you need to open up
|
||||
your firewall for UPnP traffic. UPnP use UDP port 1900 as well as some
|
||||
dynamically assigned ports. I've only verified that this procedure works across
|
||||
the network by temporarily disabling the firewall on the the two hosts
|
||||
involved, so I'll leave any firewall configuration as an exercise to the
|
||||
reader.
|
||||
|
||||
|
||||
Other clients
|
||||
=============
|
||||
Clients
|
||||
=======
|
||||
|
||||
For a long list of UPnP clients for all possible platforms, see Wikipedia's
|
||||
`List of UPnP AV media servers and clients
|
||||
|
||||
@ -103,13 +103,16 @@ See :ref:`config` for general help on configuring Mopidy.
|
||||
|
||||
A list of domains allowed to perform Cross-Origin Resource Sharing (CORS)
|
||||
requests. This applies to both JSON-RPC and WebSocket requests. Values
|
||||
should be in the format ``hostname:port`` and separated by either a comma or
|
||||
newline.
|
||||
should be in the format ``hostname:port``, should not specify any scheme and
|
||||
be separated by either a comma or newline. Additionally, the ``port`` should
|
||||
not be specified if it is the default (80 for http, 443 for https).
|
||||
|
||||
Same-origin requests (i.e. requests from Mopidy's web server) are always
|
||||
allowed and so you don't need an entry for those. However, if your requests
|
||||
originate from a different web server, you will need to add an entry for
|
||||
that server in this list.
|
||||
that server in this list. For example, to allow requests from a web server
|
||||
at 'http://www.my.web-client.com' you would specify the entry
|
||||
'www.my.web-client.com'.
|
||||
|
||||
.. confval:: http/csrf_protection
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user