aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Aillet <jonathan.aillet@iot.bzh>2018-06-02 00:27:49 +0200
committerJonathan Aillet <jonathan.aillet@iot.bzh>2018-06-02 00:41:29 +0200
commitb8b873b6f58987c2108e11fa378dcaa706e8ddc9 (patch)
treed85cb7f36ce1924cd2cc55df3d9eb45681279eb6
parent8c41c2275b6cfa8f60a5d0f0c1793fd0c88dcf3f (diff)
Take into account params sent with a stream
The params sent with a stream was overwrite when it was read. Save them correctly at stream json parsing. Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
-rw-r--r--plugins/alsa/alsa-api-streams.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/plugins/alsa/alsa-api-streams.c b/plugins/alsa/alsa-api-streams.c
index 7dce960..6a37d47 100644
--- a/plugins/alsa/alsa-api-streams.c
+++ b/plugins/alsa/alsa-api-streams.c
@@ -197,17 +197,16 @@ STATIC int ProcessOneStream(CtlSourceT *source, json_object *streamJ, AlsaLoopSt
goto OnErrorExit;
}
- if (paramsJ) error = ProcessSndParams(source, stream->uid, paramsJ, &stream->params);
- if (error) {
+ stream->params.rate = ALSA_DEFAULT_PCM_RATE;
+ stream->params.rate = ALSA_DEFAULT_PCM_RATE;
+ stream->params.access = SND_PCM_ACCESS_RW_INTERLEAVED;
+ stream->params.format = SND_PCM_FORMAT_S16_LE;
+ stream->params.channels = 2;
+ stream->params.sampleSize = 0;
+
+ if (paramsJ && ProcessSndParams(source, stream->uid, paramsJ, &stream->params)) {
AFB_ApiError(source->api, "ProcessOneSndCard: sndcard=%s invalid params=%s", stream->uid, json_object_get_string(paramsJ));
goto OnErrorExit;
- } else {
- stream->params.rate = ALSA_DEFAULT_PCM_RATE;
- stream->params.rate = ALSA_DEFAULT_PCM_RATE;
- stream->params.access = SND_PCM_ACCESS_RW_INTERLEAVED;
- stream->params.format = SND_PCM_FORMAT_S16_LE;
- stream->params.channels = 2;
- stream->params.sampleSize = 0;
}
// make sure remain valid even when json object is removed