28 lines
665 B
C++
28 lines
665 B
C++
#include "AudioRender.h"
|
|
|
|
#include <assert.h>
|
|
#include <memory>
|
|
|
|
#include "IAudioRender.h"
|
|
|
|
static std::unique_ptr<IAudioRender> audiosRender_;
|
|
bool __stdcall Initialize(const char* sender_name, const char* receiver_name) {
|
|
assert(!audiosRender_);
|
|
audiosRender_.reset(IAudioRender::Create());
|
|
return true;
|
|
}
|
|
|
|
bool __stdcall Write(const unsigned char* data, unsigned int len) {
|
|
assert(audiosRender_);
|
|
|
|
std::vector<unsigned char> audio(len, 0);
|
|
memcpy(&audio[0], data, len);
|
|
AudioFrame frame = { audio, 0 };
|
|
return audiosRender_->Write(frame);
|
|
}
|
|
|
|
void __stdcall Uninitialize() {
|
|
assert(audiosRender_);
|
|
audiosRender_.reset();
|
|
}
|