···11+# ari's VOD uploader
22+33+This tool stitches together livestream VOD segments and automatically uploads
44+them to YouTube.
55+66+This tool expects to be run in a directory containing a [metadata](#metadata)
77+file, and targeting a footage directory containing `.mkv` files (these are
88+really quick and easy to stitch together).
99+1010+The template [title](template/title.txt) and
1111+[description](template/description.txt) files contain my current format
1212+for VOD upload metadata. They use generic Go templates
1313+1414+## Basic usage
1515+1616+Initialise a VOD directory:
1717+```sh
1818+vod-uploader --init /path/to/media
1919+```
2020+2121+Upload a VOD, deleting the redundant full VOD export afterwards:
2222+```sh
2323+vod-uploader -d /path/to/media
2424+```
2525+2626+## Metadata
2727+2828+When `--init`ialising a directory, a `metadata.toml` file is created. This is a
2929+plain-text file providing some simple options to customise uploads per
3030+directory. See this example file with additional comments:
3131+3232+```toml
3333+# The title of the stream
3434+title = 'Untitled Stream'
3535+# (Optional) The part of an episodic stream. 0 assumes this is not episodic.
3636+part = 0
3737+# The date of the stream
3838+date = '2026-01-28'
3939+# (Optional) Additional tags to add to this VOD's metadata.
4040+tags = ['livestream', 'VOD']
4141+# (Optional) Footage directory override, for more complex directory structures.
4242+footage_dir = 'footage'
4343+# Set to `true` by the tool when the VOD has been uploaded successfully.
4444+# Prevents future uploads unless `--force` is used.
4545+uploaded = false
4646+4747+# (Optional) Category details, for additional credits.
4848+[category]
4949+#
5050+name = 'This Thing'
5151+# Valid types: gaming, other (default: other)
5252+type = 'other'
5353+url = 'https://example.org'
5454+```
5555+5656+## Options
5757+- `-h`, --help`: Show a help message.
5858+- `-v`, --verbose`: Show verbose logging output.
5959+- `--init`: Initialise `directory` as a VOD directory.
6060+- `-d`, --deleteAfter`: Deletes the full VOD after upload.
6161+- `-f`, --force`: Force uploading the VOD, even if it already exists.
6262+6363+*made with <3 by ari melody, 2026*
···11-{{.Title.Name}}{{if gt .Part 0}}, part {{.Part}}{{end}} | ari melody LIVE 💚 | {{.Date}}
11+{{.Title}}{{if gt .Part 0}}, part {{.Part}}{{end}} | ari melody LIVE 💚 | {{.Date}}