[asterisk-dev] Support for amr codec?

Alexander Traud pabstraud at compuserve.com
Thu Aug 20 08:12:37 CDT 2020


Software bugs love to be talked about. That helps them to hide. Bugs hate to be tracked down. That might kill them.

> comfort noise, which is not supported by Asterisk

In case of AMR(-WB), Comfort Noise (CN) is part of the decoder itself already. Consequently, no additional support in Asterisk is required. My patch can be changed to enable Voice Activity Detection (VAD) in the encoder. Then, the patch does Discontinuous Transmission (DTX) automatically: /res/res_format_attr_amr.c:amr_clone set attr->vad = 1.
Although optional, VAD/DTX/CN are tested scenarios since Nov. 2016.

> Samsung S20

Puh. Are you using my patch? There is a software bug in Comfort Noise, when you use an *old* version of the OpenCORE-AMR library [1]. Only AMR-WB. Only decoding. This gets solved by patching your library or by using version 0.1.5 of OpenCORE-AMR. That version is included in Ubuntu 20.04 LTS already. For Debian, you have to go wait for Debian 11 (Bullseye).

If you use my patch, the latest library, and still face any issue with Comfort Noise, please, please, please, create an issue report on my GitHub (or talk to me privately). For example, which firmware variant you use on your Samsung S20. Software bugs hate to be tracked down and I hate software bugs.

> few small changes to get the patches applied

Same here. If you have an issue, report it.

> Is there a must have to support amr (with Deutsche Telekom)?

Deutsche Telekom does the transcoding for you. Chapter 4.2.4.1 in
<https://www.telekom.de/hilfe/downloads/1tr114.pdf>

> any problems with the use of amr and asterisk

AMR, AMR-WB and 3GPP-EVS are yet another example to unveil the limitations of the SDP media negotiations in Asterisk. This is discussed in GitHub issue #10 and at the remainder of issue #8. I have yet to understand issue #5 in 3GPP-EVS whether the bug is mine. Anyway, I am happy that I reached that far as I had to patch a lot within Asterisk already. But it looks like it is time to leave.

[1] <https://github.com/traud/asterisk-amr/issues/8#issuecomment-257625107>





More information about the asterisk-dev mailing list