Beispiel #1
0
        public void TestCircularSampleBuffer()
        {
            var x = new CircularSampleBuffer(4000);

            Assert.AreEqual(0, x.Count);

            x.Write(LinearArray(0, 3950), 0, 3950);
            Assert.AreEqual(3950, x.Count);

            var target = new float[3950];

            x.Read(target, 0, 3950);
            Assert.AreEqual(0, x.Count);

            var source = LinearArray(0, 100);

            x.Write(source, 0, 100);
            Assert.AreEqual(100, x.Count);

            target = new float[100];
            x.Read(target, 0, 100);
            Assert.AreEqual(0, x.Count);
            Assert.AreEqual(source, target);

            var read = x.Read(target, 0, 100);

            Assert.AreEqual(0, read);
        }
 /// <inheritdoc />
 public void AddSamples(float[] f)
 {
     _circularBuffer.Write(f, 0, f.Length);
 }
Beispiel #3
0
 /// <inheritdoc />
 public void AddSamples(Float32Array f)
 {
     _circularBuffer.Write(f, 0, f.Length);
 }
Beispiel #4
0
 public bool Push(float[] data)
 {
     buffer.Write(data, 0, data.Length);
     return(buffer.IsFull(44100 * 10));
 }