libobs: Buffer scene item visibility actions
This buffers scene item visibility actions so that if obs_sceneitem_set_visible to true or false, that it will ensure that the action is mapped to the exact sample point time in which obs_sceneitem_set_visible is called. Mapping to the exact sample point isn't necessary, but it's a nice thing to have.
This commit is contained in:
@@ -23,12 +23,19 @@
|
||||
|
||||
/* how obs scene! */
|
||||
|
||||
struct item_action {
|
||||
bool visible;
|
||||
uint64_t timestamp;
|
||||
};
|
||||
|
||||
struct obs_scene_item {
|
||||
volatile long ref;
|
||||
volatile bool removed;
|
||||
|
||||
struct obs_scene *parent;
|
||||
struct obs_source *source;
|
||||
volatile long active_refs;
|
||||
bool user_visible;
|
||||
bool visible;
|
||||
bool selected;
|
||||
|
||||
@@ -51,6 +58,9 @@ struct obs_scene_item {
|
||||
|
||||
obs_hotkey_pair_id toggle_visibility;
|
||||
|
||||
pthread_mutex_t actions_mutex;
|
||||
DARRAY(struct item_action) audio_actions;
|
||||
|
||||
/* would do **prev_next, but not really great for reordering */
|
||||
struct obs_scene_item *prev;
|
||||
struct obs_scene_item *next;
|
||||
|
Reference in New Issue
Block a user