summaryrefslogtreecommitdiffstats
path: root/apps/audio_thread.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2017-12-12 20:14:34 -0500
committerMichael Sevakis <jethead71@rockbox.org>2017-12-12 20:28:56 -0500
commitc8564f1ca8287eba9220df191d13c949bb49c8ce (patch)
tree7428918a9a6660dd53eefc7bf2be047e9eddccf0 /apps/audio_thread.c
parent838ff9c67d4ade0e0e0ee7132eb933a7c861d384 (diff)
downloadrockbox-c8564f1ca8287eba9220df191d13c949bb49c8ce.tar.gz
rockbox-c8564f1ca8287eba9220df191d13c949bb49c8ce.tar.bz2
rockbox-c8564f1ca8287eba9220df191d13c949bb49c8ce.zip
Get voice event out of playback.c
Purpose: A step in removing all voice references from playback code and prelude to other changes. Change-Id: Ic3ad7f7a33b979693e18a3456ced37eb1d2281a4
Diffstat (limited to 'apps/audio_thread.c')
-rw-r--r--apps/audio_thread.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/audio_thread.c b/apps/audio_thread.c
index 3af8b2bbf6..74f18454cc 100644
--- a/apps/audio_thread.c
+++ b/apps/audio_thread.c
@@ -27,6 +27,8 @@
#include "usb.h"
#include "pcm.h"
#include "sound.h"
+#include "pcmbuf.h"
+#include "appevents.h"
#include "audio_thread.h"
#ifdef AUDIO_HAVE_RECORDING
#include "pcm_record.h"
@@ -108,6 +110,13 @@ static void NORETURN_ATTR audio_thread(void)
}
}
+void audio_voice_event(unsigned short id, void *data)
+{
+ (void)id;
+ /* Make audio play softly while voice is speaking */
+ pcmbuf_soft_mode(*(bool *)data);
+}
+
void audio_queue_post(long id, intptr_t data)
{
queue_post(&audio_queue, id, data);
@@ -170,6 +179,8 @@ void INIT_ATTR audio_init(void)
recording_init();
#endif
+ add_event(VOICE_EVENT_IS_PLAYING, audio_voice_event);
+
/* Probably safe to say */
audio_is_initialized = true;