TONEDEBUG(1)
β¨ TONEDEBUG(1) β¨
okay bestie, so this is tonedebug, part of the Voicetronix Telephony Tools and like... it's the little chaos goblin that helps you figure out if your tone detector settings actually detect the tones they're supposed to detect π
πΈ SYNOPSIS πΈ
tonedebug [options]
π DESCRIPTION π
so basically tonedebug is your lil testing bestie for the libvpb programmable tone detector. you point it at a signal, you give it some parameters, and it tells you whether the detector would have caught that tone or not. lowkey essential.
it has three main modes of operation, periodt:
- testing a single continuous tone π΅
- testing a pulsed tone (on-off-on-off vibes) πΆ
- testing a whole set of tones specified in the environment π
π OPTIONS π
π«Ά Common options (these work in every mode, no cap)
--cardnumber β pick exactly which card you wanna test. default is card0β¨--portnumber β pick exactly which port you wanna test. default is port0of whichever card you're testing π-wwavfile β give it a wav file to play the tones from. here's the tea though: for OpenLine and OpenSwitch cards you should play it into an FXO port with no phone line connected, and the tone detector will process the reflected signal from the hybrid circuit. the OpenPCI cards have almost no echo from that circuit, BUT an on-hook phone connected to an FXS port should produce a detectable echo signal π¦-sfilename.c β writes out a C function you can drop straight into your own code to configure the tone generator with the exact settings you're testing. literally so convenient π
π§ Environment options
if you wanna run tonedebug using settings that live in the VPB_TONE environment variables, just call it with the -e option. like so:
$ tonedebug -e --port 4 -w my.wav
that will use the environment settings to try and detect tones from my.wav played into port 4 of card 0. and that's it β there are no other options specific to this mode, it's a one-trick pony and it ate π
π΅ Continuous tone options
pass the -c option and tonedebug will test parameters suitable for a continuous tone. example time:
$ tonedebug -c 425 100 2000 -w dialtone.wav -t dial
this tries to detect 2 seconds of a 425Hz tone from dialtone.wav, played into port 0 of card 0. if it succeeds it reports a dial event. iconic.
extra options you can use in this mode:
-ccenter-freq bandwidth duration β sets the primary tone characteristics: its frequency and its bandwidth in Hz, and its minimum duration in milliseconds β±οΈ-dcenter-freq2 bandwidth2 β sets the second tone of a multi-frequency tone πΆ-qtwist β sets the twist of a multi-frequency tone π-nsnr β sets the acceptable signal to noise ratio, in dB π-tdial|busy|ringbackβ names a predefined tone to replace with the settings you gave π
πΆ Pulsed tone options
the -p options enable testing for pulsed tones. on top of all the common options AND all the continuous tone options, this mode also supports:
-pcenter-freq bandwidth on-time β sets the primary tone characteristics: its frequency and its bandwidth in Hz, and its 'on' time in milliseconds π’-offoff-time β the 'off' time of the pulse, in milliseconds π΄
π SEE ALSO π
π BUGS π
ngl, we're relying on an echo from the hardware to feed the signal into the tone detector. that should really be fixed so it feeds in directly at some point in the future. it's giving "we'll get to it" energy π
π AUTHOR π
Ron Lee, David Rowe, Voicetronix <support@voicetronix.com.au>
this manual page was written by Ron <ron@debian.org>, for the Debian project (but it may be used by others π«Ά).
VPB driver package Β· Feb 2, 2007 β and that's the whole page bestie, mwah πβ¨
π¦ where this page comes from
- debian bookworm: vpb-utils 4.2.61-1.4
- ubuntu jammy: vpb-utils 4.2.61-1.2
- ubuntu noble: vpb-utils 4.2.61-1.4build1
- ubuntu questing: vpb-utils 4.2.61-1.7
- ubuntu resolute: vpb-utils 4.2.61-1.7build1
- ubuntu stonking: vpb-utils 4.2.61-1.7build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms