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);
			}
		}
예제 #2
0
        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);
            }
        }