summaryrefslogtreecommitdiff
path: root/src/liana/vcr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/liana/vcr.h')
-rw-r--r--src/liana/vcr.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/liana/vcr.h b/src/liana/vcr.h
index 5b8b9df..42d6ff9 100644
--- a/src/liana/vcr.h
+++ b/src/liana/vcr.h
@@ -12,11 +12,12 @@
struct lia_vcr_track {
struct camu_codec_stream *stream;
- struct lia_client_handler *client;
struct nn_packet_cache cache;
+ struct lia_client_handler *handler;
u32 state;
atomic(bool) buffered;
- bool running;
+ u8 eof;
+ bool started;
struct nn_cond cond;
struct nn_mutex lock;
struct nn_thread thread;
@@ -27,15 +28,15 @@ struct lia_vcr {
struct nn_packet_stream *data;
u16 node_id;
array(struct lia_vcr_track *) tracks;
- atomic(u64) count;
+ atomic(u64) size;
struct {
u64 buffered;
atomic(u64) low;
} mark;
u8 expand;
bool started;
-#ifndef CAMU_DIRECT_MODE
bool corked;
+#ifndef CAMU_DIRECT_MODE
struct nn_signal signal;
#endif
struct {
@@ -52,7 +53,7 @@ void lia_vcr_start(struct lia_vcr *vcr);
void lia_vcr_add_track(struct lia_vcr *vcr, struct lia_vcr_track *track);
bool lia_vcr_remove_track_by_stream(struct lia_vcr *vcr, struct camu_codec_stream *stream);
bool lia_vcr_is_empty(struct lia_vcr *vcr);
-void lia_vcr_push_packet(struct lia_vcr *vcr, struct nn_packet *packet);
+bool lia_vcr_push_packet(struct lia_vcr *vcr, struct nn_packet *packet);
void lia_vcr_set_buffered(struct lia_vcr_track *track);
void lia_vcr_cork(struct lia_vcr_track *track);
void lia_vcr_uncork(struct lia_vcr_track *track);