private void OverlayButtonClick(object sender, EventArgs e) { // Диалоговое окно var outputFile = new SaveFileDialog(); outputFile.FileName = "OtputFile"; outputFile.DefaultExt = "*.mp3"; outputFile.Filter = "MP3 File (.mp3)|*.mp3"; if (outputFile.ShowDialog() != DialogResult.OK) { return; } // Создание основного трека var musicList = MusicList.Items?.Cast <string>()?.ToList(); double musicBreak; if (!double.TryParse(PauseBetweenTrack.Text, out musicBreak)) { return; } // TODO: Здесь надо дальше везде обрабатывать исключения на созданиях, наложениях и сохранениях var musicTrack = musicService.Create(musicList, musicBreak); var musicTrackLenght = musicService.GetLenght(musicList, musicBreak); // TODO: Передавать трек // Создание водяного знака var watermarkTrack = watermarkService.Create( musicTrackLenght, WatermarkPathLabel.Text, Convert.ToDouble(WatermarkRepeat.Text), Convert.ToDouble(WatermarkOffset.Text)); // Наложение водяного знака и сохранение в файл var mixingFile = watermarkService.Overlay(musicTrack, watermarkTrack, Convert.ToDouble(WatermarkOffset.Text)); watermarkService.SaveToFile(mixingFile, outputFile.FileName); }