Beispiel #1
0
        protected override void Execute()
        {
            _file      = App.CurrentFile;
            _fileTasks = new FileTasks(_file);
            _fileTasks.EnforceStereoFileOpen();
            _fileTasks.ZoomOutFull();

            FileMarkersWrapper     markers = new FileMarkersWrapper(_file);
            TrackMarkerNameBuilder trackMarkerNameBuilder = new TrackMarkerNameBuilder();
            TrackMarkerFactory     markerAndRegionFactory = new TrackMarkerFactory(markers, Output, trackMarkerNameBuilder);

            _splitTrackList = new SplitTrackList(markerAndRegionFactory, markerAndRegionFactory, trackMarkerNameBuilder, markers, new TrackMarkerSpecifications(), Output);

            _vinylRipOptions     = new VinylRipOptions();
            _noiseprintSelection = _fileTasks.EnforceNoisePrintSelection(App, _vinylRipOptions.NoiseprintLengthSeconds);

            // TODO: aiming to get this to re-use the initialisation from VinylRip2, then once valid/initialized, throw up the confirm tracks form and do the existing processing/splitting
            // TODO: validate tracks

            DialogResult result = ConfirmTrackSplitsForm(Script.Application.Win32Window);

            if (result == DialogResult.Cancel)
            {
                return;
            }

            DoFinalAudioClean();
            Directory.CreateDirectory(_outputDirectory);

            _splitTrackList.InitTracks(_vinylRipOptions);
            _splitTrackList.DumpToScriptWindow();

            DoTrackSplitting(_splitTrackList, trackMarkerNameBuilder);
        }
Beispiel #2
0
        protected override void Execute()
        {
            _file      = App.CurrentFile;
            _fileTasks = new FileTasks(_file);
            _fileTasks.EnforceStereoFileOpen();
            _fileTasks.ZoomOutFull();

            FileMarkersWrapper     markers = new FileMarkersWrapper(_file);
            TrackMarkerNameBuilder trackMarkerNameBuilder = new TrackMarkerNameBuilder();
            TrackMarkerFactory     markerAndRegionFactory = new TrackMarkerFactory(markers, Output, trackMarkerNameBuilder);

            _splitTrackList = new SplitTrackList(markerAndRegionFactory, markerAndRegionFactory, trackMarkerNameBuilder, markers, new TrackMarkerSpecifications(), Output);

            _vinylRipOptions = new VinylRipOptions();

            // TODO: validate tracks

            _splitTrackList.InitTracks(_vinylRipOptions);
            _splitTrackList.DumpToScriptWindow();

            EditTracksViewModel viewModel = new EditTracksViewModel(_fileTasks);

            EditTracksController controller = new EditTracksController(App, new EditTracksFormFactory(), this, Output, _fileTasks);

            controller.Edit(viewModel, _splitTrackList, _vinylRipOptions);
        }
Beispiel #3
0
        //TODO: clear console
        //TODO: come up with a way of saving settings between script runs, and between the 2 scripts (save options to json?)
        protected override void Execute()
        {
            _file      = App.CurrentFile;
            _fileTasks = new FileTasks(_file);
            _fileTasks.EnforceStereoFileOpen();
            _fileTasks.ZoomOutFull();

            //TODO: retain marker positions in script and undo NOT working!
            //_file.UndosAreEnabled = true;
            //int undoId = _file.BeginUndo("PrepareAudio");
            //_file.EndUndo(undoId, true);

            _vinylRipOptions     = new VinylRipOptions();
            _noiseprintSelection = _fileTasks.EnforceNoisePrintSelection(App, _vinylRipOptions.NoiseprintLengthSeconds);

            _file.Markers.Add(new SfAudioMarker(_noiseprintSelection));
            CleanVinylRecording(AggressiveCleaningPreset, 3, _noiseprintSelection); //TODO: configure number of noise reduction passes?

            _vinylRipOptions.StartScanFilePositionInSamples = _file.SecondsToPosition(_vinylRipOptions.NoiseprintLengthSeconds);

            _trackList = FindTracks(App, _file);

            App.DoMenuAndWait("Edit.UndoAll", false);

            FileMarkersWrapper markers       = new FileMarkersWrapper(_file);
            TrackMarkerFactory regionFactory = new TrackMarkerFactory(markers, Output, new TrackMarkerNameBuilder());

            foreach (TrackDefinition track in _trackList)
            {
                regionFactory.CreateRegion(track.Number, track.StartPosition, track.Length);
            }
        }
Beispiel #4
0
 public void Edit(EditTracksViewModel viewModel, SplitTrackList tracks, VinylRipOptions options)
 {
     _options = options;
     _tracks  = tracks;
     _vm      = viewModel;
     viewModel.Build(tracks, _entryPoint.ScriptTitle);
     _form = _formFactory.Create(viewModel, this, _output);
     BindFormActions();
     if (_vm.HasTracks)
     {
         _vm.CurrentTrack = tracks.GetTrack(1);
     }
     _form.ShowDialog(_app.Win32Window);
 }
Beispiel #5
0
 public TrackList(VinylRipOptions vinylRipOptions, ISfFileHost file)
 {
     _vinylRipOptions = vinylRipOptions;
     _file            = file;
 }