public void Write(IAudioDest dest) { if (start < 0 || start > end || end > toc.AudioLength * 588) throw new ArgumentOutOfRangeException(); var src = new NoiseAndErrorsGenerator(AudioPCMConfig.RedBook, end - start, seed, offset + start, errors, maxStrideErrors); var buff = new AudioBuffer(src, 588 * 10); var rnd = new Random(seed); //dest.Position = start; while (src.Remaining > 0) { src.Read(buff, rnd.Next(1, buff.Size)); dest.Write(buff); } }
public void Write(IAudioDest dest) { if (start < 0 || start > end || end > toc.AudioLength * 588) { throw new ArgumentOutOfRangeException(); } var src = new NoiseAndErrorsGenerator(AudioPCMConfig.RedBook, end - start, seed, offset + start, errors, maxStrideErrors); var buff = new AudioBuffer(src, 588 * 10); var rnd = new Random(seed); //dest.Position = start; while (src.Remaining > 0) { src.Read(buff, rnd.Next(1, buff.Size)); dest.Write(buff); } }