Skip to content

Commit e900e42

Browse files
committed
Change circlebuf to deque
1 parent aee7323 commit e900e42

2 files changed

Lines changed: 18 additions & 19 deletions

File tree

src/media-playlist-source.c

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -377,13 +377,12 @@ void mps_audio_callback(void *data, obs_source_t *source,
377377
pthread_mutex_lock(&mps->audio_mutex);
378378
size_t size = audio_data->frames * sizeof(float);
379379
for (size_t i = 0; i < mps->num_channels; i++) {
380-
circlebuf_push_back(&mps->audio_data[i], audio_data->data[i],
381-
size);
380+
deque_push_back(&mps->audio_data[i], audio_data->data[i], size);
382381
}
383-
circlebuf_push_back(&mps->audio_frames, &audio_data->frames,
384-
sizeof(audio_data->frames));
385-
circlebuf_push_back(&mps->audio_timestamps, &audio_data->timestamp,
386-
sizeof(audio_data->timestamp));
382+
deque_push_back(&mps->audio_frames, &audio_data->frames,
383+
sizeof(audio_data->frames));
384+
deque_push_back(&mps->audio_timestamps, &audio_data->timestamp,
385+
sizeof(audio_data->timestamp));
387386
pthread_mutex_unlock(&mps->audio_mutex);
388387
}
389388

@@ -731,10 +730,10 @@ static void mps_destroy(void *data)
731730
shuffler_destroy(&mps->shuffler);
732731
free_files(&mps->files.da);
733732
for (size_t i = 0; i < MAX_AUDIO_CHANNELS; i++) {
734-
circlebuf_free(&mps->audio_data[i]);
733+
deque_free(&mps->audio_data[i]);
735734
}
736-
circlebuf_free(&mps->audio_frames);
737-
circlebuf_free(&mps->audio_timestamps);
735+
deque_free(&mps->audio_frames);
736+
deque_free(&mps->audio_timestamps);
738737
pthread_mutex_destroy(&mps->mutex);
739738
pthread_mutex_destroy(&mps->audio_mutex);
740739
bfree(mps->current_media_filename);
@@ -873,18 +872,18 @@ static void mps_video_tick(void *data, float seconds)
873872
audio.format = aoi->format;
874873
audio.samples_per_sec = aoi->samples_per_sec;
875874
audio.speakers = aoi->speakers;
876-
circlebuf_pop_front(&mps->audio_frames, &audio.frames,
877-
sizeof(audio.frames));
878-
circlebuf_pop_front(&mps->audio_timestamps, &audio.timestamp,
879-
sizeof(audio.timestamp));
875+
deque_pop_front(&mps->audio_frames, &audio.frames,
876+
sizeof(audio.frames));
877+
deque_pop_front(&mps->audio_timestamps, &audio.timestamp,
878+
sizeof(audio.timestamp));
880879
for (size_t i = 0; i < mps->num_channels; i++) {
881880
audio.data[i] = (uint8_t *)mps->audio_data[i].data +
882881
mps->audio_data[i].start_pos;
883882
}
884883
obs_source_output_audio(mps->source, &audio);
885884
for (size_t i = 0; i < mps->num_channels; i++) {
886-
circlebuf_pop_front(&mps->audio_data[i], NULL,
887-
audio.frames * sizeof(float));
885+
deque_pop_front(&mps->audio_data[i], NULL,
886+
audio.frames * sizeof(float));
888887
}
889888
}
890889
mps->num_channels = audio_output_get_channels(a);

src/media-playlist-source.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ with this program. If not, see <https://www.gnu.org/licenses/>
2323
#include <util/platform.h>
2424
#include <util/darray.h>
2525
#include <util/dstr.h>
26-
#include <util/circlebuf.h>
26+
#include <util/deque.h>
2727
#include <plugin-support.h>
2828
#include "playlist.h"
2929
#include "shuffler.h"
@@ -74,9 +74,9 @@ struct media_playlist_source {
7474
enum visibility_behavior visibility_behavior;
7575
enum restart_behavior restart_behavior;
7676

77-
struct circlebuf audio_data[MAX_AUDIO_CHANNELS];
78-
struct circlebuf audio_frames;
79-
struct circlebuf audio_timestamps;
77+
struct deque audio_data[MAX_AUDIO_CHANNELS];
78+
struct deque audio_frames;
79+
struct deque audio_timestamps;
8080
size_t num_channels;
8181
pthread_mutex_t audio_mutex;
8282
};

0 commit comments

Comments
 (0)