From 208862698e8ebf6bebfd9a07e4cc4b43b3cd0d96 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 27 May 2009 23:30:29 +0200 Subject: null: introduce sink_properties= argument --- src/modules/module-null-sink.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/modules/module-null-sink.c b/src/modules/module-null-sink.c index d9bab6bd..c0c2facf 100644 --- a/src/modules/module-null-sink.c +++ b/src/modules/module-null-sink.c @@ -54,12 +54,12 @@ PA_MODULE_DESCRIPTION("Clocked NULL sink"); PA_MODULE_VERSION(PACKAGE_VERSION); PA_MODULE_LOAD_ONCE(FALSE); PA_MODULE_USAGE( + "sink_name= " + "sink_properties= " "format= " - "channels= " "rate= " - "sink_name= " - "channel_map= " - "description="); + "channels= " + "channel_map="); #define DEFAULT_SINK_NAME "null" #define BLOCK_USEC (PA_USEC_PER_SEC * 2) @@ -78,12 +78,13 @@ struct userdata { }; static const char* const valid_modargs[] = { - "rate", + "sink_name", + "sink_properties", "format", + "rate", "channels", - "sink_name", "channel_map", - "description", + "description", /* supported for compatibility reasons, made redundant by sink_properties= */ NULL }; @@ -289,6 +290,12 @@ int pa__init(pa_module*m) { pa_proplist_sets(data.proplist, PA_PROP_DEVICE_DESCRIPTION, pa_modargs_get_value(ma, "description", "Null Output")); pa_proplist_sets(data.proplist, PA_PROP_DEVICE_CLASS, "abstract"); + if (pa_modargs_get_proplist(ma, "sink_properties", data.proplist, PA_UPDATE_REPLACE) < 0) { + pa_log("Invalid properties."); + pa_sink_new_data_done(&data); + goto fail; + } + u->sink = pa_sink_new(m->core, &data, PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY); pa_sink_new_data_done(&data); -- cgit