summaryrefslogtreecommitdiff
path: root/firmware/export/pcm_playback.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/pcm_playback.h')
-rw-r--r--firmware/export/pcm_playback.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/firmware/export/pcm_playback.h b/firmware/export/pcm_playback.h
index f6612095e0..23ec1feee9 100644
--- a/firmware/export/pcm_playback.h
+++ b/firmware/export/pcm_playback.h
@@ -21,11 +21,21 @@
void pcm_init(void);
void pcm_set_frequency(unsigned int frequency);
+
+/* This is for playing "raw" PCM data */
void pcm_play_data(const unsigned char* start, int size,
void (*get_more)(unsigned char** start, long* size));
+
void pcm_play_stop(void);
void pcm_play_pause(bool play);
bool pcm_is_playing(void);
void pcm_set_volume(int volume);
+/* These functions are for playing chained buffers of PCM data */
+void pcm_play_init(void);
+void pcm_play_start(void);
+bool pcm_play_add_chunk(void *addr, int size, void (*callback)(void));
+int pcm_play_num_used_buffers(void);
+void pcm_play_set_watermark(int numbytes, void (*callback)(int bytes_left));
+
#endif