<feed xmlns='http://www.w3.org/2005/Atom'>
<title>transcode.sh, branch v2.1.0</title>
<subtitle>Batch transcode helper for media files using ffmpeg.</subtitle>
<id>https://git.dennisfink.me/transcode.sh/atom/?h=v2.1.0</id>
<link rel='self' href='https://git.dennisfink.me/transcode.sh/atom/?h=v2.1.0'/>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/'/>
<updated>2026-05-23T07:07:20Z</updated>
<entry>
<title>chore(release): prepare 2.1.0</title>
<updated>2026-05-23T07:07:20Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-23T07:07:20Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=1c55ed7ccbe2adca05059c7cff12c23d8a8aef67'/>
<id>urn:sha1:1c55ed7ccbe2adca05059c7cff12c23d8a8aef67</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(readme): fix completion install filename</title>
<updated>2026-05-22T20:53:57Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T20:53:57Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=98d0febab5289604a3fa4b896c171c97e18c7110'/>
<id>urn:sha1:98d0febab5289604a3fa4b896c171c97e18c7110</id>
<content type='text'>
Update the README installation commands to reference the renamed bash
completion script with its .sh extension.

This keeps the documented install path in sync with the repository
filename so copy-paste installation commands work again.
</content>
</entry>
<entry>
<title>docs(devscripts): use runtime defaults in help text</title>
<updated>2026-05-22T20:52:13Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T20:52:13Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=721e29655935dbb42d72d156c1c2a367a301aec6'/>
<id>urn:sha1:721e29655935dbb42d72d156c1c2a367a301aec6</id>
<content type='text'>
Replace hardcoded generate-testfile help defaults with the current
variable values so usage output stays accurate when script defaults
change.

Format long printf argument lists in developer scripts one value per
line to make the placeholders easier to review and maintain.
</content>
</entry>
<entry>
<title>style(shell): use function keyword consistently</title>
<updated>2026-05-22T20:13:57Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T20:13:57Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=70ca25e5b8cf72a30743170876f2565bc4c052fe'/>
<id>urn:sha1:70ca25e5b8cf72a30743170876f2565bc4c052fe</id>
<content type='text'>
Add the function keyword to shell function definitions across the main
script, developer scripts, and bash completion file.

This makes function declarations visually consistent throughout the
project and easier to scan without changing behavior.
</content>
</entry>
<entry>
<title>fix(completion): complete long option values</title>
<updated>2026-05-22T20:12:09Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T20:12:09Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=e6df883f8bb16e24705db1937a0d1d62cef4ae9d'/>
<id>urn:sha1:e6df883f8bb16e24705db1937a0d1d62cef4ae9d</id>
<content type='text'>
Initialize bash completion with -n = so --option=value forms keep the
equals sign as part of the current word.

This fixes completion for long options that take values with equals
syntax, where pressing Tab after --option= previously failed to offer
value completions.

Update the manual sourcing hint to match the renamed .sh completion
file.
</content>
</entry>
<entry>
<title>chore(completion): add shell extension to completion file</title>
<updated>2026-05-22T17:37:03Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T17:37:03Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=b06aac7607cabd5b192cc37b357c75e933f6ed13'/>
<id>urn:sha1:b06aac7607cabd5b192cc37b357c75e933f6ed13</id>
<content type='text'>
Rename the bash completion script to use a .sh extension so its file
type is clearer in editors and tooling.

Keep the completion contents unchanged while making the filename
consistent with the script-style files in the repository.
</content>
</entry>
<entry>
<title>refactor(encoding): reuse metadata logging</title>
<updated>2026-05-22T16:53:04Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T16:53:04Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=dad27b5f2ce5fb5b907bf3c552164d032d5048fd'/>
<id>urn:sha1:dad27b5f2ce5fb5b907bf3c552164d032d5048fd</id>
<content type='text'>
Extract encode_one metadata output into a helper so dry-run and real
encoding paths print the same stream information.

Use the shared helper before running ffmpeg as well as during dry runs,
making verbose output consistent without duplicating the metadata field
list.
</content>
</entry>
<entry>
<title>docs(help): use runtime defaults in help text</title>
<updated>2026-05-22T04:55:47Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T04:55:47Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=d6cd8260465c4f1c92713e0b17df1e219fb5a2fd'/>
<id>urn:sha1:d6cd8260465c4f1c92713e0b17df1e219fb5a2fd</id>
<content type='text'>
Replace hardcoded help text defaults with the current variable values
for hardware acceleration, video stream selection, and ffmpeg loglevel.

This keeps --help accurate when defaults change in the script and avoids
duplicating default values in the formatted usage output.
</content>
</entry>
<entry>
<title>refactor(cli): simplify empty value checks</title>
<updated>2026-05-22T04:47:44Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T04:47:44Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=7c80b71f628fbe484de645aa4aad775dc0158ed4'/>
<id>urn:sha1:7c80b71f628fbe484de645aa4aad775dc0158ed4</id>
<content type='text'>
Replace indirect non-empty tests with direct -z checks when validating
option values during CLI parsing.

This keeps the intent clearer and makes all empty-value guards easier to
read without changing the validation behavior.
</content>
</entry>
<entry>
<title>feat(streams): allow selecting video probe stream</title>
<updated>2026-05-22T04:40:27Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-05-22T04:40:27Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/transcode.sh/commit/?id=3e8c51b898eb9cc888a156cb9678ec4c1478cc8d'/>
<id>urn:sha1:3e8c51b898eb9cc888a156cb9678ec4c1478cc8d</id>
<content type='text'>
Add --video-stream and [encoding].video_stream so users can choose which
input video stream is probed for preset helper variables.

Use the selected stream for codec, pixel format, frame rate, output
pixel format, and GOP size metadata while leaving preset stream mapping
unchanged.

Validate CLI stream selectors strictly and ignore invalid config values
with a warning so bad configuration falls back to the default v:0
stream.

Document the new option in the README and man page, add verbose dry-run
output, and provide bash completion for common video stream selectors.

Closes #6.
</content>
</entry>
</feed>
