public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.HasVideo = false; infoToUpdate.VideoStream = null; return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.VideoStream.VideoMetadata.Width = Width.GetValueOrDefault(); infoToUpdate.VideoStream.VideoMetadata.Height = Height.GetValueOrDefault(); infoToUpdate.VideoStream.VideoMetadata.CodedWidth = Width.GetValueOrDefault(); infoToUpdate.VideoStream.VideoMetadata.CodedHeight = Height.GetValueOrDefault(); return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { if (infoToUpdate.VideoStream.Duration > Length) { infoToUpdate.VideoStream.Duration = Length; } return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { switch (Duration) { case DurationType.First: return suppliedInfo.FirstOrDefault(); case DurationType.Shortest: return suppliedInfo.OrderBy(r => r.AudioStream.AudioMetadata.Duration).FirstOrDefault(); default: return suppliedInfo.OrderByDescending(r => r.AudioStream.AudioMetadata.Duration).FirstOrDefault(); } }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { var emptyMetadataInfo = MetadataInfo.Create(); emptyMetadataInfo.AudioMetadata = new AudioStreamMetadata { SampleRate = SampleRate ?? 44100, Duration = TimeSpan.MaxValue, DurationTs = long.MaxValue, }; return MetadataInfoTreeContainer.Create(AudioStream.Create(emptyMetadataInfo)); }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { if (NumberOfAudioOut > 0) { infoToUpdate.AudioStream.AudioMetadata.Duration = TimeSpan.FromSeconds(suppliedInfo.Sum(i => i.AudioStream.AudioMetadata.Duration.TotalSeconds)); } if (NumberOfVideoOut > 0) { infoToUpdate.VideoStream.VideoMetadata.Duration = TimeSpan.FromSeconds(suppliedInfo.Sum(i => i.VideoStream.VideoMetadata.Duration.TotalSeconds)); } return infoToUpdate; }
internal static MetadataInfoTreeContainer Create(IContainer container) { var instanceOfTreeContainer = new MetadataInfoTreeContainer(); if (container.Streams.OfType <VideoStream>().Any()) { instanceOfTreeContainer.VideoStream = container.Streams.OfType <VideoStream>().First().Info.Copy(); } if (container.Streams.OfType <AudioStream>().Any()) { instanceOfTreeContainer.AudioStream = container.Streams.OfType <AudioStream>().First().Info.Copy(); } return(instanceOfTreeContainer); }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { var emptyMetadataInfo = MetadataInfo.Create(); emptyMetadataInfo.VideoMetadata = new VideoStreamMetadata { Width = Size.HasValue ? Size.Value.Width : 320, Height = Size.HasValue ? Size.Value.Height : 240, AverageFrameRate = Fraction.Create(FrameRate ?? 25, 1), RFrameRate = Fraction.Create(FrameRate ?? 25, 1), Duration = Duration ?? TimeSpan.MaxValue, DurationTs = long.MaxValue, }; return MetadataInfoTreeContainer.Create(VideoStream.Create(emptyMetadataInfo)); }
internal static MetadataInfoTreeContainer Create(IContainer container) { var instanceOfTreeContainer = new MetadataInfoTreeContainer(); if (container.Streams.OfType<VideoStream>().Any()) { instanceOfTreeContainer.VideoStream = container.Streams.OfType<VideoStream>().First().Info.Copy(); } if (container.Streams.OfType<AudioStream>().Any()) { instanceOfTreeContainer.AudioStream = container.Streams.OfType<AudioStream>().First().Info.Copy(); } return instanceOfTreeContainer; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.AudioStream = null; return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.AudioStream.AudioMetadata.BitRate = Rate * 1000; return infoToUpdate; }
private MetadataInfoTreeSource(IContainer resource, SettingsCollection settings) { Settings = settings; Resource = MetadataInfoTreeContainer.Create(resource); }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { return MetadataInfoTreeContainer.Create(Resource); }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { if (Shortest) { return suppliedInfo.OrderBy(r => r.VideoStream.VideoMetadata.Duration).FirstOrDefault(); } var mainMetadataInfo = suppliedInfo.ElementAt(0); var overlayMetadataInfo = suppliedInfo.ElementAt(1); return EofAction == OverlayEofActionType.EndAll ? overlayMetadataInfo : mainMetadataInfo; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { var startTimeInSeconds = 0D; var endTimeInSeconds = infoToUpdate.VideoStream.Duration.TotalSeconds; if (End.HasValue) { endTimeInSeconds = End.Value; } else if (EndFrame.HasValue) { endTimeInSeconds = (double)EndFrame.Value / (double)infoToUpdate.VideoStream.FrameRate.ToDouble(); } else if (EndPts.HasValue) { endTimeInSeconds = (double)EndPts.Value / (double)infoToUpdate.VideoStream.Timebase.ToDouble(); } if (Start.HasValue) { startTimeInSeconds = Start.Value; } else if (StartFrame.HasValue) { startTimeInSeconds = (double)StartFrame.Value / (double)infoToUpdate.VideoStream.FrameRate.ToDouble(); } else if (StartPts.HasValue) { startTimeInSeconds = (double)StartPts.Value / (double)infoToUpdate.VideoStream.Timebase.ToDouble(); } var timeInSecondsAfterTrim = endTimeInSeconds - startTimeInSeconds; if (timeInSecondsAfterTrim < 0) { timeInSecondsAfterTrim = 0; } infoToUpdate.VideoStream.Duration = TimeSpan.FromSeconds(timeInSecondsAfterTrim); return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.VideoStream.Dimensions = Dimensions; return infoToUpdate; }
public MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.VideoStream.VideoMetadata.Duration = infoToUpdate.VideoStream.VideoMetadata.Duration - Length; return infoToUpdate; }
public virtual MetadataInfoTreeContainer EditInfo(MetadataInfoTreeContainer infoToUpdate, List<MetadataInfoTreeContainer> suppliedInfo) { infoToUpdate.VideoStream.VideoMetadata.Duration = suppliedInfo.Min(r => r.VideoStream.VideoMetadata.Duration); return infoToUpdate; }