SFS/ESynth Help File

Program:Vs 1.1
Help file:Vs 1.1

¤Learn more
¤Bug reports

Internet links:
¤ESynth Home
¤SFS Home
¤Speech &
Hearing Home

¤UCL Phonetics
and Linguistics

ESynth is a program designed to explain the harmonic analysis and synthesis of signals. With ESynth you can create signals by adding togather individual sinusoidal waveforms (sinewaves) and study the resulting waveform and spectrum. You can also perform an analysis of an input waveform, to see how a given sound can be represented in terms of a sum of sinewaves.

ESystem is a simple application that is complete in itself but which is also designed to be compatible with the Speech Filing System (SFS) tools for speech research.



  • New. Resets the display to a standard setting.
  • Open. Opens an existing SFS or Windows audio file for analysis.
  • Save. Saves the synthetic output waveform to an SFS or Windows audio file.
  • Print. Reproduces a copy of the current display on the printer. You can add your own title to the printout.
  • Record. Record a new input signal for analysis.
  • Replay input. Replay the current input waveform.
  • Replay output. Replay the current synthetic output waveform.
  • DFT. Perform a discrete Fourier transform (analysis) on the marked section of the input waveform. This overwrites any existing spectral components and synthetic output signal.
  • Edit components. This launches the ESynth control panel, to allow you to edit the individual component frequencies, amplitudes and phases. This provides a less convenient but more accurate way of specifying components compared to dragging them with the mouse.
  • Add component. Add a single new sinewave component to the output. This is added at 2000Hz and 0.5V; you will need to drag it to its correct position. You can also add new components with the ESynth control panel.
  • Display input. Display the input waveform.
  • Display spectrum. Display the spectrum of the output signal.
  • Display output. Display the synthetic output waveform.
  • Display components. Display all of the components of the output waveform individually.
  • Scroll left. Scroll the waveform displays by one screen earlier in the waveforms.
  • Zoom in. Zoom in to the area marked by the left and right cursors.
  • Zoom out. Zoom out to the display time used at the last zoom in.
  • Scroll right. Scroll the waveform displays by one screen later in the waveforms.

Other menu options

  • File/Import Harmonics. Read a table of harmonic frequencies and amplitudes from a text file. Format is as produced by Export Harmonics option.
  • File/Export Harmonics. Write the current table of harmonics frequencies and amplitudes to a text file.
  • Signal/Fourier Analysis (Current Fx). Perform a harmonic analysis of the current signal using the current fundamental frequency value (set in Options/Harmonise).
  • View/Grid. Turn the backgound spectrum grid lines on and off.
  • Options/Decibel scale. Switch the setting of sinewave amplitudes from a linear (V) scale to a decibel (dB) scale. The decibel scale is calculated with respect to a peak waveform amplitude of 10000 (assumed to be 1V).
  • Options/Harmonise. When harmonise is set, all frequencies are forced to values that are whole number multiples of a given fundamental frequency. The fundamental frequency may be set in the Harmonise dialogue. When harmonise is not set, sinewaves may be placed at any frequency.

Mouse operation

On the waveform displays the left mouse button sets the position of the left (start time) cursor. The right mouse button sets the position of the right (end time) cursor. Use these to specify which area to expand in the Zoom-in command.

On the spectrum graph the mouse can be used to change the frequency, amplitude or pahse of any component. To move a component, position the mouse cursor over the little box at the top of the harmonic. The mouse cursor should change shape into a four-headed arrow. Now press and hold down the left muse button, dragging the harmonic to its new position. You can change the phase of a harmonic by positioning the cursor as before and pressing and holding the right mouse button. You should see a pop-up menu which allows you to set the phase to be 0, 90, 180 or 270 degrees. This menu also allows you to delete a harmonic.

Control panel operation

The control panel has three main areas: a list of the details of the sinewave components of the synthetic signal, edit boxes for entering frequency, amplitude and phase values, and a set of buttons for adding, deleting or changing entries, and for playing out the synthetic output signal. To change an existing component, click on the component in the list box, change the values in the edit boxes, then click on the Update button. To add a new component, enter the new values in the edit boxes and click on Add. To delete a component, select it in the list box and click on Delete.

You can show and hide the control panel using the Edit button on the toolbar.

Keyboard shortcuts

The following keyboard shortcuts are provided:

LScroll Left
RScroll Right
ZZoom In
UZoom Out (Up)
TZoom Out to Top
PPlay Input Signal
[space]Play Output Signal

Want to learn more?

If you find the study of speech interesting and would like to know more, why not visit the Internet Institute of Speech and Hearing at www.speechandhearing.net ? There you will find tutorials, reference material, laboratory experiments and contact details of professional organisations.

Bug reports

Please send suggestions for improvements and reports of program faults to SFS@phon.ucl.ac.uk.

Please note that we are unable to provide help with the use of this program.


ESynth is not public domain software, its intellectual property is owned by Mark Huckvale, University College London. However ESynth may be used and copied without charge as long as the program and help file remain unmodified and continue to carry this copyright notice. Please contact the author for other licensing arrangements. ESynth carries no warranty of any kind, you use it at your own risk.

© 2003 Mark Huckvale University College London Version 1.1 July 2003