aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2024-01-19 06:01:50 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2024-02-09 05:17:39 +0100
commit7b3e3df35335449d6098e5382dce128eda2efefa (patch)
tree9633c4c9387fb40a1c3c9450a1d0134e858af423
parent58569ad703acb91a07b72a7bc59be7be739242a0 (diff)
sdp_audio_codecs_from_speech_codec_list: add all matches
-rw-r--r--src/libmsc/codec_mapping.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/libmsc/codec_mapping.c b/src/libmsc/codec_mapping.c
index cd5fcaece..31ee8dcb3 100644
--- a/src/libmsc/codec_mapping.c
+++ b/src/libmsc/codec_mapping.c
@@ -502,11 +502,13 @@ void sdp_audio_codecs_from_speech_codec_list(struct sdp_audio_codecs *ac, const
int i;
for (i = 0; i < cl->len; i++) {
const struct gsm0808_speech_codec *sc = &cl->codec[i];
- const struct codec_mapping *m = codec_mapping_by_gsm0808_speech_codec(sc);
- if (!m)
- continue;
- sdp_audio_codecs_add_copy(ac, &m->sdp);
- /* FIXME: for AMR, apply sc->cfg to the added codec's fmtp */
+ const struct codec_mapping *m;
+
+ codec_mapping_foreach (m) {
+ if (!codec_mapping_matches_gsm0808_speech_codec(m, sc))
+ continue;
+ sdp_audio_codecs_add_copy(ac, &m->sdp);
+ }
}
}