public void SaveTrack(long trackNumber, string title) { string path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyMusic), title + ".mp3"); RecordingBuffer trackBuffer = this.PopTrack(trackNumber); MP3Writer writer = new MP3Writer(); writer.WriteOutBuffer(trackBuffer, path); }
public void ClearBufferTest() { RecordingBuffer buffer = new RecordingBuffer(); buffer.AddSample(new Sample() { Id = 1 }); buffer.AddSample(new Sample() { Id = 2 }); Assert.AreNotEqual(0, buffer.Samples.Count); buffer.ClearSamples(); Assert.AreEqual(0, buffer.Samples.Count); }
private RecordingBuffer PopTrack(long trackNumber) { RecordingBuffer result = new RecordingBuffer(); result.WaveFormat = this.Buffer.WaveFormat; var samples = this.Buffer.Samples; while (samples.Count > 0 && samples[0].Id <= trackNumber) { result.AddSample(samples[0]); samples.RemoveAt(0); } return(result); }
public void AddSampleTest() { RecordingBuffer buffer = new RecordingBuffer(); Assert.AreEqual(0, buffer.Samples.Count); buffer.AddSample(new Sample() { Id = 1 }); Assert.AreEqual(1, buffer.Samples.Count); buffer.AddSample(new Sample() { Id = 2 }); Assert.AreEqual(2, buffer.Samples.Count); buffer.AddSample(new Sample() { Id = 3 }); Assert.AreEqual(3, buffer.Samples.Count); buffer.ClearSamples(); Assert.AreEqual(0, buffer.Samples.Count); buffer.AddSample(new Sample() { Id = 4 }); Assert.AreEqual(1, buffer.Samples.Count); }
public void WriteOutBuffer(RecordingBuffer buffer, string outputFile) { StatusManager.Status("Saving file: " + outputFile); byte[] waveFile = this.ConvertToWave(buffer.Samples, buffer.WaveFormat); this.WriteMP3(waveFile, outputFile); }
public void CreateTest() { RecordingBuffer buffer = new RecordingBuffer(); Assert.AreNotEqual(null, buffer.Samples); Assert.AreEqual(0, buffer.Samples.Count); }
private RecordingBuffer PopTrack(long trackNumber) { RecordingBuffer result = new RecordingBuffer(); result.WaveFormat = this.Buffer.WaveFormat; var samples = this.Buffer.Samples; while (samples.Count > 0 && samples[0].Id <= trackNumber) { result.AddSample(samples[0]); samples.RemoveAt(0); } return result; }