aboutsummaryrefslogtreecommitdiffstats
path: root/src/output_init.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2009-10-21 22:37:28 +0200
committerMax Kellermann <max@duempel.org>2009-10-21 22:37:28 +0200
commit2c05430002c66f69c498eec40b961d4eabef66c2 (patch)
treef7e51c0943d5df0993382315f2baada763f34083 /src/output_init.c
parent643650dba75becfe572c1b334d1276a1b3f66d41 (diff)
downloadmpd-2c05430002c66f69c498eec40b961d4eabef66c2.tar.gz
mpd-2c05430002c66f69c498eec40b961d4eabef66c2.tar.xz
mpd-2c05430002c66f69c498eec40b961d4eabef66c2.zip
output: convert config_audio_format to an audio_format struct
This allows more sophisticated audio format selection.
Diffstat (limited to 'src/output_init.c')
-rw-r--r--src/output_init.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/output_init.c b/src/output_init.c
index f394066ef..f097f2c2d 100644
--- a/src/output_init.c
+++ b/src/output_init.c
@@ -154,14 +154,14 @@ audio_output_init(struct audio_output *ao, const struct config_param *param,
p = config_get_block_string(param, AUDIO_OUTPUT_FORMAT,
NULL);
- ao->config_audio_format = p != NULL;
if (p != NULL) {
bool success =
- audio_format_parse(&ao->out_audio_format,
+ audio_format_parse(&ao->config_audio_format,
p, error_r);
if (!success)
return false;
- }
+ } else
+ audio_format_clear(&ao->config_audio_format);
} else {
g_warning("No \"%s\" defined in config file\n",
CONF_AUDIO_OUTPUT);
@@ -174,7 +174,8 @@ audio_output_init(struct audio_output *ao, const struct config_param *param,
plugin->name);
ao->name = "default detected output";
- ao->config_audio_format = false;
+
+ audio_format_clear(&ao->config_audio_format);
}
ao->plugin = plugin;
@@ -194,8 +195,8 @@ audio_output_init(struct audio_output *ao, const struct config_param *param,
ao->mutex = g_mutex_new();
ao->data = ao_plugin_init(plugin,
- ao->config_audio_format
- ? &ao->out_audio_format : NULL,
+ audio_format_defined(&ao->config_audio_format)
+ ? &ao->config_audio_format : NULL,
param, error_r);
if (ao->data == NULL)
return false;