diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-02-21 16:32:42 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-02-21 16:32:42 +0100 |
commit | 4505bc9cc6bb1f9206f922a992a9be0e17703df1 (patch) | |
tree | 7a98f5c2990b19683dccbfb9128ba1cd5c9bacd9 /src/pulse | |
parent | 27bfa607b90b25aa4fdefc0882091093164297a5 (diff) |
introduce default channel map in addition to the default sample spec
Diffstat (limited to 'src/pulse')
-rw-r--r-- | src/pulse/introspect.c | 5 | ||||
-rw-r--r-- | src/pulse/introspect.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/pulse/introspect.c b/src/pulse/introspect.c index 04bcd4f5..befeb242 100644 --- a/src/pulse/introspect.c +++ b/src/pulse/introspect.c @@ -110,12 +110,17 @@ static void context_get_server_info_callback(pa_pdispatch *pd, uint32_t command, pa_tagstruct_gets(t, &i.default_sink_name) < 0 || pa_tagstruct_gets(t, &i.default_source_name) < 0 || pa_tagstruct_getu32(t, &i.cookie) < 0 || + (o->context->version >= 15 && + pa_tagstruct_get_channel_map(t, &i.channel_map) < 0) || !pa_tagstruct_eof(t)) { pa_context_fail(o->context, PA_ERR_PROTOCOL); goto finish; } + if (p && o->context->version < 15) + pa_channel_map_init_extend(&i.channel_map, i.sample_spec.channels, PA_CHANNEL_MAP_DEFAULT); + if (o->callback) { pa_server_info_cb_t cb = (pa_server_info_cb_t) o->callback; cb(o->context, p, o->userdata); diff --git a/src/pulse/introspect.h b/src/pulse/introspect.h index b873a84a..aa67e43d 100644 --- a/src/pulse/introspect.h +++ b/src/pulse/introspect.h @@ -317,6 +317,7 @@ typedef struct pa_server_info { const char *default_sink_name; /**< Name of default sink. */ const char *default_source_name; /**< Name of default sink. */ uint32_t cookie; /**< A random cookie for identifying this instance of PulseAudio. */ + pa_channel_map channel_map; /**< Default channel map. \since 0.9.15 */ } pa_server_info; /** Callback prototype for pa_context_get_server_info() */ |