Browse Source

Change example to be simple echo.

Michał Słomkowski 8 years ago
parent
commit
d289bf3134
1 changed files with 9 additions and 23 deletions
  1. 9 23
      mumlib_example.cpp

+ 9 - 23
mumlib_example.cpp

@@ -4,27 +4,14 @@
 #include "log4cpp/FileAppender.hh"
 #include "log4cpp/OstreamAppender.hh"
 
-#include <thread>
-#include <cmath>
-#include <mumlib/Audio.hpp>
+class MyCallback : public mumlib::BasicCallback {
+public:
+    mumlib::Mumlib *mum;
 
-void audioSenderThreadFunction(mumlib::Mumlib *mum) {
-    while (mum->getConnectionState() != mumlib::ConnectionState::FAILED) {
-        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));
+    virtual void audio(int16_t *pcm_data, uint32_t pcm_data_size) {
+        mum->sendAudioData(pcm_data, pcm_data_size);
     }
-}
+};
 
 int main(int argc, char *argv[]) {
 
@@ -39,13 +26,12 @@ int main(int argc, char *argv[]) {
         return 1;
     }
 
-    mumlib::BasicCallback callback;
-    mumlib::Mumlib mum(callback);
+    MyCallback myCallback;
+    mumlib::Mumlib mum(myCallback);
+    myCallback.mum = &mum;
 
     mum.connect(argv[1], 64738, "mumlib_example", argv[2]);
 
-    std::thread audioSenderThread(audioSenderThreadFunction, &mum);
-
     mum.run();
 
     return 0;