]> git.ipfire.org Git - thirdparty/asterisk.git/commit
codec_builtin.c: G729 audio gets corrupted by Asterisk due to smoother
authorunder <pcapdump@gmail.com>
Thu, 22 Jul 2021 16:39:11 +0000 (19:39 +0300)
committerFriendly Automation <jenkins2@gerrit.asterisk.org>
Mon, 2 Aug 2021 19:16:25 +0000 (14:16 -0500)
commitde3f5350dee3beb5306fa9074edc3a4db166c98c
tree354a5b38a7ce765656625fb80cffa56d31e96096
parent6428124b06bc0147ce6c6379a96da4c8ac559af7
codec_builtin.c: G729 audio gets corrupted by Asterisk due to smoother

If Asterisk gets G.729 6-byte VAD frames inbound, then at outbound Asterisk sends this G.729 stream with non-continuous timestamps.
This makes the audio stream not-playable at the receiver side.
Linphone isn't able to play such an audio - lots of disruptions are heard.
Also I had complains of bad audio from users which use other types of phones.

After debugging, I found this is a regression connected with RTP Smoother (main/smoother.c).

Smoother has a special code to handle G.729 VAD frames (search for AST_SMOOTHER_FLAG_G729 in smoother.c).

However, this flag is never set in Asterisk-12 and newer.
Previously it has been set (see Asterisk-11).

ASTERISK-29526 #close

Change-Id: I6f51ecb1a3ecd9c6d59ec5a6811a27446e17065d
main/codec_builtin.c