Software Based Audio Processing

(this page is unpublished and mainly documents some past audio experimentation)

Users are currently having great success processing their microphone audio in their PC with Stereo Tool, Breakaway Broadcast, and various DAWs (digital audio workstations) or live VST hosting applications (e.g. AudioMulch, Live Professor). Audio is then routed into the ANAN by soundcard output cabling or VAC. Using VAC introduces more latency.

Stereo Tool is a very cost-effective software solution and is available as either a stand-alone application or as a VST plug-in. There is a free version and a paid version ($40) with a few extra features. HB9UQX is interested in getting more ANAN owners using Stereo Tool.

JB Broadcast is a free VST plug-in that does an excellent job, is easy to use, and includes AGC, multiband compressor, ambiance and limiter.

Also, there's a free repository of VST plug-ins to play with - look under "VST Effects"

If you want to invest in a professional level VST plug-in package, iZotope Ozone series of plug-ins can be found for a reasonable price and offer great performance, low latency, excellent GUIs, and one of the niftiest features that I've ever used (see "EQ Matching" below).


Initial Audio Setup

(not necessary if you're using iZoptope Ozone 5 Matching EQ - see below)

Connect your microphone to your computer - an audio interface (USB, firewire) with high quality preamp is recommended (Focusrite, Presonus, Steinberg, etc) but many will use a separate mic preamp and/or equalizer connected to a soundcard.

As a first step, consider EQ'ing your mic audio to flatten out the microphone response curve. Doing this first will simplify adjustments downstream and also will allow many users to share downstream settings to get similar results, discounting only the differences in each person's voice characteristics (and NOT microphone response differences).

1. EQ your mic audio: As the first processing step, pass the mic audio through an EQ stage that delivers a flat response from the mic audio. To determine the EQ needed to flatten your mic response, place a high quality HiFi speaker one foot from the microphone and play pink noise through the speaker. Record 20 seconds with Audacity and plot the spectrum (Log frequency, sample size 4096). Make EQ adjustments and repeat until the resulting spectrum is reasonably flat. Ignore the spectrum above 5KHz. Save the final EQ settings as specific for the microphone used. Alternately, use the EQ Matching function built into many high-end VST packages (see Ozone 5 EQ Matching below).

Here's the resulting EQ for my Rode Procaster:
ananfabmiceq.gif

2. Make a WAV recording of your mic audio: Because of the impossibility of making audio adjustment as you speak live into a microphone (due to latency), make a WAV recording which will be used as the audio source (looped playing) for your software audio chain as you monitor while adjusting (either audio into headphones directly or transmitted into a dummy load while monitoring on a second rx). One phrase that is commonly used for audio adjustment since it fully exercises the frequency spectrum is: "Please orange, I insist that you take the brown zipper off the blue boom," which can be spoken twice to make a 10 sec WAV recording.

3. Loop Play the WAV recording while transmitting and making audio adjustment:
Use either the built-in file player in your DAW if it has one (like Audiomulch does) or play in Audacity connected to your DAW via virtual audio cable. Use either PowerSDR MON or a second receiver for monitoring.


JB Broadcast Processor Setup (free)

I'll describe a simple setup routine that will get you going quickly with good results. Use just two VST components: the EQ you used to flatten the microphone response and JB Broadcast processor (JBBP).

ananjbchain.gif

Of all the multiband compressors I've used, this is one of the easiest to use.

ananjb.gif

For initial setup, I suggest the guidelines from NU9N. You can download the JBBP manual if desired.

  • Set crossover frequencies approximately X1=300hz and X2=2500hz
  • Begin loop play feeding your EQ'd recording through the JBBP. AudioMulch makes this very easy with its built-in FilePlay. Otherwise use Audacity and connect to your VST Host software with a virtual audio cable. VB-Audio Virtual Cable is a good free VAC. If you can, monitor your audio on a second receiver while transmitting into a dummy load. Otherwise, listen through your soundcard output.
  • Enable AGC in top right
  • Set 3 RATIO sliders - 3:1 for gentle compression or 5:1 for moderate compression are good starting points - the value of any slider that you are adjusting is viewable in the VALUE box in the top right under AGC
  • Set the SIDE and AMB sliders to zero (these set ambience and can be experimented with later)
  • Turn on the output brickwall limiter, the square immediately to the left ot he PREGAIN slider
  • Set the DENS slider to zero (not used)
  • Set the OUT slider to maximum
  • Turn off the WLIM (width limiter, for stereo use)
  • Turn on all 3 bands - white squares next to the THRESHOLD sliders
  • Adjust the THRESHOLD sliders (above each frequency band) while watching the compression level meters (0 to -20) initially for peak compression readings of approx 6dB on each band.
  • After thresholds are set, carefully adjust the GAIN sliders of each band while listening for desired tonal balance.

Initial setup is complete. If you want, go back in and add a little ambiance with the SIDE and/or AMB sliders.

It IS possible to dispense with the EQ stage and feed your mic audio directly into JBBP, and still get acceptable results but you need to use some extreme settings. Set the low band threshold to minimum, ratio to maximum, and gain to minimum to start. Also on the high band, set the threshold to maximum and gain to about 3/4 for starters. These settings give you zero compression for the highs to help boost them and maximal compression to lows to tame them.


iZotope Ozone 5 VST Plug-Ins

I started using the iZotope Ozone 5 VST plug-ins recently, and have been extremely impressed with both features and sound quality. There's some very good tutorials on YouTube which help to quickly get up the learning curve plus the context sensitive help within Ozone 5 is excellent. I will be regularly updating this section to pass along tips. Within your DAW, I recommend using the central management plug-in (iZotope Ozone 5.dll) which contains all the individual plug-ins (rather than loading the individual plug-ins themselves into the DAW), and also allows you to change their order under the "Graph" option.


Multiband Compressor ("Dynamics")

If your multiband processor can display a histogram of the audio (e.g., iZotope Ozone 5), a good starting point is to adjust the compressor threshold for the "meat" (midpoint) of the histogram plot, and adjust your limiter threshold so it's just touching the upward tail of the histogram plot. Solo each of the bands, one at a time, and make these adjustments.
threshold.gif


Here is my latest configuration using 4 bands of compression. The gain settings on each band are a major determinant of the final EQ of the tx audio.
mb2.gif


WZ5Q MultiBand Compressor Setup Instructions
Basically, the first thing you need to do is set the Crossover Points on the Low and High Split Frequencies. Mine wound up being set to around 160cps on the Low and 2.5kc on the High. Our Input Gain and Output Gains are set to around –3dB. The Peak Limiter is set to around +2dB. The Gain reduction lights just occasionally show –1dB gain reduction with a –3dB on overshoot peaks.

The next thing is to set the compressors. The Low Band Compressor is set up to smooth the lows. This is accomplished by using a slow Attack of about 50ms, a very slow Release of about 2 seconds, a Ratio of about 4:1, and by tuning the Threshold to achieve about 2dB – 3dB of Gain Reduction. The Make up gain is set to achieve a tonal Mix balance along with the Mids and Highs.

The Mid Band Compressor is set up to give the Mids some density. This is accomplished by using a moderate Attack of about 20ms to 30ms, a Release of about 1/2 second, a Ratio of about 4:1 to 5:1, and by tuning the Threshold to achieve about 3dB – 5dB of Gain Reduction. The Make Up Gain is set to achieve a tonal Mix balance along with the Lows and Highs.

The High Band is set up for de-essing and sibilance. This is accomplished by using a very fast Attack of about .5ms, a very fast Release of about .1 second, a Ratio of about 4:1 to 5:1, and by tuning the Threshold to achieve about 6dB of Gain Reduction on peaks while talking normally, and about 20dB on a hard "ssss". The Make up gain is set to achieve a tonal Mix balance along with the Lows and Mids.

Now that this setting is close, you have to listen to the TX Monitor (Off Air Monitor) and adjust for effect. While listening, tweak the Low Split Frequency control back and forth to find the best sounding setting. Now tweak the Threshold settings on the Low and Mid compressors along with the Make Up gains to get the best balanced sound. Do the same thing with the High Split Frequency control and the Mid and High Thresholds and Make Up Gains. Readjust the Lows, then back to the Highs. The closer you get, the more of a difference a small adjustment will make. When you think your close enough, now you can start to fine tune the Ratio, Attack and Release timings on the different compressors.

As you can see, this is a very touchy operation. You must be able to hear what you are doing. We say to listen the the TX Monitor or an Off Air Monitor while you adjust as that is actually your "Final Mix" and you are tuning for that to sound the best.



Equalizer

EQ Matching - the greatest invention since sliced bread?

There is an alternative to the painstaking initial effort to optimize your EQ from scratch. Use the "Matching" feature of the Ozone 5 EQ.

  • Optional first step - first make a WAV recording while playing pink noise out high quality (flat response) speakers through your preferred microphone
  • Gather one or more good WAV recordings ("targets") over the air of audio EQ you wish to emulate.
  • Then, capture your own raw microphone audio WAV recording with Audacity while speaking for 10-20 seconds into your microphone preamp fed into your soundcard.
  • For best results, you should normalize the amplitudes of all recordings to the same peak level using Audacity's Effect-Amplify function.

anan-pink.jpg

anan-snaps.jpg
Here are spectra of the excellent AM audio of G4BIM and G8NOF (notice their similarity!) plus my unequalized mic audio into my soundcard. FWIW, I determined (via pink noise tests) that my Rode Procaster microphone response is almost completely flat.
For ragchew audio, simply use the target soundclip that you wish to emulate as the matching model ("Apply To"), use Match amount of 100 and Smooth of 0.5. For dx audio, simply use the built-in "Pink Guide" as the matching target. In all matching cases, you should go back in to the "EQ Bands" table and enable a HighPass filter (48dB/octave, starting at 100hz or so) to roll off the low bass.
anan-match.gif
iZotope Ozone 5 Equalizer Matching function - my raw audio snapshot in yellow, snapshot from G4BIM audio clip in white (target), derived matching EQ in red (with manually added 92hz high pass filter "1"), and N1EU resulting audio in green.

You can load multiple target snapshots, and just click on them to instantly change your EQ on the fly!

You can match your EQ to a different microphone nearly instantaneously - just speak into the microphone for ten seconds while snapshotting it, and click the match button and the new EQ is created.

One caveat: your target snapshot should have equal or wider passband than what you want to realize. It is difficult/impossible to edit the resultant matching EQ (red line) to edit a sharp roll-off in bass or treble that the matcher creates. This is the one limitation I've found in the matching EQ.

The Matching function can be a great help to get you a running start (before perhaps some final adjustments) to reach a preferred EQ.


Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License