Although the initial analysis stage uses the same procedure as pvan (creating a series of FFT analysis frames), mqan then examines each frame for peaks, which indicate the presence of partial tones (not necessarily harmonic), and attempts to match related partials across successive analysis frames. The result is a set of 'partial tracks', which may start and stop at arbitrary times, and cover an arbitrary range of frequencies. mqan is therefore able to track considerable frequency changes in the sound, and is less dependent than pvan on knowing the exact fundamental frequency of the sound. It is neverthess important to set an analysis frequency known to be lower than the lowest frequency in the sound. Some implementations of this technique even allow partials to overlap, so that one partial may start below the frequency of another, but rise above it later. The mqan approach is a little more conservative, in that the partials are not allowed to overlap. This is usually not a problem with strongly pitched and harmonic sounds, but can lead to some tracking anomalies with more complex sounds where, rather than overlapping, two crossing partials will be treated as if they approach each other and then diverge.
All processing is performed in memory. While WIN32 systems all support virtual memory (where hard disk storage is used to mimic memory), so that large files that would not fit in physical memory can be processed, this will inevitably slow down processing, so the processing of long sounds should generally be avoided.
Note that the display program for mqan, mqplot,
does not offer any transformation commands, it is strictly a display facility.
If you wish to process the analysis file in any way (or even if you simply
want to use the more comprehensive display facilities of monan),
you will need to convert the file to .an format, using mqtoan.
mqan requires several parameters:
mqan [-x] fmin headfile sndfile outfile threshold (dB)[Top][SNDAN home page]
[-x] = exchange byte-order for .fp and .sh files.fmin = estimated minimum frequency present in the sound.You may need to use this if importing raw soundfiles created on a different computer architecture, such as theApple Macintosh. See File Formats for more information on the soundfile formats supported by SNDAN.headfile = the .head file for the sound , created using mkheader.Used to set the analysis fundamental frequency.
sndfile = The source soundfile.outfile = output analysis file. Must have the .mq extension.Must be mono, in one of the file formats supported by SNDAN.
threshold = amplitude level (in dB) below which spectral peaks are not retained.The original documentation suggests a range between -20 and 10, which correspond to absolute amplitudes between 0.1 and 3.16 (relative to a 16bit maximum of 32767). This is very low indeed (remembering that SNDAN measures loudness in Decibels increasing from zero); a value of 20 ( corresonding to a 'normalized' level of -76dB) would still remove all but the quietest peaks and residual noise, which may be artefacts of the analysis rather than authentic spectral components.