[pulseaudio-discuss] [PATCH v3 1/8] card: Add variables for splitting up a profile
David Henningsson
david.henningsson at canonical.com
Tue Nov 17 06:10:29 PST 2015
It can be useful for routing modules to know a profile's input
and output parts, in order to e g change output profile
while keeping the input profile unchanged.
For now filling in these fields is optional and a routing module
must be able to handle NULL in these fields.
Signed-off-by: David Henningsson <david.henningsson at canonical.com>
---
src/pulsecore/card.c | 2 ++
src/pulsecore/card.h | 8 ++++++++
2 files changed, 10 insertions(+)
diff --git a/src/pulsecore/card.c b/src/pulsecore/card.c
index c8b97b7..bb21d0f 100644
--- a/src/pulsecore/card.c
+++ b/src/pulsecore/card.c
@@ -52,6 +52,8 @@ pa_card_profile *pa_card_profile_new(const char *name, const char *description,
void pa_card_profile_free(pa_card_profile *c) {
pa_assert(c);
+ pa_xfree(c->input_name);
+ pa_xfree(c->output_name);
pa_xfree(c->name);
pa_xfree(c->description);
pa_xfree(c);
diff --git a/src/pulsecore/card.h b/src/pulsecore/card.h
index 3e2c004..a72c8c2 100644
--- a/src/pulsecore/card.h
+++ b/src/pulsecore/card.h
@@ -40,6 +40,14 @@ typedef struct pa_card_profile {
char *name;
char *description;
+ /* Identifiers for the profile's input and output parts, i e, if two different profiles
+ have the same input_name string, they have the same source(s).
+ Same for output_name and sink(s).
+ Can be NULL (and in case of an input- or output- only profile, the other direction
+ will be NULL). */
+ char *input_name;
+ char *output_name;
+
unsigned priority;
pa_available_t available; /* PA_AVAILABLE_UNKNOWN, PA_AVAILABLE_NO or PA_AVAILABLE_YES */
--
1.9.1
More information about the pulseaudio-discuss
mailing list