aboutsummaryrefslogtreecommitdiff
path: root/include/replay_buffer.h
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2025-05-04 20:36:34 +0200
committerdec05eba <dec05eba@protonmail.com>2025-05-04 21:24:07 +0200
commit36c74d3411a543c4452d367275182e0a8619cec4 (patch)
tree719bda3bd2c97472c54122253070ce39835910f3 /include/replay_buffer.h
parent2ca5f3361c341dee5087a109a721103dd95869ff (diff)
Add -replay-storage option to specify if temporary replay data should be stored in ram or disk
Diffstat (limited to 'include/replay_buffer.h')
-rw-r--r--include/replay_buffer.h43
1 files changed, 0 insertions, 43 deletions
diff --git a/include/replay_buffer.h b/include/replay_buffer.h
deleted file mode 100644
index 600b94b..0000000
--- a/include/replay_buffer.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef GSR_REPLAY_BUFFER_H
-#define GSR_REPLAY_BUFFER_H
-
-#include <pthread.h>
-#include <stdbool.h>
-#include <libavcodec/packet.h>
-
-typedef struct gsr_replay_buffer gsr_replay_buffer;
-
-typedef struct {
- AVPacket packet;
- int ref_counter;
- double timestamp;
-} gsr_av_packet;
-
-gsr_av_packet* gsr_av_packet_create(const AVPacket *av_packet, double timestamp);
-gsr_av_packet* gsr_av_packet_ref(gsr_av_packet *self);
-void gsr_av_packet_unref(gsr_av_packet *self);
-
-struct gsr_replay_buffer {
- gsr_av_packet **packets;
- size_t capacity_num_packets;
- size_t num_packets;
- size_t index;
- pthread_mutex_t mutex;
- bool mutex_initialized;
- gsr_replay_buffer *original_replay_buffer;
-};
-
-bool gsr_replay_buffer_init(gsr_replay_buffer *self, size_t replay_buffer_num_packets);
-void gsr_replay_buffer_deinit(gsr_replay_buffer *self);
-
-bool gsr_replay_buffer_append(gsr_replay_buffer *self, const AVPacket *av_packet, double timestamp);
-void gsr_replay_buffer_clear(gsr_replay_buffer *self);
-gsr_av_packet* gsr_replay_buffer_get_packet_at_index(gsr_replay_buffer *self, size_t index);
-/* The clone has to be deinitialized before the replay buffer it clones */
-bool gsr_replay_buffer_clone(gsr_replay_buffer *self, gsr_replay_buffer *destination);
-/* Returns 0 if replay buffer is empty */
-size_t gsr_replay_buffer_find_packet_index_by_time_passed(gsr_replay_buffer *self, int seconds);
-/* Returns -1 if not found */
-size_t gsr_replay_buffer_find_keyframe(gsr_replay_buffer *self, size_t start_index, int stream_index, bool invert_stream_index);
-
-#endif /* GSR_REPLAY_BUFFER_H */ \ No newline at end of file