Command Line
Festival has some command line flags, useful for adjusting playback.
Some examples:
Play the next song:
./festival --next
Seek backwards 25 seconds in the current song:
./festival --seek-backward 25
Skip 3 songs into the queue:
./festival --skip 3
Play the 10th song in the queue:
./festival --index 10
The full list of commands:
Usage: festival [OPTIONS]
Options:
--play
Start playback
--pause
Pause playback
--toggle
Toggle playback (play/pause)
--next
Skip to next track
--previous
Play previous track
--stop
Clear queue and stop playback
--clear
Clear queue but don't stop playback
--shuffle
Shuffle the current queue and reset to the first song
--repeat-song
Turn on single `Song` track repeat
--repeat-queue
Turn on queue repeat
--repeat-off
Turn off repeating
--volume <VOLUME>
Set the volume to `VOLUME` (0-100)
--seek <SEEK>
Seek to the absolute `SEEK` second in the current song
--seek-forward <SEEK_FORWARD>
Seek `SEEK_FORWARD` seconds forwards in the current song
--seek-backward <SEEK_BACKWARD>
Seek `SEEK_BACKWARD` seconds backwards in the current song
--index <INDEX>
Set the current song to the index `INDEX` in the queue.
NOTE:
The queue index starts from 1 (first song is `--index 1`).
Providing an index that is out-of-bounds
will end the queue (even if repeat is turned on).
--skip <SKIP>
Skip `SKIP` amount of songs
If the last song in the queue is skipped over,
and queue repeat is turned on, this will reset
the current song to the 1st in the queue.
--back <BACK>
Go backwards in the queue by `BACK` amount of songs
If `BACK` is greater than the amount of songs we can
skip backwards, this will reset the current song to
the 1st in the queue.
--docs
Open documentation locally in browser
This opens `Festival'`s documentation in a web
browser, and does not start `Festival` itself.
--path
Print the PATH used by Festival
All data saved by Festival is saved here.
For more information, see:
<https://docs.festival.pm/gui#Disk>
--metadata
Print JSON metadata about the current `Collection` on disk
WARNING:
This output is not meant to be relied on (yet).
It it mostly for quick displaying and debugging
purposes and may be changed at any time.
This flag will attempt to parse the `Collection` that
is currently on disk and extract the metadata from it.
This also means the entire `Collection` will be read
and deserialized from disk, which may be very expensive
if you have a large `Collection`.
--disable-watch
Disable watching the filesystem for signals
The way a newly launched Festival communicates to
an already existing one (e.g, `festival --play`) is
by creating a file in Festival's `signal` directory.
`festival --FLAG` just creates a file in that directory,
which an existing Festival will notice and do the appropriate task.
Using `--disable-watch` will disable that part of the system so that
filesystem signals won't work, e.g, `festival --play` will not work.
--disable-media-controls
Disable OS media controls
Festival plugs into the native OS's media controls so that signals
like `play/pause/stop` and/or keyboard controls can be processed.
`--disable-media-controls` disables this.
--delete
Delete all Festival files that are currently on disk
This deletes the entire `GUI` Festival folder, which contains:
- The `Collection`
- The `Playlists`
- `GUI` settings (sort methods, color, etc)
- `GUI` state (currently selected album/artist, etc)
- Audio state (currently playing song, queue, etc)
- Cached images for the OS media controls
- Documentation files
The PATH deleted will be printed on success.
--log-level <OFF|ERROR|INFO|WARN|DEBUG|TRACE>
Set filter level for console logs
[default: INFO]
-v, --version
Print version
-h, --help
Print help (see a summary with '-h')