Set defaults automatically
Automatically query defaults for sources/outputs/encoders and set them before calling create
This commit is contained in:
@@ -43,7 +43,10 @@ static bool init_encoder(struct obs_encoder *encoder, const char *name,
|
||||
return false;
|
||||
|
||||
encoder->settings = obs_data_newref(settings);
|
||||
encoder->data = encoder->info.create(encoder->settings, encoder);
|
||||
if (encoder->info.defaults)
|
||||
encoder->info.defaults(encoder->settings);
|
||||
|
||||
encoder->data = encoder->info.create(encoder->settings, encoder);
|
||||
|
||||
if (!encoder->data) {
|
||||
pthread_mutex_destroy(&encoder->callbacks_mutex);
|
||||
|
@@ -49,8 +49,11 @@ obs_output_t obs_output_create(const char *id, const char *name,
|
||||
if (!output->procs)
|
||||
goto fail;
|
||||
|
||||
output->info = *info;
|
||||
output->info = *info;
|
||||
output->settings = obs_data_newref(settings);
|
||||
if (output->info.defaults)
|
||||
output->info.defaults(output->settings);
|
||||
|
||||
output->data = info->create(output->settings, output);
|
||||
if (!output->data)
|
||||
goto fail;
|
||||
|
@@ -182,8 +182,10 @@ obs_source_t obs_source_create(enum obs_source_type type, const char *id,
|
||||
source_init_name(source, name);
|
||||
|
||||
source->settings = obs_data_newref(settings);
|
||||
source->data = info->create(source->settings, source);
|
||||
if (info->defaults)
|
||||
info->defaults(source->settings);
|
||||
|
||||
source->data = info->create(source->settings, source);
|
||||
if (!source->data)
|
||||
goto fail;
|
||||
|
||||
|
Reference in New Issue
Block a user