FF-1224 - added extra logging

This commit is contained in:
John Andrews
2024-01-27 07:52:49 +13:00
parent c72133669e
commit 4ac2abfb55
4 changed files with 16 additions and 5 deletions

View File

@@ -1,11 +1,20 @@
namespace FileFlows.VideoNodes.FfmpegBuilderNodes.EncoderAdjustments;
/// <summary>
/// Adjusts FFmpeg arguments depending on devices being used
/// </summary>
public class EncoderAdjustment
{
public static List<string> Run(List<string> args)
/// <summary>
/// Run any adjustments that are needed to FFmpeg arguments
/// </summary>
/// <param name="logger">a logger to log to</param>
/// <param name="args">the FFmpeg args to adjust</param>
/// <returns>the adjusted FFMpeg args</returns>
public static List<string> Run(ILogger logger, List<string> args)
{
if (VaapiAdjustments.IsUsingVaapi(args))
return new VaapiAdjustments().Run(args);
return new VaapiAdjustments().Run(logger, args);
return args;
}

View File

@@ -2,5 +2,5 @@ namespace FileFlows.VideoNodes.FfmpegBuilderNodes.EncoderAdjustments;
public interface IEncoderAdjustment
{
List<string> Run(List<string> args);
List<string> Run(ILogger logger, List<string> args);
}

View File

@@ -20,8 +20,9 @@ public class VaapiAdjustments : IEncoderAdjustment
/// </summary>
/// <param name="args">the ffmpeg args</param>
/// <returns>the adjusted arguments</returns>
public List<string> Run(List<string> args)
public List<string> Run(ILogger logger, List<string> args)
{
logger.ILog("Original VAAPI parameters: \n" + string.Join("\n", args));
int iIndex = args.IndexOf("-i");
if (iIndex >= 0 && VaapiHelper.VaapiLinux)
{
@@ -78,6 +79,7 @@ public class VaapiAdjustments : IEncoderAdjustment
if(filterV0 > 0 && filterV0 < args.Count - 1 && args[filterV0 + 1] == "-map")
args.RemoveAt(filterV0);
logger.ILog("Updated VAAPI parameters: \n" + string.Join("\n", args));
return args;
}
}

View File

@@ -212,7 +212,7 @@ public class FfmpegBuilderExecutor: FfmpegBuilderNode
}
// make any adjustments needed for hardware devices
ffArgs = EncoderAdjustments.EncoderAdjustment.Run(ffArgs);
ffArgs = EncoderAdjustments.EncoderAdjustment.Run(args.Logger, ffArgs);
var ffmpeg = FFMPEG;