summaryrefslogtreecommitdiff
path: root/src/audiobackend-pulse.h
diff options
context:
space:
mode:
authorBent Bisballe Nyeng <deva@aasimon.org>2014-10-01 19:38:10 +0200
committerBent Bisballe Nyeng <deva@aasimon.org>2014-10-01 19:38:10 +0200
commitac1ad643ee592ee7ca847e9eb2cc692d91c90a82 (patch)
tree06bd6819a619f492df71a4fa76a25fab9e2e53c5 /src/audiobackend-pulse.h
parentdd1f02ec375673d72dc2394cfbe420a997fd8ada (diff)
Threaded read.
Diffstat (limited to 'src/audiobackend-pulse.h')
-rw-r--r--src/audiobackend-pulse.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/audiobackend-pulse.h b/src/audiobackend-pulse.h
index 4c696ae..36f2eb8 100644
--- a/src/audiobackend-pulse.h
+++ b/src/audiobackend-pulse.h
@@ -30,10 +30,11 @@
#ifdef WITH_PULSE
#include "audiobackend.h"
+#include <QThread>
#include <pulse/simple.h>
-class AudioBackendPulse : public AudioBackend {
+class AudioBackendPulse : public AudioBackend, public QThread {
public:
AudioBackendPulse(const char *device);
~AudioBackendPulse();
@@ -41,9 +42,17 @@ public:
int read(char *pcm, size_t maxsize);
int write(const char *pcm, size_t size);
+ void run();
+
private:
pa_simple *sIn;
pa_simple *sOut;
+
+ volatile bool running;
+
+ char read_buffer[4096];
+ int pread;
+ int pwrite;
};
#endif/*WITH_PULSE*/