beets/docs/plugins
Max Goltzsche 58e5b02929
smartplaylist: add --uri-format option
Beets web API already allows remote players to access audio files but it doesn't provide a way to expose the playlists defined using the smartplaylist plugin.
Now the smartplaylist plugin provides an option to generate ID-based item URIs/URLs instead of paths.
Once playlists are generated this way, they can be served using a regular HTTP server such as nginx.

To provide sufficient flexibility for various ways of integrating beets remotely (e.g. beets API, beets API with context path, AURA API, mopidy resource URI, etc), the new option has been defined as a template with an `$id` placeholder (assuming each remote integration requires a different path schema but they all rely on using the beets item `id` as identifier/path segment).

To prevent local path-related plugin configuration from leaking into a HTTP URL-based playlist generation (invoked with CLI option in addition to the local playlists generated into another directory), setting the new option makes the plugin ignore the other path-related options `prefix`, `relative_to`, `forward_slash` and `urlencode`.

Usage examples:
* `beet splupdate --uri-format 'http://beets:8337/item/$id/file'` (for beets web API)
* `beet splupdate --uri-format 'http://beets:8337/aura/tracks/$id/audio'` (for AURA API)

(While it was already possible to generate playlists containing HTTP URLs previously using the `prefix` option, it did not allow to generate ID-based URLs pointing to the beets web API but required to expose the audio files using a web server directly and refer to them using their file system `$path`.)

Relates to #5037
2023-12-16 05:37:27 +01:00
..
absubmit.rst Fix various typos 2023-08-09 21:26:15 -04:00
acousticbrainz.rst Deprecate absubmit and update acousticbrainz plugins 2023-02-20 17:42:07 -05:00
advancedrewrite.rst advancedrewrite: Add note about quoting issues to docs 2023-12-15 17:14:00 +01:00
albumtypes.rst Add note to albumtypes plugin docs about #4528 2023-02-28 08:53:21 +01:00
aura.rst Fix various typos 2023-08-09 21:26:15 -04:00
autobpm.rst Add autobpm plugin 2023-09-30 16:25:06 +01:00
badfiles.rst Add docs for badfiles' check_on_import option. 2021-03-24 16:55:28 -05:00
bareasc.rst Make unicode handling explicit, to support python 2 and 3. 2021-03-16 16:29:57 +00:00
beatport.rst add cl formatting to beatport docs 2022-06-08 22:11:51 -07:00
beetsweb.png Recompress png file (#2552) 2017-05-05 19:52:55 +01:00
bpd.rst Add broken link checker to integration test (#3703) 2020-09-04 15:42:36 -05:00
bpm.rst Remove write option from bpm and use import.write 2016-05-06 17:50:27 +01:00
bpsync.rst Fix spelling 2019-10-05 20:59:47 -07:00
bucket.rst docs: fix some markup issues and typos 2019-04-27 12:43:13 +10:00
chroma.rst Swap links 2020-10-08 00:35:03 -07:00
convert.rst Fix m3u8 wikipedia link in convert plugin docs 2023-04-21 22:12:17 +02:00
deezer.rst Add changelog and docs 2023-07-10 08:32:29 -04:00
discogs.rst Add singleton matching info to Discogs plugin docs 2023-07-20 09:12:42 +02:00
duplicates.rst slight language tweak in duplicates plugin docs 2016-09-10 16:53:53 -04:00
edit.rst edit: add documentation 2016-02-05 13:12:46 +01:00
embedart.rst Updated language 2023-04-21 07:58:37 -04:00
embyupdate.rst docs[embyupdate]: add docs for userid option 2023-08-24 20:12:04 -07:00
export.rst Add "beet export --album" (matching "beet info --album") 2021-10-27 08:55:36 -07:00
fetchart.rst Fix the error with CAA where the pre-sized thumbs of release groups would be ignored 2023-10-07 21:25:02 +02:00
filefilter.rst Update filefilter.rst 2015-01-26 23:26:54 +01:00
fish.rst Tiny wording tweaks for #4281 2022-02-16 16:34:38 -05:00
freedesktop.rst docs: fix some markup issues and typos 2019-04-27 12:43:13 +10:00
fromfilename.rst docs: add plugin name in "how to configure" sentences 2014-10-28 23:23:10 +01:00
ftintitle.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
fuzzy.rst doc: emphasize options names by using bold font instead of fixed width 2014-11-07 22:13:25 +01:00
gmusic.rst remove the gmusic plugin 2021-10-30 14:46:14 +02:00
hook.rst Refine docs for the hook plugin 2016-04-30 15:12:07 -07:00
ihate.rst Remove stray space in docs 2016-01-18 16:08:54 -05:00
importadded.rst importadded: adapt doc for new option preserve_write_mtimes 2016-03-22 06:24:09 +01:00
importfeeds.rst Add docs for new importfeeds list format in #4863 2023-07-27 07:56:14 +02:00
index.rst Fix capitalization 2023-10-25 15:11:03 -04:00
info.rst Add "beet info --album" to the plugin documentation too 2021-10-26 09:09:44 -07:00
inline.rst Add docs note for custom-field sorting, fix typo 2015-11-25 19:15:01 +01:00
ipfs.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
keyfinder.rst Add broken link checker to integration test (#3703) 2020-09-04 15:42:36 -05:00
kodiupdate.rst kodiupdate: Support multiple instances 2021-12-12 13:39:18 +01:00
lastgenre.rst lastgenre: Make TitleCasing optional 2020-12-15 23:37:16 +00:00
lastimport.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
limit.rst Fix various typos 2023-08-09 21:26:15 -04:00
loadext.rst Add loadext plugin 2019-04-21 15:10:28 +01:00
lyrics.rst Add config option to prefer synced lyrics over plain 2023-11-05 11:26:33 -05:00
mbcollection.rst docs: clarify mbcollection options 2020-06-08 16:29:33 -04:00
mbsubmit.rst mbsubmit: document new prompt choices 2023-12-05 19:21:38 +02:00
mbsync.rst docs: fix some markup issues and typos 2019-04-27 12:43:13 +10:00
metasync.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
missing.rst beetsplug: implement missing -a -t 2017-03-18 19:05:46 -04:00
mpdstats.rst Fix docs and changelog 2021-02-22 14:28:14 +01:00
mpdupdate.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
parentwork.rst Get the date of the parentwork, which may be different from the date of the child work. 2020-07-03 09:35:15 -07:00
permissions.rst Updated permissions plugin docs 2015-02-17 11:41:15 +01:00
play.rst docs: fix some markup issues and typos 2019-04-27 12:43:13 +10:00
playlist.rst Further improve playlist plugin docs 2022-11-29 08:27:35 +01:00
plexupdate.rst Revert the configuration section back to how it was before 2023-01-22 14:37:45 +01:00
random.rst Docs fixes for #2322 2016-12-26 16:10:46 -05:00
replaygain.rst Fix various typos 2023-08-09 21:26:15 -04:00
rewrite.rst Final take on rewording rewrite plugin docs 2023-09-08 19:24:34 +02:00
scrub.rst doc: emphasize options names by using bold font instead of fixed width 2014-11-07 22:13:25 +01:00
smartplaylist.rst smartplaylist: add --uri-format option 2023-12-16 05:37:27 +01:00
sonosupdate.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
spotify.rst Merge pull request #4352 from arsaboo/spotify_extend 2022-06-12 17:33:29 -04:00
subsonicplaylist.rst Update docs/plugins/subsonicplaylist.rst 2020-05-05 10:45:43 +02:00
subsonicupdate.rst Add docs for subsonicupdate features in #4862 2023-07-27 07:41:50 +02:00
substitute.rst Fix typos 2023-09-25 12:52:26 +08:00
the.rst doc: emphasize options names by using bold font instead of fixed width 2014-11-07 22:13:25 +01:00
thumbnails.rst Update a lot of URLs to use HTTPS 2019-06-05 03:11:49 +02:00
types.rst Fix example of Types plugin documentation 2015-10-18 13:46:39 +02:00
unimported.rst feat(unimported): support excluding subdirectories 2021-10-12 17:28:43 +00:00
web.rst Documentation and changelog for web `readonly` option fixing #3870. 2021-03-11 23:09:51 +00:00
zero.rst Punctuation improvements 2019-08-01 09:32:33 -04:00