VoIP DTMF notes

Source: Internet
Author: User

DTMF definition: Digital keys (0 ~ 9 * # a B C D ).

There are usually three methods for detecting DTMF in VoIP: SIP info, inband, and out band (rfc2833). In addition, the latest RFC has been adopted for the requirements of DTMF In the 3GPP IMS specification.
4733 replaces RFC 2833.


1. Sip info

For out-of-band detection, DTMF Data is transmitted through the sip signaling channel. There is no unified implementation standard, which is sent through the SIP info method. The signal field in the package recognizes the DTMF button. Note: When DTMF is "*", the corresponding signal = * or signal = 10 for different standard implementations. The advantage of SIP info is that it does not affect the transmission of RTP data packets, but may cause non-synchronization.

2. out band (rfc2833)

This is an in-band detection method. During RTP transmission, the special RTP payloadtype is called teleponeevent to mark rfc2833 data packets. The same DTMF button usually corresponds to multiple RTP packets, and the time stamps of these RTP packets are the same. This can be used as a basis for identifying the same key, the end flag of the last RTP packet is set to 1, indicating that the DTMF Data ends. In addition, many sip
UA including IAD provides teleponeevent settings such as 3cx phone, billion-IAD, ZTE-IAD and Other Default teleponeevent 101, but can be manually modified, in this case, you must obtain the teleponeevent parameter negotiated by SDP before rfc2833 DTMF detection.

3. In band

It is an in-band detection method and is transmitted together with common RTP voice packets. The only way to perform inband DTMF detection is to extract RTP data packets for spectrum analysis. After spectrum analysis, we can obtain the high and low frequency frequencies, and then obtain the corresponding buttons in the table, the algorithm used for spectrum analysis is generally Goertzel. The implementation of this algorithm is also very simple. There are many lower-end algorithms available on the Internet. However, it is recommended to use the fixed-point algorithm, which is very inefficient at floating-point algorithms.

From the usage perspective, rfc283 is generally used, that is, out band. Generally, Softswitch servers support these methods. The asterisk I know supports the SIP info, RFC 2833, and inband methods, however, rfc2833 has the best compatibility. Because IMS uses RFC 47233 to replace rfc2833 for dtfm, there may be compatibility issues when the IMS client is connected to SoftSwitch.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.