From f10f331c2e44dbb4541877e444bbbf44bac5a4ab Mon Sep 17 00:00:00 2001 From: john Date: Tue, 20 Dec 2022 11:40:16 +1300 Subject: [PATCH] updated track remover to use variables --- .../Audio/FfmpegBuilderAudioTrackRemover.cs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/VideoNodes/FfmpegBuilderNodes/Audio/FfmpegBuilderAudioTrackRemover.cs b/VideoNodes/FfmpegBuilderNodes/Audio/FfmpegBuilderAudioTrackRemover.cs index 8bdfe3bf..b6542bff 100644 --- a/VideoNodes/FfmpegBuilderNodes/Audio/FfmpegBuilderAudioTrackRemover.cs +++ b/VideoNodes/FfmpegBuilderNodes/Audio/FfmpegBuilderAudioTrackRemover.cs @@ -46,9 +46,9 @@ public class FfmpegBuilderAudioTrackRemover: FfmpegBuilderNode { _MatchTypes = new List { - new ListOption { Label = "Title", Value = MatchTypeOption.Title }, - new ListOption { Label = "Language", Value = MatchTypeOption.Language }, - new ListOption { Label = "Codec", Value = MatchTypeOption.Codec } + new () { Label = "Title", Value = MatchTypeOption.Title }, + new () { Label = "Language", Value = MatchTypeOption.Language }, + new () { Label = "Codec", Value = MatchTypeOption.Codec } }; } return _MatchTypes; @@ -93,17 +93,18 @@ public class FfmpegBuilderAudioTrackRemover: FfmpegBuilderNode } public override int Execute(NodeParameters args) { + string pattern = args.ReplaceVariables(this.Pattern, stripMissing: true); if(string.IsNullOrEmpty(StreamType) || StreamType.ToLower() == "audio") - return RemoveTracks(Model.AudioStreams) ? 1 : 2; + return RemoveTracks(pattern, Model.AudioStreams) ? 1 : 2; if (StreamType.ToLower() == "subtitle") - return RemoveTracks(Model.SubtitleStreams) ? 1 : 2; + return RemoveTracks(pattern, Model.SubtitleStreams) ? 1 : 2; if (StreamType.ToLower() == "video") - return RemoveTracks(Model.VideoStreams) ? 1 : 2; + return RemoveTracks(pattern, Model.VideoStreams) ? 1 : 2; return 2; } - private bool RemoveTracks(List tracks) where T: FfmpegStream + private bool RemoveTracks(string pattern, List tracks) where T: FfmpegStream { bool removing = false; Regex? regex = null; @@ -119,7 +120,7 @@ public class FfmpegBuilderAudioTrackRemover: FfmpegBuilderNode continue; } - if (RemoveAll || string.IsNullOrEmpty(this.Pattern)) + if (RemoveAll || string.IsNullOrEmpty(pattern)) { track.Deleted = true; removing = true; @@ -127,7 +128,7 @@ public class FfmpegBuilderAudioTrackRemover: FfmpegBuilderNode } if (regex == null) - regex = new Regex(this.Pattern, RegexOptions.IgnoreCase); + regex = new Regex(pattern, RegexOptions.IgnoreCase); string str = ""; if(track is FfmpegAudioStream audio)