From adaf1342e7a1d5284902b8890d84ddad4f122498 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Mon, 7 Jul 2025 09:52:50 -0400 Subject: [PATCH] MT#55283 fix clashing PT numbers closes #1960 Change-Id: Ia69cbb69a826141b85a65cd7487a655e047e88d2 (cherry picked from commit fe39a7927b3c6aca2c092303849e2cd7e9896ffa) --- daemon/codec.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/daemon/codec.c b/daemon/codec.c index 460a22674..d6f0171a1 100644 --- a/daemon/codec.c +++ b/daemon/codec.c @@ -6000,6 +6000,14 @@ void codec_store_transcode(struct codec_store *cs, str_q *offer, struct codec_st ilogs(codec, LOG_DEBUG, "Adding codec " STR_FORMAT " for transcoding", STR_FMT(codec)); + __auto_type pt_num = + pt ? t_hash_table_lookup(cs->codecs, GINT_TO_POINTER(pt->payload_type)) : NULL; + if (pt_num) { + ilogs(codec, LOG_DEBUG, "RFC-defined payload type number %d is already in use, " + "using generic number for " STR_FORMAT, + pt->payload_type, STR_FMT(codec)); + pt->payload_type = -1; + } // create new payload type pt = codec_add_payload_type_pt(pt, cs->media, NULL, orig); if (!pt)