diff --git a/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs index bb90b00..6dc050b 100644 --- a/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs @@ -92,7 +92,7 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, filename); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { diff --git a/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs index 5af1e78..97468ee 100644 --- a/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs @@ -83,7 +83,7 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, filename); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { diff --git a/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs index ac91c91..68fcdd6 100644 --- a/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs @@ -56,12 +56,12 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, folderName); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { - pr.Total = total; - pr.Done = done; + pr.Total = total; + pr.Done = done; pr.ProgressText = text; _vmMain.ProgressValue = pr.Done / pr.Total; };