<feed xmlns='http://www.w3.org/2005/Atom'>
<title>transcode.sh/README.md, branch v2.0.0</title>
<subtitle>Batch transcode helper for media files using ffmpeg.</subtitle>
<id>https://git.dennisfink.me/transcode.sh/atom/README.md?h=v2.0.0</id>
<link rel='self' href='https://git.dennisfink.me/transcode.sh/atom/README.md?h=v2.0.0'/>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/'/>
<updated>2026-05-17T06:54:52Z</updated>
<entry>
<title>chore(release): prepare 2.0.0</title>
<updated>2026-05-17T06:54:52Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-17T06:54:52Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=7ec4afb9f14c96db843d9569e0c32c14283ea9a5'/>
<id>urn:sha1:7ec4afb9f14c96db843d9569e0c32c14283ea9a5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(readme): add release metadata markers</title>
<updated>2026-05-17T06:52:08Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-17T06:52:08Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=cb2b61479bf74ecd5636b06389b9651216512532'/>
<id>urn:sha1:cb2b61479bf74ecd5636b06389b9651216512532</id>
<content type='text'>
Add release version and revision date markers to the README so release
tooling can update visible project metadata automatically.

Expose the current packaged version near the top of the README without
changing the rest of the documentation structure.
</content>
</entry>
<entry>
<title>docs(licensing): add SPDX headers</title>
<updated>2026-05-16T19:47:14Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-16T19:47:14Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=f7f7769f1a9141da4823e3f33ea6152bbdb254d8'/>
<id>urn:sha1:f7f7769f1a9141da4823e3f33ea6152bbdb254d8</id>
<content type='text'>
Add SPDX copyright and license markers to repository metadata and
documentation files.

Use comment styles appropriate for git attributes, gitignore, the commit
message template, README, and justfile so license metadata is visible
without changing runtime behavior.
</content>
</entry>
<entry>
<title>feat(skip): allow overriding config skip codecs</title>
<updated>2026-05-16T13:08:15Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-16T13:08:15Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=7a33be9034e7d950459c7a30a49d544cf36e5270'/>
<id>urn:sha1:7a33be9034e7d950459c7a30a49d544cf36e5270</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>feat(backup): add original file backups</title>
<updated>2026-05-16T10:39:15Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-16T10:39:15Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=054a300fe5b81ed04f84e902e05c4f4efb95a193'/>
<id>urn:sha1:054a300fe5b81ed04f84e902e05c4f4efb95a193</id>
<content type='text'>
Add --backup-dir support so successful encodes can copy the original
file to an existing backup directory before replacing it.

Preserve each source file's absolute path below the backup directory and
avoid overwriting existing backups by appending numeric suffixes when
needed.

Document the new CLI and config option, and add directory completion for
the backup path.
</content>
</entry>
<entry>
<title>fix: allow out-of-range nice adjustments</title>
<updated>2026-05-16T06:42:23Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-16T06:42:23Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=4bb37025cf1b4516acd2746dc60ec59449e8aab0'/>
<id>urn:sha1:4bb37025cf1b4516acd2746dc60ec59449e8aab0</id>
<content type='text'>
Keep nice validation focused on accepting integer values instead of
rejecting values outside the standard -20 to 19 range.

Avoid failing early for values that nice itself accepts and clamps
internally. This gives users behavior that matches the underlying tool
instead of turning a non-error into a transcode.sh usage error.

Update help text and README wording to describe the option as a nice
adjustment, matching the command behavior.
</content>
</entry>
<entry>
<title>docs: polish README formatting</title>
<updated>2026-05-15T16:57:39Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-15T16:57:39Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=00dfe706231efe0b2296c93533c154e9957b2bfd'/>
<id>urn:sha1:00dfe706231efe0b2296c93533c154e9957b2bfd</id>
<content type='text'>
Move the preset security note before the preset path so readers see the
warning before creating or sourcing preset files.

Align the size report schema header with spaces for cleaner rendered
documentation.
</content>
</entry>
<entry>
<title>docs: fix option and help text typos</title>
<updated>2026-05-14T10:56:32Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-14T10:56:32Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=11926f03b2ba3ea52bcf9c12d4b4c58683d4935b'/>
<id>urn:sha1:11926f03b2ba3ea52bcf9c12d4b4c58683d4935b</id>
<content type='text'>
Correct the README entry for the long --encode-file=PATH form, which was
documented as --encodefile=PATH.

Also fix spacing in the generated help text for output_gop_size so the
preset variable descriptions remain aligned.
</content>
</entry>
<entry>
<title>feat(size-report): replace savings log with status reports</title>
<updated>2026-05-14T07:56:14Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-14T07:56:14Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=dc3d2cb05800d866972b7ba32022428e8474beaa'/>
<id>urn:sha1:dc3d2cb05800d866972b7ba32022428e8474beaa</id>
<content type='text'>
Rename the old savings log feature to size report across the CLI,
configuration, documentation, man page, and bash completion. The new
`--size-report` option keeps the existing `-s` shorthand, while
`--saving`, `--saving-file`, and the `[saving]` config section are
replaced by `--size-report`, `--size-report-file`, and `[size_report]`.

Extend reporting beyond successful encodes. The TSV log now gains a
leading `status` column and records encoded files, codec skips,
only-if-larger skips, and failed inputs. Size-report output also prints
per-file feedback for encoded and skipped-larger files, including
human-readable original/new sizes, bytes saved, and saved percentage.

Track batch-level report counters and print an end-of-run summary for
multi-file runs with encoded/skipped/failed counts, total bytes saved,
and the overall weighted saving percentage across successful encodes.

Document the new TSV schema in the README and man page, update examples
and config snippets, and adjust bash completion for the renamed options.

BREAKING CHANGE: `--saving` is now `--size-report`. `--saving-file` is
now `--size-report-file`. `[saving]` in config.toml is now
`[size_report]`. The TSV log gains a leading `status` column and may
contain skipped and failed rows in addition to successful encodes.
</content>
</entry>
<entry>
<title>refactor(core): remove awk and bc dependencies</title>
<updated>2026-05-10T20:07:29Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-10T20:07:29Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=077ed51e254b9a6af2259b1952e6134ead98afa2'/>
<id>urn:sha1:077ed51e254b9a6af2259b1952e6134ead98afa2</id>
<content type='text'>
Both tools were used for simple arithmetic that bash handles natively.

awk: fps rounding (num/den) replaced with round-half-up integer
arithmetic: (num + den/2) / den.

bc: savings percentage replaced with bash $(( )) arithmetic. bc was a
conditional dependency (only required with --saving), which made the
dependency story inconsistent. Removing it means the full feature set is
available with only ffmpeg, ffprobe, nice, and optionally tomlq.

Updated README requirements table, man page --saving description, SEE
ALSO section, and exit-code 127 entry accordingly.
</content>
</entry>
</feed>
