aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsoxdial24
1 files changed, 18 insertions, 6 deletions
diff --git a/soxdial b/soxdial
index a8556b9..ea24b13 100755
--- a/soxdial
+++ b/soxdial
@@ -157,14 +157,17 @@ ignored. This allows you to paste a phone number in the form B<(555)
=head1 NOTES
-B<1.> B<soxdial> works by iterating over the words on the command line,
-and building up an array of B<sox> commands for each dial string or
-segment of dial tone. At the end, all the B<sox> commands are run
+B<1.> B<soxdial> works by iterating over the words on the command
+line, and building up an array of B<sox> commands for each dial string
+or segment of dial tone. At the end, all the B<sox> commands are run
and their combined output (as raw samples) is piped to another B<sox>
command that writes the output as a single audio stream (raw, .wav,
-or whatever format the B<-o>, B<--output> filename indicates). Because
-the final B<sox> command reads only raw audio, it's impossible to
-change the bitrate or sample size in between dial strings.
+or whatever format the B<-o>, B<--output> filename indicates). It has
+to be done this way because B<sox> doesn't allow multiple B<synth>
+arguments in the same command (or, it does, but they don't work as
+expected, or at all). Because the final B<sox> command reads only raw
+audio, it's impossible to change the bitrate or sample size in between
+dial strings.
B<2.> If anything on the command line starts with B<-> but isn't a
recognized option, it's not an error: it gets treated as a dial
@@ -172,6 +175,11 @@ string. This allows e.g. I<555 -1212> to work correctly, but
mistyped options will result in them being dialled as alphabetic
characters. This may be a bit surprising the first time it happens.
+B<3.> I haven't been able to test this with a real land-line phone to
+see whether it will actually dial out.
+
+B<4.> Possibly there will be support for bluebox tones in the future.
+
=head1 AUTHOR
soxdial was written by B. Watson <urchlay@slackware.uk> and released
@@ -335,6 +343,10 @@ sub parse_rate {
}
# main()
+if(system("sox --version > /dev/null 2>&1") != 0) {
+ die "$SELF: can't execute sox, is it installed?\n";
+}
+
if(!@ARGV) {
warn "$SELF: no dial strings. Try $SELF --help.\n";
exit 1;