From 30d8df7d25248bd429c4859e581fa0b4d410d134 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 19 Apr 2018 20:09:10 +0200 Subject: [PATCH] add layout to format --- spa/include/spa/param/audio/format-utils.h | 2 +- spa/plugins/alsa/alsa-sink.c | 1 + spa/plugins/alsa/alsa-source.c | 1 + src/examples/export-source.c | 4 +++- src/modules/module-audio-dsp.c | 1 + 5 files changed, 7 insertions(+), 2 deletions(-) diff --git a/spa/include/spa/param/audio/format-utils.h b/spa/include/spa/param/audio/format-utils.h index d22615f9e..a53d39b60 100644 --- a/spa/include/spa/param/audio/format-utils.h +++ b/spa/include/spa/param/audio/format-utils.h @@ -56,10 +56,10 @@ spa_format_audio_raw_parse(const struct spa_pod *format, { return spa_pod_object_parse(format, ":",type->format, "I", &info->format, + ":",type->layout, "i", &info->layout, ":",type->rate, "i", &info->rate, ":",type->channels, "i", &info->channels, ":",type->flags, "?i", &info->flags, - ":",type->layout, "?i", &info->layout, ":",type->channel_mask, "?i", &info->channel_mask, NULL); } diff --git a/spa/plugins/alsa/alsa-sink.c b/spa/plugins/alsa/alsa-sink.c index b75a670f2..bcf2bd3fd 100644 --- a/spa/plugins/alsa/alsa-sink.c +++ b/spa/plugins/alsa/alsa-sink.c @@ -339,6 +339,7 @@ impl_node_port_enum_params(struct spa_node *node, "I", t->media_type.audio, "I", t->media_subtype.raw, ":", t->format_audio.format, "I", this->current_format.info.raw.format, + ":", t->format_audio.layout, "i", this->current_format.info.raw.layout, ":", t->format_audio.rate, "i", this->current_format.info.raw.rate, ":", t->format_audio.channels, "i", this->current_format.info.raw.channels); } diff --git a/spa/plugins/alsa/alsa-source.c b/spa/plugins/alsa/alsa-source.c index 150baebff..03cd7f990 100644 --- a/spa/plugins/alsa/alsa-source.c +++ b/spa/plugins/alsa/alsa-source.c @@ -304,6 +304,7 @@ static int port_get_format(struct spa_node *node, "I", t->media_type.audio, "I", t->media_subtype.raw, ":", t->format_audio.format, "I", this->current_format.info.raw.format, + ":", t->format_audio.layout, "i", this->current_format.info.raw.layout, ":", t->format_audio.rate, "i", this->current_format.info.raw.rate, ":", t->format_audio.channels, "i", this->current_format.info.raw.channels); diff --git a/src/examples/export-source.c b/src/examples/export-source.c index 446d97ad2..22c833460 100644 --- a/src/examples/export-source.c +++ b/src/examples/export-source.c @@ -204,6 +204,7 @@ static int port_enum_formats(struct spa_node *node, ":", d->type.format_audio.format, "Ieu", d->type.audio_format.S16, SPA_POD_PROP_ENUM(2, d->type.audio_format.S16, d->type.audio_format.F32), + ":", d->type.format_audio.layout, "i", SPA_AUDIO_LAYOUT_NON_INTERLEAVED, ":", d->type.format_audio.channels, "iru", 2, SPA_POD_PROP_MIN_MAX(1, INT32_MAX), ":", d->type.format_audio.rate, "iru", 44100, @@ -233,7 +234,8 @@ static int port_get_format(struct spa_node *node, d->t->param.idFormat, d->t->spa_format, "I", d->type.media_type.audio, "I", d->type.media_subtype.raw, - ":", d->type.format_audio.format, "I", d->format.format, + ":", d->type.format_audio.format, "I", d->format.format, + ":", d->type.format_audio.layout, "i", d->format.layout, ":", d->type.format_audio.channels, "i", d->format.channels, ":", d->type.format_audio.rate, "i", d->format.rate); diff --git a/src/modules/module-audio-dsp.c b/src/modules/module-audio-dsp.c index 017f6a0bb..0350044da 100644 --- a/src/modules/module-audio-dsp.c +++ b/src/modules/module-audio-dsp.c @@ -387,6 +387,7 @@ static int port_enum_formats(struct spa_node *node, "I", t->media_type.audio, "I", t->media_subtype.raw, ":", t->format_audio.format, "I", t->audio_format.S16, + ":", t->format_audio.layout, "i", SPA_AUDIO_LAYOUT_INTERLEAVED, ":", t->format_audio.rate, "i", n->sample_rate, ":", t->format_audio.channels, "i", n->channels); }