|
@@ -18,7 +18,7 @@
|
|
|
#include "obs.h"
|
|
|
#include "obs-internal.h"
|
|
|
|
|
|
-bool obs_view_init(struct obs_view *view)
|
|
|
+bool obs_view_init(struct obs_view *view, enum view_type type)
|
|
|
{
|
|
|
if (!view)
|
|
|
return false;
|
|
@@ -30,6 +30,7 @@ bool obs_view_init(struct obs_view *view)
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
+ view->type = type;
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -37,7 +38,7 @@ obs_view_t *obs_view_create(void)
|
|
|
{
|
|
|
struct obs_view *view = bzalloc(sizeof(struct obs_view));
|
|
|
|
|
|
- if (!obs_view_init(view)) {
|
|
|
+ if (!obs_view_init(view, AUX_VIEW)) {
|
|
|
bfree(view);
|
|
|
view = NULL;
|
|
|
}
|
|
@@ -53,7 +54,7 @@ void obs_view_free(struct obs_view *view)
|
|
|
for (size_t i = 0; i < MAX_CHANNELS; i++) {
|
|
|
struct obs_source *source = view->channels[i];
|
|
|
if (source) {
|
|
|
- obs_source_deactivate(source, AUX_VIEW);
|
|
|
+ obs_source_deactivate(source, view->type);
|
|
|
obs_source_release(source);
|
|
|
}
|
|
|
}
|
|
@@ -106,10 +107,10 @@ void obs_view_set_source(obs_view_t *view, uint32_t channel, obs_source_t *sourc
|
|
|
pthread_mutex_unlock(&view->channels_mutex);
|
|
|
|
|
|
if (source)
|
|
|
- obs_source_activate(source, AUX_VIEW);
|
|
|
+ obs_source_activate(source, view->type);
|
|
|
|
|
|
if (prev_source) {
|
|
|
- obs_source_deactivate(prev_source, AUX_VIEW);
|
|
|
+ obs_source_deactivate(prev_source, view->type);
|
|
|
obs_source_release(prev_source);
|
|
|
}
|
|
|
}
|