2023-07-10 21:00:36 +00:00
|
|
|
#pragma once
|
|
|
|
#include <JuceHeader.h>
|
|
|
|
#include "../ixwebsocket/IXWebSocketServer.h"
|
2023-09-05 19:46:05 +00:00
|
|
|
#include "../concurrency/BufferConsumer.h"
|
2023-07-10 21:00:36 +00:00
|
|
|
|
2023-09-01 22:42:17 +00:00
|
|
|
class OscirenderAudioProcessor;
|
2023-07-10 21:00:36 +00:00
|
|
|
class AudioWebSocketServer : juce::Thread {
|
|
|
|
public:
|
2023-09-01 22:42:17 +00:00
|
|
|
AudioWebSocketServer(OscirenderAudioProcessor& audioProcessor);
|
2023-07-10 21:00:36 +00:00
|
|
|
~AudioWebSocketServer();
|
|
|
|
|
|
|
|
void run() override;
|
|
|
|
private:
|
|
|
|
ix::WebSocketServer server{ 42988 };
|
|
|
|
|
2023-09-01 22:42:17 +00:00
|
|
|
OscirenderAudioProcessor& audioProcessor;
|
|
|
|
std::vector<float> floatBuffer = std::vector<float>(2 * 4096);
|
2023-07-10 21:00:36 +00:00
|
|
|
char buffer[4096 * 2 * 2];
|
2023-09-05 19:46:05 +00:00
|
|
|
|
|
|
|
std::shared_ptr<BufferConsumer> consumer;
|
2023-09-01 22:42:17 +00:00
|
|
|
};
|