Dialogic
Search
Worldwide
中文 (CHINA)
CANADA English [EN]
CANADA Français [FR]
D/A/CH
NORTHERN EUROPE
日本 (JAPAN)
Contact
DEN
PRODUCTS
SOLUTIONS
TECHNOLOGIES
PURCHASE
PARTNERS
SERVICE CENTER
COMPANY
Dialogic Service Center
Service Contracts
Dialogic
®
Pro™ Contracts
Dialogic
®
Pro™ Summary
Value Per Unit Plan
Standard Per Unit Plan
Premium Per Unit Plan
Standard Service Agreement
Premium Service Agreement
Carrier Pack
Contracts by Product
Contracts by Customer Type
Contracts by Requirement
Technical Helpweb
Helpweb Menu
Helpweb Menu
Dialogic API information
DM3 & JCT products
Host Media Processing (HMP)
Brooktrout
®
Fax
IP Media Server
IMG Gateways
CSP Platforms
MSP Platforms
DMG-series Media Gateways
Signaling & SS7 Components
Multimedia Platform for ATCA
®
Diva
®
Media Boards
Diva
®
SDK
Vision™ Servers & Gateways
NaturalAccess™ products
Diva
®
Client
Eiconcards (X.25)
Other Dialogic products
Downloads
Software Download wizard
Software Download listing
Manuals & Documentation
Document Finder
Contact Support
Select Support region
Americas Support
AsiaPac Support
EMEA Support
Online Service Request
Developer Forums
Developer Forums Menu
Dialogic
®
Global Call Forum
Dialogic
®
Diva
®
SDK Forum
SS7 and Sigtran Signaling Forum
Training
Training Menu
On-line training courses
Share
Home
Service Center
Technical Helpweb
Dialogic® DM3 & JCT Media Boards
Technical Helpweb
Dialogic® DM3 and JCT Media Boards
Functions for Detecting User Defined Tones
Summary
This technote is a discussion of the pros and cons of using function dx_blddtcad() versus function dx_blddt() or dx_bldst*() for detecting user-defined tones.
Symptom:
When developing an application designed to detect user-defined tones, using a function other than dx_blddtcad() sometimes causes incorrect detection of tones.
Reason for the problem:
At the library level, all tones are built as dual-frequency tones with a cadence value (repitition count). Aside from dx_blddtcad(), there are three APIs that can be used to create a user-defined tone. Each of these convenience functions automatically populates a portion of dx_blddtcad().
Each also has a potential drawback that can either cause a tone to be detected when it's not present or not detected when it is present.
The drawbacks fall into one of two categories:
In functions where cadence is not defined (dx_bldst(), dx_blddt()), the "on time" is also not defined. This means a tone can be detected if the defined frequency is present on the line for as little as 40ms! This is especially problematic with dx_bldst(), where even human voice can trigger a single frequency for that period of time.
When user-defined tones are used in an application, they are usually present on the line for significantly longer than DTMFs, since DTMFs are usually about 100ms long and user-defined tones are often 200-500ms or longer.
In functions where only one frequency is defined (dx_bldst(), dx_bldstcad()), there have been issues because of the way the tones are detected. All tones are detected as dual-frequency tones. When the dx_bldst*() convenience functions are used, the second frequency is automatically filled in as 0. Usually for single frequency tones, the second frequency equals 0, so there would be no problem.
Sometimes, however, a second frequency is detected that is very close to the first frequency. This has been reported in the field, and can be resolved by making two definitions to dx_blddtcad().
A related technical note,
Single-Frequency User-Defined Tones not Detected
provides more detail about this issue.
Fix / Solution:
Use dx_blddtcad() for all tone definitions. The small amount of extra data entry far outweighs the possibility of poor tone detection in the field.
Using dx_blddt() and dx_bldstcad() are relatively safe, but may have potential drawbacks that make it safer to use dx_blddtcad().
Generally, one would avoid using dx_bldst().
Product List
Dialogic® DM/IP Boards
Dialogic® JCT Media Boards
Dialogic® Host Media Processing Software Release 3.0 for Windows®
Dialogic® Host Media Processing Software Release 2.0 for Windows®
Dialogic® Host Media Processing Software Release 1.5 for Linux
Glossary of Acronyms / Terms
DTMF- Dual-tone multi-frequency
Related Documentation
Single-Frequency User-Defined Tones not Detected
Feedback
Please rate the usefulness of this page:
0 - not useful at all
1 - potentially useful
2 - quite useful
3 - very useful
4 - exactly the information I needed
Please enter a comment about this page: