diff options
| author | 2025-01-29 16:45:30 -0500 | |
|---|---|---|
| committer | 2025-01-29 16:45:30 -0500 | |
| commit | 6134465ddc10f8b43bddf74209f0ec8654595041 (patch) | |
| tree | 49eb55da3d08abdc7dea9628c3ae9674dfe7afde /src/mixer | |
| parent | 457a3cc1a04e45e31370d9083186436b0d12ab1d (diff) | |
| download | camu-6134465ddc10f8b43bddf74209f0ec8654595041.tar.gz camu-6134465ddc10f8b43bddf74209f0ec8654595041.tar.bz2 camu-6134465ddc10f8b43bddf74209f0ec8654595041.zip | |
Fixes and optimizations around seek and loop
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/mixer')
| -rw-r--r-- | src/mixer/mixer.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/mixer/mixer.c b/src/mixer/mixer.c index 36ac95d..aad0877 100644 --- a/src/mixer/mixer.c +++ b/src/mixer/mixer.c @@ -140,9 +140,9 @@ static void add_buffer_internal(struct camu_mixer *mixer, struct camu_audio_buff static void remove_buffer_internal(struct camu_mixer *mixer, struct camu_audio_buffer *buf) { - struct camu_audio_buffer *rbuf; - al_array_foreach(mixer->buffers, i, rbuf) { - if (rbuf == buf) { + struct camu_audio_buffer *added; + al_array_foreach(mixer->buffers, i, added) { + if (added == buf) { #ifdef CAMU_MIXER_THREADED al_atomic_store(u8)(&buf->ref, 0, AL_ATOMIC_RELAXED); #endif @@ -182,15 +182,15 @@ void camu_mixer_add_buffer(struct camu_mixer *mixer, struct camu_audio_buffer *b { #ifdef CAMU_MIXER_THREADED nn_mutex_lock(&mixer->mutex); - struct camu_audio_buffer *rbuf; - al_array_foreach(mixer->add_queue, i, rbuf) { - if (rbuf == buf) { + struct camu_audio_buffer *queued; + al_array_foreach(mixer->add_queue, i, queued) { + if (queued == buf) { nn_mutex_unlock(&mixer->mutex); return; } } - al_array_foreach_rev(mixer->rem_queue, i, rbuf) { - if (rbuf == buf) { + al_array_foreach_rev(mixer->rem_queue, i, queued) { + if (queued == buf) { al_array_remove_at(mixer->rem_queue, i); bool queue_empty = mixer->add_queue.count + mixer->rem_queue.count == 0; if (queue_empty) { @@ -213,15 +213,15 @@ void camu_mixer_remove_buffer(struct camu_mixer *mixer, struct camu_audio_buffer { #ifdef CAMU_MIXER_THREADED nn_mutex_lock(&mixer->mutex); - struct camu_audio_buffer *rbuf; - al_array_foreach(mixer->rem_queue, i, rbuf) { - if (rbuf == buf) { + struct camu_audio_buffer *queued; + al_array_foreach(mixer->rem_queue, i, queued) { + if (queued == buf) { nn_mutex_unlock(&mixer->mutex); return; } } - al_array_foreach_rev(mixer->add_queue, i, rbuf) { - if (rbuf == buf) { + al_array_foreach_rev(mixer->add_queue, i, queued) { + if (queued == buf) { al_array_remove_at(mixer->add_queue, i); bool queue_empty = mixer->add_queue.count + mixer->rem_queue.count == 0; if (queue_empty) { |