Transfer Function Instructions

Hardware Setup

Measuring Time Delay

Setup Screen

Operating Transfer Function

Transfer Function is a powerful two-channel acoustic measurement tool. To use it, you need an audio interface that supplies two discrete channels of audio.

The Basics
 
Transfer Function is an acoustic measurement tool that mathematically compares a reference signal, which can be pink noise or program material, with the same signal after it has gone through a signal chain and speakers. Since it is looking at the difference between the signals, factors such as room reverberation and noise are minimized.

Normally, you will want to use a two-channel input device, such as iAudioInterface2. However, you can use most of the features of Transfer Function with the built-in iOS device microphone. In this case, you will be using the internal pink noise generator as the reference test signal. Route the headset output to the sound system input. The generator signal will be looped back to the input internally.

When you are using a two-channel audio input device, you will route a mono line-level source signal to the right channel input, and send the same signal to your speakers. Connect a microphone to the left input, as the test signal input. With this configuation, the app can subtract the reference source from the test signal, and show both the magnitude and phase of the transfer function, so that you can correct system EQ and other parameters for optimum system performance.

Since the source signal is always changing, the app needs to know very accurately the time delay between the source and test signals. Transfer Function includes a sample-accurate Impulse Response-based Delay Finder for this purpose.

Hardware Setup - iOS Device Microphone

The first step is to setup the hardware. If you are using the built-in iOS mic, make an 1/8" cable using a stereo 2-conductor plug, like the kind used on headphones that have no microphone included. On the other end of this cable, you can use either a balanced or unbalanced connector. Make sure you match the generator setting to the type of cable you are using.

Connect this cable to the input of your sound system, and route the signal to the loudspeakers. The app will loopback this signal internally to provide the reference test signal. The iOS mic provides the test signal.

Skip ahead to the "Measuring Time Delay" section for the next step.

Hardware Setup -Generic Two-channel Input Device

In both cases, connect your microphone to the left input of the device,  and if possible set it up on a mic stand so that its position will not change during the test. Set the mic input range to avoid clipping.

Pink Noise

Route the output of your device to the sound system input. Control the pink noise from the app.

Program Material

Send the music, in mono, to the speaker system that you wish to test, and also split the same signal out and route it to the right input of the device.

That's it. You are ready to setup the software for the Transfer Function measurements.

Hardware Setup - iAudioInterface

We are assuming that you will be using a microphone, so in both cases you would have the mic plugged into the XLR input, as the Measure source, and if possible set it up on a mic stand so that its position will not change during the test. Set the mic input gain range to avoid clipping.

Using the Internal Pink Noise Generator

For pink noise, on the Transfer Function Setup page, select Ref Source, and on the top, select Mic/Gen. Then just run a cable from the Line Output / Headphones jack to your system input. Turn on or off the pink noise using the sine wave icon on the main screen. Note that pink noise will only run when either the Delay Finder is on, or when the measurement is running.

Using Program Material as the Reference

You may be in a situation, such as during a live sound event, when it is not possible to run pink noise. In this case, you can use the actual sound from the event as the reference signal.

To set up for this, select Mic / Line on the Reference source page, and run an output from the sound system that is a mono mix of the audio going out to the room into the Line Input jack. Probably Mid gain will work, just check the little M R meters on the main screen for the levels. Now set the delay, and you are all ready to measure the system frequency response and phase while the music is playing.

Using the Stereo Line Input of iAudioInterface

If you are using iAudioInterface2, you can use the line input in stereo mode, to route both the measurement signal and the reference signal to the transfer function.

To do this, tap the "Ref Source" button on the Setup page to bring up the Reference Source page, and then turn on "Use Stereo Line Input". This will switch the hardware so that the line input will be feeding the transfer funciton. The left input will be the measurement signal, and the right input will be the reference signal in this mode.

Measuring Time Delay

Accurate time delay is the key to good Transfer Function results. Time delay offsets will be a function of distance to the speakers from the microphone, and also may be introduced by DSP processors in the signal chain. It is important to set the time delay before performing any Transfer Function measurements.

To set the time delay, tap the time delay value, which appears on the top right of the iPhone display, and the bottom right of the iPad display. In either case, the Time Delay setup screen appears:

Delay Setup Screen

First, select an FFT size that will accommodate the longest delay that you expect. The maximum delay time is shown and changes as you change the FFT size. Remember that delay is approximately equal to a foot per ms, or a meter per 3 ms.

Next, select the number of averages you wish Delay Finder to take for a reading. For pink noise, a couple of averages are plenty, although you may want more for music, or if the noise level in the area is an issue.

Now tap the Find Delay button, and wait for the results to be computed. The result will be shown in the text field on the top of the screen.

If the result looks reasonable to you, tap Apply to save it and to put that delay time into effect.

If you know the actual delay time from another method, you can enter it directly in the field.

Delay Finder resolves delays to 1 sample at 48kHz, or about 21us.

Setting System Latency

To get the best results, you will want to set the overall system latency, which includes the delay from the internal codec, any DSP processors in the chain, or any other sources of delay.

To do this, you will want to bring the microphone (iOS or external mic) directly to the front of the loudspeaker. Then, run the delay finder as usual, and tap "Set as System Latency". This will store this value, and all calculations done will now take this latency into account.

It's a good idea to set this before each set of measurements, to make sure that nothing has changed since the last time this was set.

Relative Delay Calculations

The Delay Finder screen provides a method to calculate the delay offset, or difference in delay times, between two different loudspeakers. This is useful when setting up delay times for fill speakers that are physically offset from the main loudspeakers.

To do this, from a single position, turn on only the main loudspeakers, and route the reference signal to only those loudspeakers. Run the Delay Finder, and tap the "Capture as Baseline" button. This delay value will be stored.

Now, turn off the mains, and turn on the next set of fill loudspeakers. Again run the Delay Finder, and observe the relative delay, which is shown as the Delta.

Repeat this for as many fill loudspeakers as desired. If you move to a new position, go back to the first step and capture the main loudspeakers delay time before testing the next fill loudspeaker.

The Setup Screen

Setup Screen

The setup screen has these fields:
Operating Transfer Function

Transfer Function is a more powerful measurment than an RTA, since it has the ability to analyze a system even in a reverberant space. However, it is more complex to set up and use correctly.

The most critical factors involved in using transfer Function are delay, averaging, and coherence. If these are setup correctly, you will likely get good results.

Other factors that are important are input levels, FFT settings, and graph smoothing. We will look at all of these, and explain how to use them to get the best results.

Delay

Delay is very important, since the algorithm is comparing two signals that are usually shifted in time. Use the Delay Finder, by tapping on the delay time number on the main screen, to set the delay. If the mic moves in relation to the speaker even small amount, it will effect the results. Initially, you will see the highest frequencies bending up or down.

See the section on Measuring Time Delay for more information.

Averaging

Averaging, which is set be tapping the button in the lower right corner, is useful to get the plots to settle down, and show more stable results.

Transfer Function supports averaging up to 16 FFTs, or you can also select Fast or Slow, which are exponential decay averages, or Avg mode, which is a continuous running linear average of all FFTs. To reset Avg mode, just re-select averaging.

You will want more averaging with music than pink noise. With pink noise, 4-8 averages or Fast mode are reccommended, while 8-16 averages or Slow work better for music.

Coherence

Coherence is a measure of how much one set of FFTs is like another. Coherence is what you can use to determine if you have the other settings, such as delay and gain, set correctly. A coherence of 100% would be perfect, but if you can get an average above 70% that's fine.

While you are getting setup, and learning how to use Transfer Function, it's a good idea to leave the coherence trace turned on (Settings screen).

In fact, it is so important that we have implemented Coherence Masking, to essentially hide results that don't meet a minimum coherence level. Try setting Coherence Masking on the Setup Screen to at least 50%, or just touch the right edge of the display, and slide the Masking marker up or down.

Time and Data Windows

Transfer function employs both time and data windows.

The time window is a side effect of the FFT length and sample rate. Since we run at 48kHz, the time window in effect is simply the FFT length / 48000.  Ideally, the first reflections from the speaker would lie outside that time window, to remove the effects of the room on the measurement.

The data window is set on the Setup screen, as the FFT Window.

Input Levels

As in any other test measurement, if your input gain is not set correctly, you will not get usable results. We have two small level meters visible at all times, to help you see the input levels.

Try to get the level at the half to three-quarters area, and make sure you avoid clipping.

You can use the microphone gain settings, and the line level input gain setting (available on the Levels screen) to get solid input levels.

Smoothing

Smoothing can help you visualize overall eq or phase patterns, by removing some of the detail from the graphs.

On iPad, you can set the magnitude and phase smoothing independantly, and on iPhone, one setting controls both plots.

FFT Settings

There are two settings that control the FFT itself. FFT size, and FFT Windowing. Both are set from the Setup screen.

FFT size is a tradeoff between speed and frequency resolution. For most cases, we would suggest 8192 or 16384 points. Windowing helps remove artifacts and increases dynamic range, and we suggest using it in most cases. We have 3 different windowing algorithms, Hann is our personal favorite.