output: semi-asynchronous playback

Send an output buffer to all output plugins at the same time, instead
of waiting for each of them separately.  Make several functions
non-blocking, and introduce the new function audio_output_wait_all()
to synchronize with all audio output threads.
This commit is contained in:
Max Kellermann
2008-09-24 07:23:19 +02:00
parent 6bbea44e91
commit 2b782b82ea
4 changed files with 91 additions and 23 deletions
+2 -2
View File
@@ -30,8 +30,8 @@ struct tag;
int audio_output_init(struct audio_output *, ConfigParam * param);
int audio_output_open(struct audio_output *audioOutput,
const struct audio_format *audioFormat);
int audio_output_play(struct audio_output *audioOutput,
const char *playChunk, size_t size);
void audio_output_play(struct audio_output *audioOutput,
const char *playChunk, size_t size);
void audio_output_cancel(struct audio_output *audioOutput);
void audio_output_close(struct audio_output *audioOutput);
void audio_output_finish(struct audio_output *audioOutput);