1 #include "httplib/httplib.h"
14 #include "AudioFile.h"
33 audioFile.load (filename);
34 bit_depth = audioFile.getBitDepth();
35 sample_rate = audioFile.getSampleRate();
37 split_audio_into_packets();
43 emit(Event(
"set bit depth", bit_depth));
44 emit(Event(
"set sample rate", sample_rate));
48 if (i < left_data_packets.size()){
49 channel(
"left audio").send(left_data_packets[i]);
50 channel(
"right audio").send(right_data_packets[i]);
58 void split_audio_into_packets();
63 AudioFile<double> audioFile;
66 vector<json> left_data_packets;
67 vector<json> right_data_packets;
74 int buffer_size_counter = 0;
78 for (
int i = 0; i < audioFile.getNumSamplesPerChannel(); i++){
79 if(buffer_size_counter < bs){
80 left_buffer.push_back(audioFile.samples[0][i]);
81 right_buffer.push_back(audioFile.samples[1][i]);
82 buffer_size_counter++;
84 left_data_packets.push_back(left_buffer);
85 right_data_packets.push_back(right_buffer);
88 buffer_size_counter = 0;
93 left_data_packets.push_back(left_buffer);
94 right_data_packets.push_back(right_buffer);
97 buffer_size_counter = 0;
LiveRecordingSimulator(std::string filename, int buffer_size)
void split_audio_into_packets()
void start()
Tells the manager its bit depth and sample rate when initialized.
void update()
Every update sends the next json audio data packet through the left and right channels.