public IngestOperationViewModel(IIngestOperation operation, IPreview preview, IEngine engine) : base(operation) { _ingestOperation = operation; _engine = engine; string destFileName = $"{Path.GetFileNameWithoutExtension(operation.Source.FileName)}.{operation.MovieContainerFormat}"; _destMediaProperties = new PersistentMediaProxy { FileName = operation.DestDirectory.GetUniqueFileName(destFileName), MediaName = FileUtils.GetFileNameWithoutExtension(destFileName, operation.Source.MediaType), MediaType = operation.Source.MediaType == TMediaType.Unknown ? TMediaType.Movie : operation.Source.MediaType, Duration = operation.Source.Duration, TcStart = operation.StartTC, MediaGuid = operation.Source.MediaGuid, MediaCategory = operation.Source.MediaCategory }; _audioChannelMappingConversion = operation.AudioChannelMappingConversion; _aspectConversion = operation.AspectConversion; _audioVolume = operation.AudioVolume; _sourceFieldOrderEnforceConversion = operation.SourceFieldOrderEnforceConversion; _loudnessCheck = operation.LoudnessCheck; operation.Source.PropertyChanged += OnSourceMediaPropertyChanged; AspectConversionsEnforce = new TAspectConversion[3]; Array.Copy(AspectConversions, AspectConversionsEnforce, 3); if (preview != null) { PreviewViewmodel = new PreviewViewmodel(engine, preview) { SelectedIngestOperation = operation } } ; }
public IngestOperationViewModel(IIngestOperation operation, IEngine engine) : base(operation, engine.MediaManager) { _operation = operation; _engine = engine; _destMediaVideoFormat = operation.Source.VideoFormat; DestMediaName = FileUtils.GetFileNameWithoutExtension(operation.Source.MediaName, operation.Source.MediaType); _duration = operation.Source.Duration; _startTc = operation.Source.TcStart; _destCategory = ((IIngestDirectory)operation.Source.Directory).MediaCategory; IsMovie = operation.Source.MediaType == TMediaType.Unknown || operation.Source.MediaType == TMediaType.Movie; IsStill = operation.Source.MediaType == TMediaType.Still; _audioChannelMappingConversion = operation.AudioChannelMappingConversion; _aspectConversion = operation.AspectConversion; _audioVolume = operation.AudioVolume; _sourceFieldOrderEnforceConversion = operation.SourceFieldOrderEnforceConversion; _loudnessCheck = operation.LoudnessCheck; operation.Source.PropertyChanged += OnSourceMediaPropertyChanged; AspectConversionsEnforce = new TAspectConversion[3]; Array.Copy(AspectConversions, AspectConversionsEnforce, 3); if (engine.Preview != null) { _preview = new PreviewViewmodel(engine.Preview, true, false) { SelectedIngestOperation = operation } } ; CommandRemove = new UiCommand(o => Removed?.Invoke(this, EventArgs.Empty)); }