By Mike Cook, "Acorn User", June 1999 issue.
PUTTING OUT SIGNALS
MIKE COOK LOOKS AT AN AUDIO BARGAIN
DigSigGen is a perfect example of the power and flexibility of our favourite computer being put to a very specialised use. Basically this application generates digital audio files of test tones for transferring onto an audio CD. These tones can then be used to test audio circuits to CD quality standards. Granted this is not an application that will find a favourite place in everybody's software collection, but if you need test tones tailored to your own specification then this is not to be missed. It can also be used by people taking a course in signal processing, or electronics in general, as it is a most comprehensive synthesis/analyses tool for waveforms. The specialist nature of the software means we can forgive it for not corresponding to the normal desktop standard. Instead it requires the computer to run in 16 colours, with a resolution of 1280x1024.
Gaussian Tone Burst
Show Full Size Picture When the application is run it occupies the whole of the screen. All the controls are arranged along the bottom of the screen and can be incremented or decremented by a click of the mouse; no other controls, parameters or menus are used. The rest of the screen is devoted to three windows; probability density function, Fourier analyses, and a dual window / waveform window. In this last one we really have a window (computer screen area) showing the window function (filtering of the signal), it's just unfortunate that the same word is used for different concepts.
The window function also serves as an envelope for tone bursts, as well as giving you a simple look at the waveform in the time domain, or how it would look on an oscilloscope. This is less than perfect as at higher frequencies the display just looks like a collection of random dots or lines on the screen. This is due to sampling rates and scaling of the display, and as this is not the prime purpose of the package failure to rescale the display can be forgiven.
As the purpose of the package is to generate tones Let's look at what can be defined. Well first of all you can choose the wave shape, this of course will determine the mix of frequencies that will be produced. For example a sine wave contains just one spot frequency, or the fundamental. All other wave shapes are made from a number of sine and cosine waves. These are added together at frequencies that are an integer multiple of the fundamental, or to put it in the jargon, harmonics.
500Hz Tone Decay
Show Full Size Picture
DigSigGen allows you to choose from the standard wave shapes; sine, square, triangle and sawtooth.
However, there are also a number of random waveforms. A random waveform basically sounds like hissing and consists of a mixture of frequencies that are not harmonically related. As such there is no pitch with a random waveform, but the spread of frequencies affects how it sounds.
This is where the probability density function window comes in, it shows you what spread of frequencies are present in the waveform. For example a 'Flat Random' waveform has an equal probability of any frequency at any instant. Therefore it comes as no surprise that a 'Gauss Random' waveform has a Gaussian shape to it. Pink noise has a greater probability of lower frequencies, while red noise has even more. Remember that this is still noise and will still sound like a hiss, but the hiss will have different audio characteristics.
A specialist waveform is the Sin+Cos, this outputs a Sine wave on the left channel and a Cosine wave on the right one. If you view this on an oscilloscope, with one channel driving the X deflection and the other driving the Y, then in a perfect system you will see a circle. Any distortion or difference between the two channels will result in the circle being distorted. Finally there is an intermodulation test waveform, this is in fact two tones of different frequencies and amplitudes.
Gaussian Random Noise
Show Full Size Picture
Having selected the waveform you can then select the frequency, and like all the other parameters you need to click through the preset values.
The length of the tone can be set, here it is done by the rather oddly named Pre-Decay time. This is the length of time before the tone starts to decay, but it is not the most obvious of names to define the tone length. When writing to CDs you can't record a track shorter than ten seconds, so if you only want a short tone then you can add some silence or 'Pre-Quiet' to the tone.
Next you will want to set the volume or level, again predefined but here usefully in terms of decibels. The full amplitude waveform is defined at 0dBs but there are some higher values for deliberately producing clipped waveforms. You can also define the number of bits per sample and sample frequency. Finally you can select some effects to modulate the basic tone, these are a frequency sweep, tone burst and reverberation.
With all the choices made, clicking the Go button actually generates the waveform, which in due course is drawn and the Fourier analyses displayed. At this point the waveform is also saved in a fixed name file inside the application. If you have a 16-bit sound system you have an opportunity to hear your creation by clicking the 'play last' box. If it is to your liking you can save the file, although this is really just a rename function to stop the file being overwritten.
If you want to save the screen (very useful for reviews) pressing the * key on the numeric pad saves the screen inside the application in a series of pre-named files. The numbering sequence starts up every time you open the application so don't be caught out thinking the earlier screen saves are preserved. The program should really read what files are present, and then start numbering them from there.
Log Frequency Sweep
Show Full Size Picture
That is really all there is to it, but what you need to know is what waveform you want and how you are going to use it. The manual quite rightly makes no mention of this as really this needs a text book on audio amplifiers to do the subject justice. While you can listen to the tone on the computer this will not be at the highest possible quality. To get the best results you really need to assemble these tones onto a CD.
Traditionally these test CDs have cost much more than the price of this package and usually they don't have all the waveforms you want. However, if you don't have your own CD burner then Atomic Software can supply you with a test CD of their own. Naturally it is made using DigSigGen and very reasonable priced at £8.99. If purchased with DigSigGen then there is a discount of £5 on the combined price.
As I was finishing this review an updated version arrived on my desk. This has added to the types of waveforms that can be generated by implementing a dithering function, in effect adding noise to an otherwise pure sound. I have not had time to fully check this out.
So who would want to use this? Well audiophiles can test their CD player or computer sound card and see if the performance is really what it is claimed to be. Service engineers can use this to check up on an audio repair, and sound engineers can check equipment. By encoding these tones in MPEG format manufacturers of digital TV equipment can check out the sound quality given by different chip sets. It could also be used by software writers to compare MPEG decoding strategies.
Like computers in the early days, this is not for everyone, but if it is for you then you will know about it. In short this is a unique and highly technical piece of software set at such a low price you are in danger of dismissing it. On another platform you could easily move the decimal point in the price by at least one place to the right.
Supplier: Atomic Software 1 Fells Grove, Worsley, Manchester, M28 7JN
Type: Precision audio signal generator
StrongARM Rise PC, 1MB VRAM, 16 Mb RAM,
monitor capable of l280xl024 graphics.
30Mb+ Harddisc space free, 16 bit sound system.
Probability Density Distribution or Probability Density Function, pdf, (not to be confused with portable document format nor printer definition file) is the probability that the signal will be found at one particular value at any one instant plotted against the whole range of possible values. (Statisticians call this a plot of the frequency of amplitudes, and this is where confusion can arise; I shall avoid all use of the word 'frequency' in this context).
A sinusoid has an almost catenary-shaped amplitude distribution: The probability that the instantaneous value of a sine wave at any one instant will be +1 or -1 is much higher than the probability that the instantaneous value will be at zero. This is because the instantaneous value of a sine wave changes slowest at peak values and fastest when going through zero. Gaussian Random Noise, alternatively, has a Guassian (bell-shaped) amplitude distribution; that is, there is a greater probability that the instantaneous value will be found near zero and a much lower probability that it will be found near any of the extreme values.
The Frequency Spectrum of un-filtered Random Noise (White Noise) is flat; all frequencies are present at equal amplitudes when the random noise is measured in frequency bands of equal bandwidth. Pink Random Noise has a frequency spectrum that decreases by 3dB for every doubling in frequency when so measured. Both White noise and Pink noise, when generated in nature, have a guassian-shaped probability density distribution.
On the other hand, computer generated random numbers (generated using a pseudo-random sequence generator) have a flat (square) probability density distribution (each number has an equal probability of occurring) whilst still having a flat frequency spectrum. Random numbers with a square probability density distribution are used for picking winners in the lottery and in premium bonds. If ever ERNIE starts generating random numbers with a gaussian amplitude distribution, I would like a premium bond with the number zero!
Roger Darlington, Summer 1999.
Nuclides & Elements Review