diff options
Diffstat (limited to 'firmware/export/audio.h')
-rw-r--r-- | firmware/export/audio.h | 61 |
1 files changed, 28 insertions, 33 deletions
diff --git a/firmware/export/audio.h b/firmware/export/audio.h index 6236c6d5d1..1ce023a5e5 100644 --- a/firmware/export/audio.h +++ b/firmware/export/audio.h | |||
@@ -53,6 +53,31 @@ | |||
53 | #define AUDIO_GAIN_MIC 1 | 53 | #define AUDIO_GAIN_MIC 1 |
54 | 54 | ||
55 | 55 | ||
56 | void audio_init(void); | ||
57 | void audio_play(long offset); | ||
58 | void audio_stop(void); | ||
59 | void audio_pause(void); | ||
60 | void audio_resume(void); | ||
61 | void audio_next(void); | ||
62 | void audio_prev(void); | ||
63 | int audio_status(void); | ||
64 | void audio_ff_rewind(long newpos); | ||
65 | void audio_flush_and_reload_tracks(void); | ||
66 | struct mp3entry* audio_current_track(void); | ||
67 | struct mp3entry* audio_next_track(void); | ||
68 | #ifdef HAVE_DISK_STORAGE | ||
69 | void audio_set_buffer_margin(int setting); | ||
70 | #endif | ||
71 | void audio_error_clear(void); | ||
72 | int audio_get_file_pos(void); | ||
73 | void audio_beep(int duration); | ||
74 | |||
75 | #if CONFIG_CODEC == SWCODEC | ||
76 | /* Required call when audio buffer is required for some other purpose */ | ||
77 | unsigned char *audio_get_buffer(bool talk_buf, size_t *buffer_size); | ||
78 | /* only implemented in playback.c, but called from firmware */ | ||
79 | |||
80 | #else /* hwcodec only */ | ||
56 | struct audio_debug | 81 | struct audio_debug |
57 | { | 82 | { |
58 | int audiobuflen; | 83 | int audiobuflen; |
@@ -77,40 +102,9 @@ struct audio_debug | |||
77 | int lowest_watermark_level; | 102 | int lowest_watermark_level; |
78 | }; | 103 | }; |
79 | 104 | ||
80 | void audio_init(void); | ||
81 | void audio_play(long offset); | ||
82 | void audio_stop(void); | ||
83 | void audio_pause(void); | ||
84 | void audio_resume(void); | ||
85 | void audio_next(void); | ||
86 | void audio_prev(void); | ||
87 | int audio_status(void); | ||
88 | void audio_ff_rewind(long newtime); | ||
89 | void audio_flush_and_reload_tracks(void); | ||
90 | struct mp3entry* audio_current_track(void); | ||
91 | struct mp3entry* audio_next_track(void); | ||
92 | void audio_get_debugdata(struct audio_debug *dbgdata); | 105 | void audio_get_debugdata(struct audio_debug *dbgdata); |
93 | #ifdef HAVE_DISK_STORAGE | 106 | /* unsigned int audio_error(void); - unused function */ |
94 | void audio_set_buffer_margin(int seconds); | ||
95 | #endif | ||
96 | unsigned int audio_error(void); | ||
97 | void audio_error_clear(void); | ||
98 | int audio_get_file_pos(void); | ||
99 | void audio_beep(int duration); | ||
100 | void audio_init_playback(void); | 107 | void audio_init_playback(void); |
101 | |||
102 | /* Required call when audio buffer is required for some other purpose */ | ||
103 | unsigned char *audio_get_buffer(bool talk_buf, size_t *buffer_size); | ||
104 | /* only implemented in playback.c, but called from firmware */ | ||
105 | |||
106 | #if CONFIG_CODEC == SWCODEC | ||
107 | enum audio_buffer_state | ||
108 | { | ||
109 | AUDIOBUF_STATE_TRASHED = -1, /* trashed; must be reset */ | ||
110 | AUDIOBUF_STATE_INITIALIZED = 0, /* voice+audio OR audio-only */ | ||
111 | AUDIOBUF_STATE_VOICED_ONLY = 1, /* voice-only */ | ||
112 | }; | ||
113 | int audio_buffer_state(void); | ||
114 | #endif | 108 | #endif |
115 | 109 | ||
116 | /* channel modes */ | 110 | /* channel modes */ |
@@ -237,7 +231,7 @@ void audio_spdif_set_monitor(int monitor_spdif); | |||
237 | 231 | ||
238 | unsigned long audio_prev_elapsed(void); | 232 | unsigned long audio_prev_elapsed(void); |
239 | 233 | ||
240 | 234 | #if CONFIG_CODEC != SWCODEC | |
241 | /***********************************************************************/ | 235 | /***********************************************************************/ |
242 | /* audio event handling */ | 236 | /* audio event handling */ |
243 | 237 | ||
@@ -279,3 +273,4 @@ void audio_register_event_handler(AUDIO_EVENT_HANDLER handler, unsigned short ma | |||
279 | processing */ | 273 | processing */ |
280 | 274 | ||
281 | #endif | 275 | #endif |
276 | #endif | ||