capture: name the render source in the exact-bounds refusal, and put its one-frame tolerance under test
The tolerance is unchanged and now derived, not assumed: frameCountFor lands in {floor(L), ceil(L)}, so a non-frame-aligned window can never miss by more than a frame. Naming the source is what tells a self-bounding render from a short one.
This commit is contained in:
@@ -100,6 +100,18 @@ RenderSettingsChoice renderSettingsFor(SourceMode mode, double /*wetDry*/) {
|
||||
return c;
|
||||
}
|
||||
|
||||
const char* renderSourceLabel(SourceMode mode) {
|
||||
switch (mode) {
|
||||
case SourceMode::MasterMix: return "master mix";
|
||||
case SourceMode::TimeSelection: return "master mix (time selection)";
|
||||
case SourceMode::SelectedTracks: return "selected tracks via master";
|
||||
case SourceMode::SelectedItems: return "selected media items";
|
||||
case SourceMode::RazorArea: return "razor edits";
|
||||
case SourceMode::Realtime: return "realtime record";
|
||||
}
|
||||
return "unknown"; // unreachable for a valid enum; never claim a source
|
||||
}
|
||||
|
||||
SourceMode sourceModeForScope(CaptureScope scope, bool itemExtentIsWindow) {
|
||||
switch (scope) {
|
||||
case CaptureScope::Item:
|
||||
|
||||
Reference in New Issue
Block a user