mirror of
https://github.com/revenz/FileFlowsPlugins.git
synced 2026-01-07 23:40:35 -06:00
60 lines
1.6 KiB
C#
60 lines
1.6 KiB
C#
namespace FileFlows.VideoNodes.FfmpegBuilderNodes.Models;
|
|
|
|
public abstract class FfmpegStream
|
|
{
|
|
public const string REMOVED = "###REMOVED###";
|
|
|
|
public bool Deleted { get; set; }
|
|
public int Index { get; set; }
|
|
public string Title { get; set; }
|
|
public string Language { get; set; }
|
|
|
|
public abstract bool HasChange { get; }
|
|
public bool ForcedChange { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets the parameters for the stream
|
|
/// </summary>
|
|
/// <param name="args">the arguments</param>
|
|
/// <returns>the parameters for this stream</returns>
|
|
public abstract string[] GetParameters(GetParametersArgs args);
|
|
|
|
private List<string> _Metadata = new List<string>();
|
|
public List<string> Metadata
|
|
{
|
|
get => _Metadata;
|
|
set
|
|
{
|
|
_Metadata = value ?? new List<string>();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Args passed to get parameters
|
|
/// </summary>
|
|
public class GetParametersArgs
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the overall index for all streams
|
|
/// </summary>
|
|
public int OutputOverallIndex { get; set; }
|
|
|
|
/// <summary>
|
|
/// the index for just this type of streams
|
|
/// </summary>
|
|
public int OutputTypeIndex { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the source extension
|
|
/// </summary>
|
|
public string SourceExtension { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the destination extension
|
|
/// </summary>
|
|
public string DestinationExtension { get; set; }
|
|
}
|
|
}
|
|
|
|
|