Mopidy-M3U is an extension for reading and writing M3U playlists stored on disk. It is bundled with Mopidy and enabled by default.

This backend handles URIs starting with m3u:.

Migrating from Mopidy-Local playlists

Mopidy-M3U was split out of the Mopidy-Local extension in Mopidy 1.0. To migrate your playlists from Mopidy-Local, simply move them from the local/playlists_dir directory to the m3u/playlists_dir directory. Assuming you have not changed the default config, run the following commands to migrate:

mkdir -p ~/.local/share/mopidy/m3u/
mv ~/.local/share/mopidy/local/playlists/* ~/.local/share/mopidy/m3u/

Editing playlists

There is a core playlist API in place for editing playlists. This is supported by a few Mopidy clients, but not through Mopidy’s MPD server yet.

It is possible to edit playlists by editing the M3U files located in the m3u/playlists_dir directory, usually ~/.local/share/mopidy/m3u/, by hand with a text editor. See Wikipedia for a short description of the quite simple M3U playlist format.


See Configuration for general help on configuring Mopidy.

enabled = true
playlists_dir =
base_dir = $XDG_MUSIC_DIR
default_encoding = latin-1
default_extension = .m3u8

If the M3U extension should be enabled or not.


Path to directory with M3U files. Unset by default, in which case the extension’s data dir is used to store playlists.


Path to base directory for resolving relative paths in M3U files. If not set, relative paths are resolved based on the M3U file’s location.


Text encoding used for files with extension .m3u. Default is latin-1. Note that files with extension .m3u8 are always expected to be UTF-8 encoded.


The file extension for M3U playlists created using the core playlist API. Default is .m3u8.