diff --git a/src/mod/codecs/mod_opus/mod_opus.c b/src/mod/codecs/mod_opus/mod_opus.c index 9a3469b6ff..bac1f9d54e 100644 --- a/src/mod/codecs/mod_opus/mod_opus.c +++ b/src/mod/codecs/mod_opus/mod_opus.c @@ -571,6 +571,9 @@ static switch_status_t switch_opus_decode(switch_codec_t *codec, plc = 1; encoded_data = NULL; opus_decoder_ctl(context->decoder_object, OPUS_GET_LAST_PACKET_DURATION(&frame_size)); + if (!frame_size) { + frame_size = frame_samples - (frame_samples % (codec->implementation->actual_samples_per_second / 400)); + } if (context->codec_settings.useinbandfec) { fec = 1;