video info now is reread if filename changes

This commit is contained in:
John Andrews
2022-06-20 19:13:46 +12:00
parent f380c9a8a7
commit 78401b0502
2 changed files with 21 additions and 2 deletions

View File

@@ -40,8 +40,16 @@ public class FfmpegBuilderStart: FfmpegBuilderNode
VideoInfo videoInfo = GetVideoInfo(args);
if (videoInfo == null)
return -1;
this.Model = Models.FfmpegModel.CreateModel(videoInfo);
args.Logger.ILog("FFMPEG Builder File: " + videoInfo.FileName);
foreach (var track in videoInfo.VideoStreams)
args.Logger.ILog($"Video Track '{track.Codec}' ({track.Width}x{track.Height}");
foreach (var track in videoInfo.AudioStreams)
args.Logger.ILog("Audio Track: " + track.Codec);
foreach (var track in videoInfo.SubtitleStreams)
args.Logger.ILog("Subtitle Track: " + track.Codec);
return 1;
}
}

View File

@@ -115,7 +115,18 @@ namespace FileFlows.VideoNodes
args.UpdateVariables(variables);
}
protected VideoInfo GetVideoInfo(NodeParameters args)
protected VideoInfo GetVideoInfo(NodeParameters args, bool refreshIfFileChanged = true)
{
var vi = GetVideoInfoActual(args);
if (refreshIfFileChanged == false || vi.FileName == args.FileName)
return vi;
vi = new VideoInfoHelper(FFMPEG, args.Logger).Read(args.WorkingFile);
SetVideoInfo(args, vi, Variables);
return vi;
}
private VideoInfo GetVideoInfoActual(NodeParameters args)
{
if (args.Parameters.ContainsKey(VIDEO_INFO) == false)
{