Skip to content
Back to top
View this page
Edit this page

# Metadata

## Variables

Streamlink supports a number of metadata variables that can be used in the following CLI arguments:

- `--title`

- `--output`

- `--record`

- `--record-and-pipe`

Metadata variables are surrounded by curly braces and can be escaped by doubling the curly brace characters, e.g. `{variable}` and `{{not-a-variable}}`.

Warning

The availability of each variable depends on the used plugin and whether that plugin supports this kind of metadata (check the metadata availability of each plugin here). Be aware that depending on the stream, certain metadata might not be available (yet), despite the plugin's implementation.

If no metadata is available for a specific variable, then its substitution will either be a short placeholder text (`--title`) or an empty string (`--output`, `--record`, `--record-and-pipe`).

Conditional variables

Variable | Description
--- | ---
`id` | The unique ID of the stream, e.g. an internal numeric ID or randomized string.
`author` | The stream's author, e.g. a channel or broadcaster name.
`category` | The stream's category, e.g. the name of a game being played, a music genre, etc.
`game` | Alias for `category`.
`title` | The stream's title, usually a short descriptive text.

Generic variables

Variable | Description
--- | ---
`plugin` | The name of the resolved plugin. See Plugins for the name of each built-in plugin.
`url` | The resolved URL of the stream.
`time` | The current timestamp. Can optionally be formatted via `{time:format}`. The format parameter string is passed to Python's datetime.strftime() method, so all the usual time directives are available. The default format is `%Y-%m-%d_%H-%M-%S`.

## Examples

    $ streamlink --title "{author} - {category} - {title}" <URL> [STREAM]
    $ streamlink --output "~/recordings/{author}/{category}/{id}-{time:%Y%m%d%H%M%S}.ts" <URL> [STREAM]

The `--json` argument always lists the conditional metadata.

    $ streamlink --json twitch.tv/bobross | jq .metadata

    {
      "id": "49163597677",
      "author": "BobRoss",
      "category": "Art",
      "title": "A Happy Little Weekend Marathon!"
    }

Note

Streamlink is not designed as a tool for general-purpose metadata retrieval. If your goal is to extract metadata from specific streaming sites, then it's usually a better idea to implement this metadata retrieval yourself using the available APIs of those sites or other means.