mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-20 04:42:18 +02:00
libobs: Add obs_source_load2()
Allows loading a source and all of its filters automatically. Previously, the original obs_source_load would not load filters.
This commit is contained in:
parent
0ecf24d0ed
commit
ca08df9fb2
@ -4114,6 +4114,19 @@ void obs_source_load(obs_source_t *source)
|
||||
obs_source_dosignal(source, "source_load", "load");
|
||||
}
|
||||
|
||||
void obs_source_load2(obs_source_t *source)
|
||||
{
|
||||
if (!data_valid(source, "obs_source_load2"))
|
||||
return;
|
||||
|
||||
obs_source_load(source);
|
||||
|
||||
for (size_t i = source->filters.num; i > 0; i--) {
|
||||
obs_source_t *filter = source->filters.array[i - 1];
|
||||
obs_source_load(filter);
|
||||
}
|
||||
}
|
||||
|
||||
bool obs_source_active(const obs_source_t *source)
|
||||
{
|
||||
return obs_source_valid(source, "obs_source_active")
|
||||
|
@ -1904,12 +1904,7 @@ void obs_load_sources(obs_data_array_t *array, obs_load_source_cb cb,
|
||||
if (source) {
|
||||
if (source->info.type == OBS_SOURCE_TYPE_TRANSITION)
|
||||
obs_transition_load(source, source_data);
|
||||
obs_source_load(source);
|
||||
for (size_t i = source->filters.num; i > 0; i--) {
|
||||
obs_source_t *filter =
|
||||
source->filters.array[i - 1];
|
||||
obs_source_load(filter);
|
||||
}
|
||||
obs_source_load2(source);
|
||||
if (cb)
|
||||
cb(private_data, source);
|
||||
}
|
||||
|
@ -696,9 +696,12 @@ EXPORT obs_source_t *obs_load_source(obs_data_t *data);
|
||||
/** Send a save signal to sources */
|
||||
EXPORT void obs_source_save(obs_source_t *source);
|
||||
|
||||
/** Send a load signal to sources */
|
||||
/** Send a load signal to sources (soft deprecated; does not load filters) */
|
||||
EXPORT void obs_source_load(obs_source_t *source);
|
||||
|
||||
/** Send a load signal to sources */
|
||||
EXPORT void obs_source_load2(obs_source_t *source);
|
||||
|
||||
typedef void (*obs_load_source_cb)(void *private_data, obs_source_t *source);
|
||||
|
||||
/** Loads sources from a data array */
|
||||
|
Loading…
Reference in New Issue
Block a user