aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs
diff options
context:
space:
mode:
authorBond-009 <bond.009@outlook.com>2025-09-04 05:12:24 +0200
committerGitHub <noreply@github.com>2025-09-03 21:12:24 -0600
commitc7320dc1898f3fb5c4b1b1f62026865b0926b0b5 (patch)
tree7828e9179bed5e15ad74ba22383bab5e9e8597d6 /Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs
parent71048917dd421e4a18684d6b7878083a596ed821 (diff)
Add more robust error handling for AudioNormalizationTask (#14728)
Diffstat (limited to 'Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs')
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs21
1 files changed, 18 insertions, 3 deletions
diff --git a/Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs b/Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs
index 4245c9b12..a28f280af 100644
--- a/Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/Tasks/AudioNormalizationTask.cs
@@ -122,7 +122,14 @@ public partial class AudioNormalizationTask : IScheduledTask
}
finally
{
- File.Delete(tempFile);
+ try
+ {
+ File.Delete(tempFile);
+ }
+ catch (Exception ex)
+ {
+ _logger.LogError(ex, "Failed to delete concat file: {FileName}.", tempFile);
+ }
}
}
}
@@ -232,11 +239,10 @@ public partial class AudioNormalizationTask : IScheduledTask
},
})
{
+ _logger.LogDebug("Starting ffmpeg with arguments: {Arguments}", args);
try
{
- _logger.LogDebug("Starting ffmpeg with arguments: {Arguments}", args);
process.Start();
- process.PriorityClass = ProcessPriorityClass.BelowNormal;
}
catch (Exception ex)
{
@@ -244,6 +250,15 @@ public partial class AudioNormalizationTask : IScheduledTask
return null;
}
+ try
+ {
+ process.PriorityClass = ProcessPriorityClass.BelowNormal;
+ }
+ catch (Exception ex)
+ {
+ _logger.LogWarning(ex, "Error setting ffmpeg process priority");
+ }
+
using var reader = process.StandardError;
float? lufs = null;
await foreach (var line in reader.ReadAllLinesAsync(cancellationToken).ConfigureAwait(false))