diff --git a/tasks/Convert.cs b/tasks/Convert.cs index 1c51fd3..99e2c95 100644 --- a/tasks/Convert.cs +++ b/tasks/Convert.cs @@ -10,6 +10,12 @@ namespace ttrss_co_client.tasks public override string TaskName => "convert"; public override async Task> ActOn(WorkOrder wo) { + var conversionFilenameTarget = wo.data["path"].Substring(0, wo.data["path"].LastIndexOf('.')) + wo.data["conversion-target"]; + if(conversionFilenameTarget == wo.data["path"]) + { + Console.WriteLine("no conversion needed"); + return new Tuple(TaskStatus.ContinueNow, wo); + } var article = (await TtrssClient.GetArticles(wo.articleId))?.FirstOrDefault(); if(article == null){ Console.Error.WriteLine($"article {wo.articleId} couldn't be retrieved!"); @@ -17,14 +23,14 @@ namespace ttrss_co_client.tasks } var sw = new Stopwatch(); sw.Start(); - var conversionProc = Process.Start("ffmpeg", $"-y -loglevel quiet -i \"{wo.data["path"]}\" \"{wo.data["conversion-target"]}\""); + var conversionProc = Process.Start("ffmpeg", $"-y -loglevel quiet -i \"{wo.data["path"]}\" \"{conversionFilenameTarget}\""); conversionProc.WaitForExit(); sw.Stop(); - if(File.Exists(wo.data["conversion-target"])) + if(File.Exists(conversionFilenameTarget)) { - Console.WriteLine($" converted {wo.data["path"]} -> {wo.data["conversion-target"]}"); + Console.WriteLine($" converted {wo.data["path"]} -> {conversionFilenameTarget}"); File.Delete(wo.data["path"]); - wo.data["path"] = wo.data["conversion-target"]; + wo.data["path"] =conversionFilenameTarget; } diff --git a/tasks/PodcastifyYT.cs b/tasks/PodcastifyYT.cs index 351b267..6c891dc 100644 --- a/tasks/PodcastifyYT.cs +++ b/tasks/PodcastifyYT.cs @@ -11,81 +11,43 @@ namespace ttrss_co_client.tasks public override async Task ActOn(Headline headline, IEnumerable