Having noticed AFRICAM is vulnerable to sound card sampling rate
errors, I added the
ability to specify the exact (nearest integer) sampling
rate. AFRICAM defines its bit
times by counting samples, so if the actual rate was too far off
nominal the program could
not sync or hold sync. I am always amazed by how far off the actual
sampling rate is for
some (most?) sound cards. For example, I just recorded an audio file
under Windows XP
using Cool Edit, asking for 8000 samples per second. I input an
800.0 Hz sinewave
synthesized from a crystal source, then measured the frequency of the
800-Hz tone in
the recording. The actual sampling rate turned out to be 8100
s/s! AFRICAM defaults
to the following nominal rates:
SB16 or compatible : 8000 s/s
ESS688 chip based : 8200 s/s
Sigma-Delta board : 7200 s/s
If you can measure the *true* sampling rate of your sound source and
type it in, it will
help considerably in establishing and maintaining proper sync.
One way to get AFRICAM to run under Win-XP is to record an audio file
off the air, like
the original WOLF. The desired format is 8 bit unsigned (single
precision) or 16-bit signed
(double precision) MONO values of raw data sampled at say 8000
s/s. Cool edit can do
this: select the raw data (.pcm) mode, and be sure the saved file
name has an extension
of .AUD. Then when you invoke AFRICAM, use the "DISK" command line
parameter -
which tells AFRICAM to take its audio from disk instead of trying to
talk directly to a sound
card or sigma-delta board connected to a serial port. That makes Win
XP happy. You still
get to type in the exact sampling rate at which the audio was
recorded (it won't be 8000
unless you get real lucky). In a pinch, you can record a 16-bit MONO
.WAV file at 8000 s/s
and just change the file extension from .WAV to .AUD before passing
it to AFRICAM. That
way the first 40 or so words of the file (.WAV header) will be
treated as audio samples when
they are not, but it doesn't matter too much.
Version 5.1 of AFRICAM is available from my web site:
http://www.magma.ca/~ve2iq
Good luck!
Bill VE2IQ
|