diff options
| author | Dennis Fink | 2026-05-16 15:08:15 +0200 |
|---|---|---|
| committer | Dennis Fink | 2026-05-16 15:08:15 +0200 |
| commit | 7a33be9034e7d950459c7a30a49d544cf36e5270 (patch) | |
| tree | 3bd6e870bb042f7f122df7d51bb57d90bb5f243b /README.md | |
| parent | 054a300fe5b81ed04f84e902e05c4f4efb95a193 (diff) | |
| download | transcode.sh-7a33be9034e7d950459c7a30a49d544cf36e5270.tar.gz transcode.sh-7a33be9034e7d950459c7a30a49d544cf36e5270.zip | |
feat(skip): allow overriding config skip codecs
Add --skip-codec-override so users can ignore configured skip codecs for
a single run and use only codecs provided through --skip-codec.
Defer CLI skip-codec parsing until after config loading so the final
skip list can be resolved independently of option order.
Document the new override behavior in the README and man page, and add
shell completion for the new flag.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 20 |
1 files changed, 14 insertions, 6 deletions
@@ -134,9 +134,11 @@ An optional TOML configuration file can be placed at: ${XDG_CONFIG_HOME:-$HOME/.config}/transcode.sh/config.toml ``` -Use `--config-file FILE` to load an alternative path. CLI flags always take -precedence over values in the config file. The file must be valid TOML — an -unparseable file is a hard error. Requires `tomlq` when the file is present. +Use `--config-file FILE` to load an alternative path. CLI flags generally take +precedence over values in the config file. Skip codecs are additive by default: +configured codecs and CLI codecs are merged unless `--skip-codec-override` is +used. The file must be valid TOML — an unparseable file is a hard error. +Requires `tomlq` when the file is present. **Example `config.toml`:** @@ -169,10 +171,12 @@ quiet = false | `[output]` | `verbose` | boolean | `-v` | | `[size_report]` | `enabled` | boolean | `-s` / `--no-size-report` | | `[size_report]` | `file` | string | `--size-report-file` | -| `[skip]` | `codecs` | array of strings | `-S` (merged with CLI) | +| `[skip]` | `codecs` | array of strings | `-S` / `--skip-codec-override` | > **Note:** `[skip] codecs` from the config file and `--skip-codec` from the -> CLI are **merged** — both sources contribute to the skip list. +> CLI are **merged** by default — both sources contribute to the skip list. Use +> `--skip-codec-override` to ignore configured skip codecs and use only codecs +> provided through `--skip-codec` for that run. > **Note:** `[encoding] hwaccel` accepts `false` (disable), `true` (use `auto`), > or a method string such as `"vaapi"` or `"cuda"`. CLI `--hwaccel`/`--no-hwaccel` @@ -209,7 +213,8 @@ transcode.sh [OPTION] [--] FILE... | `-s`, `--size-report` | Print per-file size feedback and write a status TSV log | | `--no-size-report` | Disable a size report enabled in `config.toml` | | `--size-report-file PATH`, `--size-report-file=PATH` | Size report TSV path (default: `transcode_size_report`) | -| `-S LIST`, `--skip-codec LIST`, `--skip-codec=LIST` | Codecs to skip (comma/space/colon separated) | +| `-S LIST`, `--skip-codec LIST`, `--skip-codec=LIST` | Add codecs to the effective skip list (comma/space/colon separated) | +| `--skip-codec-override` | Use only codecs from `--skip-codec`, ignoring `[skip].codecs` from config | | `-l`, `--only-if-smaller` | Only replace original if new file is smaller | | `--no-only-if-smaller` | Do replace original even if new file is bigger | | `-p NAME`, `--preset NAME`, `--preset=NAME` | Preset to use (default: `default`) | @@ -238,6 +243,9 @@ transcode.sh --backup-dir ~/transcode-backups *.mp4 # Use a custom preset, only keep result if smaller, skip AV1 inputs transcode.sh --preset av1_fast --only-if-smaller --skip-codec av1 /media/films/*.mkv +# Temporarily replace the configured skip list with only HEVC +transcode.sh --skip-codec-override --skip-codec hevc input.mkv + # Run at a moderate priority and continue past failures transcode.sh --nice 10 --continue *.mp4 |
