aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* fix(core): pass filename as separate argument to msg/error callsDennis Fink2026-02-24
| | | | | | | Aligns with the two-argument calling convention used elsewhere in the script, where the bold label and the highlighted value are passed as separate arguments. Also moves the preset name out of the error string in load_preset for the same reason.
* docs: document all variables available to presetsDennis Fink2026-02-24
| | | | | | | Previously only output_pixel_format was mentioned. All three variables (input_codec, input_pixel_format, output_pixel_format) are now listed with descriptions in the script header comment, the README, and the man page.
* chore: add BSD-3-Clause license textDennis Fink2026-02-22
|
* docs: document base ffmpeg arguments passed before preset ffargsDennis Fink2026-02-22
| | | | | | | | | | | Both the README and the man page now explain that the script always passes -map 0, -map_metadata 0, -map_chapters 0, and -c copy to ffmpeg before appending the preset's ffargs array. This context is important for preset authors, who only need to override the streams they intend to re-encode. Also fix a minor blockquote rendering issue in the README (missing blank line before the fenced code block in the PATH note).
* feat: initial release of transcode.sh v1.0.0Dennis Fink2026-02-22
Batch transcode helper for media files using ffmpeg. Encoding parameters are supplied by user-defined preset files (shell snippets that set an `ffargs` array) stored under ${XDG_CONFIG_HOME:-$HOME/.config}/transcode.sh/presets/. Key capabilities: - Probes input codec and pixel format via ffprobe; derives an output pixel format that preserves chroma subsampling and bit depth. - Per-user and per-invocation codec skip lists to leave already-encoded files untouched. - Atomic in-place replacement: encodes to a temp file in the same directory, then renames on success. - --only-if-smaller: discard the result if it is larger than the original. - --saving: append filename, original/new sizes and percentage saved to a log file after each successful encode. - --dry-run, --verbose, --quiet, --nice and --continue flags. - Respects the NO_COLOR standard. - Script hardening: strict PATH, safe IFS, errtrace, nounset, pipefail. Also included: - Man page (transcode.sh.1) - Bash completion script (transcode.sh.bash-completion) - README.md - .gitmessage commit message template License: BSD-3-Clause