Metadata#
Variables#
Streamlink supports a number of metadata variables that can be used in the following CLI arguments:
Metadata variables are surrounded by curly braces and can be escaped by doubling the curly brace characters,
eg. {variable}
and {{not-a-variable}}
.
The availability of each variable depends on the used plugin and whether that plugin supports this kind of metadata.
If a variable is unsupported or not available, then its substitution will either be a short placeholder text (--title
)
or an empty string (--output
, --record
, --record-and-pipe
).
The --json
argument always lists the standard plugin metadata: id
, author
, category
and title
.
Variable |
Description |
---|---|
|
The unique ID of the stream, eg. an internal numeric ID or randomized string. |
|
The plugin name. See Plugins for the name of each built-in plugin. |
|
The stream's title, usually a short descriptive text. |
|
The stream's author, eg. a channel or broadcaster name. |
|
The stream's category, eg. the name of a game being played, a music genre, etc. |
|
Alias for |
|
The resolved URL of the stream. |
|
The current timestamp. Can optionally be formatted via The format parameter string is passed to Python's datetime.strftime() method, so all the usual time directives are available. The default format is |
Examples#
$ streamlink --title "{author} - {category} - {title}" <URL> [STREAM]
$ streamlink --output "~/recordings/{author}/{category}/{id}-{time:%Y%m%d%H%M%S}.ts" <URL> [STREAM]