Change example to be simple echo.

This commit is contained in:
Michał Słomkowski 2015-10-28 00:19:42 +01:00
parent 6df4affb5e
commit d289bf3134

View File

@ -4,27 +4,14 @@
#include "log4cpp/FileAppender.hh" #include "log4cpp/FileAppender.hh"
#include "log4cpp/OstreamAppender.hh" #include "log4cpp/OstreamAppender.hh"
#include <thread> class MyCallback : public mumlib::BasicCallback {
#include <cmath> public:
#include <mumlib/Audio.hpp> mumlib::Mumlib *mum;
void audioSenderThreadFunction(mumlib::Mumlib *mum) { virtual void audio(int16_t *pcm_data, uint32_t pcm_data_size) {
while (mum->getConnectionState() != mumlib::ConnectionState::FAILED) { mum->sendAudioData(pcm_data, pcm_data_size);
if (mum->getConnectionState() == mumlib::ConnectionState::CONNECTED) {
constexpr double FREQUENCY = 1000; // Hz
constexpr int BUFF_SIZE = mumlib::SAMPLE_RATE / 100; // 10 ms
int16_t buff[BUFF_SIZE];
for (int i = 0; i < BUFF_SIZE; ++i) {
buff[i] = 10000 * std::sin(2.0 * M_PI * FREQUENCY * ((double) i) / ((double) mumlib::SAMPLE_RATE));
}
mum->sendAudioData(buff, BUFF_SIZE);
}
std::this_thread::sleep_for(std::chrono::milliseconds(10));
} }
} };
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
@ -39,13 +26,12 @@ int main(int argc, char *argv[]) {
return 1; return 1;
} }
mumlib::BasicCallback callback; MyCallback myCallback;
mumlib::Mumlib mum(callback); mumlib::Mumlib mum(myCallback);
myCallback.mum = &mum;
mum.connect(argv[1], 64738, "mumlib_example", argv[2]); mum.connect(argv[1], 64738, "mumlib_example", argv[2]);
std::thread audioSenderThread(audioSenderThreadFunction, &mum);
mum.run(); mum.run();
return 0; return 0;