aboutsummaryrefslogtreecommitdiff
path: root/AudioTester/Core/RenderStreamer.cs
diff options
context:
space:
mode:
authorbonmas14 <bonmas14@gmail.com>2023-10-29 21:03:26 +0300
committerbonmas14 <bonmas14@gmail.com>2023-10-29 21:03:26 +0300
commit79d8da74ac98166ec9e9dae7eff820cd9842edb3 (patch)
treebc359f214122236968f853e6aed7236a9e4905f9 /AudioTester/Core/RenderStreamer.cs
parent0ee008ae77fb76cbe9fe151cc6c4bc9f89cb98a5 (diff)
downloadRayRoom-79d8da74ac98166ec9e9dae7eff820cd9842edb3.tar.gz
RayRoom-79d8da74ac98166ec9e9dae7eff820cd9842edb3.zip
basic functionality
+ compute bound
Diffstat (limited to 'AudioTester/Core/RenderStreamer.cs')
-rw-r--r--AudioTester/Core/RenderStreamer.cs32
1 files changed, 7 insertions, 25 deletions
diff --git a/AudioTester/Core/RenderStreamer.cs b/AudioTester/Core/RenderStreamer.cs
index c7d2595..81be958 100644
--- a/AudioTester/Core/RenderStreamer.cs
+++ b/AudioTester/Core/RenderStreamer.cs
@@ -1,4 +1,5 @@
using NAudio.Wave;
+using RayRoom.Core;
namespace AudioTester.Core
{
@@ -6,37 +7,18 @@ namespace AudioTester.Core
{
public WaveFormat WaveFormat { get; }
- private const int ReadBufferSize = 1024;
- private int sample;
- private Random rand;
+ private ISampleHandler provider;
- private AudioFileReader streamReader;
- private ISampleProvider provider;
-
- public RenderStreamer()
+ public RenderStreamer(ISampleHandler provider)
{
- rand = new Random();
- WaveFormat = WaveFormat.CreateIeeeFloatWaveFormat(44100, 2);
- sample = 0;
-
- streamReader = new AudioFileReader(@"Resources\test.wav");
-
- provider = streamReader.ToSampleProvider();
+ this.provider = provider;
+
+ WaveFormat = WaveFormat.CreateIeeeFloatWaveFormat(44100, 1);
}
public int Read(float[] buffer, int offset, int count)
{
- int length = provider.Read(buffer, offset, count);
-
- Console.WriteLine("i: {0}; o:{1}", count, length);
-
- if (length < count)
- {
- streamReader.Position = 0;
- length += provider.Read(buffer, length, count - length);
- }
-
- return length;
+ return provider.WriteTo(buffer, offset, count);
}
}
}