private void ExportSamples(List <Sample> samples) { StopSamples(); Cursor = Cursors.WaitCursor; var folder = FileDialogHelper.OpenFolder(); if (folder == "") { return; } ParallelHelper.ForEach(samples, sample => { var track = SampleLibrary.GetTrackFromSample(sample); if (track == null) { return; } var outPath = Path.Combine(folder, track.Genre); if (!Directory.Exists(outPath)) { Directory.CreateDirectory(outPath); } var outFile = FileSystemHelper.StripInvalidFileNameChars($"{sample.Bpm:000.00} - {sample.TrackArtist} - {sample.TrackTitle} - {sample.Description}.wav"); outPath = Path.Combine(outPath, outFile); if (File.Exists(outPath)) { File.Delete(outPath); } AudioExportHelper.SavePartialAsWave(track.Filename, outPath, sample.Start, sample.Length, sample.Offset, sample.Gain); }); Cursor = Cursors.Default; }
/// <summary> /// Handles the Click event of the btnEdit control. /// </summary> private void btnEdit_Click(object sender, EventArgs e) { const string editPath = @"C:\Program Files (x86)\coolpro2\coolpro2.exe"; var output = Path.Combine(Path.GetTempPath(), @"Shuffler.wav"); if (!File.Exists(editPath)) { return; } AudioExportHelper.SaveAsWave(BassTrack.Filename, output); if (!File.Exists(output)) { return; } output = $"\"{output}\""; Process.Start(editPath, output); }