From 61ad51b9267d089b4731ae30bd02b490dc0c07e5 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 24 Sep 2021 11:58:08 -0400 Subject: [PATCH] TT#136955 only do DTMF event output if we have a PT Change-Id: I2c322a3a1ff18cbb3191025607af030c0651e642 --- daemon/codec.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/daemon/codec.c b/daemon/codec.c index 9a739cdf4..3841ccfbb 100644 --- a/daemon/codec.c +++ b/daemon/codec.c @@ -2732,11 +2732,14 @@ static int packet_encoded_rtp(encoder_t *enc, void *u1, void *u2) { unsigned int repeats = 0; int payload_type = -1; + int dtmf_pt = ch->handler->dtmf_payload_type; + int is_dtmf = 0; - int is_dtmf = dtmf_event_payload(&inout, (uint64_t *) &enc->avpkt->pts, enc->avpkt->duration, - &ch->dtmf_event, &ch->dtmf_events); + if (dtmf_pt != -1) + is_dtmf = dtmf_event_payload(&inout, (uint64_t *) &enc->avpkt->pts, enc->avpkt->duration, + &ch->dtmf_event, &ch->dtmf_events); if (is_dtmf) { - payload_type = ch->handler->dtmf_payload_type; + payload_type = dtmf_pt; if (is_dtmf == 1) ch->rtp_mark = 1; // DTMF start event else if (is_dtmf == 3)