Release Captail 0.1.6 - #16
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e4f4b7f5ea
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "alimiter=limit=0.95[mixed_audio]", | ||
| "-map", "0:v:0", | ||
| "-map", "[mixed_audio]", | ||
| "-c:v", "copy", |
There was a problem hiding this comment.
Align mixed audio with stream-copied video
For trims whose start is not a video keyframe, this combines filtered/transcoded audio with -c:v copy while the input-level -ss remains before -i. The FFmpeg -ss documentation specifies that accurate seeking discards pre-roll when transcoding but preserves it during stream copy, so the video begins at an earlier keyframe while the mixed audio begins at the requested time; -avoid_negative_ts make_zero shifts timestamps without removing that offset. This produces up to one GOP of initial silence/A/V desynchronization, and the new QA misses it because it only trims from zero.
Useful? React with 👍 / 👎.
| // Keep pending choices visible so the failing setting can be corrected. | ||
| return; |
There was a problem hiding this comment.
Preserve the pending replay toggle after apply failure
When an application attempt changes replay enablement and then fails—for example, enabling replay with a resolution that prevents pipeline startup—ApplySettingsAsync calls UpdateUiState() during rollback, and UpdateRuntimeState() unconditionally replaces SettingsReplayToggle.IsChecked with the active runtime state. Consequently, by the time this early return executes, the pending toggle has already been lost, so correcting the failing option and retrying leaves replay disabled unless the user selects it again. Preserve the candidate toggle while the settings form remains in edit mode.
Useful? React with 👍 / 👎.
What changed
Root cause
Failed settings application correctly rolled back the active configuration, but the settings window then reloaded that configuration into every control. This made pending resolution, audio, and other selections appear to reset. Separately, Captail requested two HEVC B-frames from NVENC even on GPUs where that feature is unsupported.
Validation
dotnet format --verify-no-changesgit diff --check