<A NAME=top> <HR><TITLE>Mammut Help</TITLE> <CENTER><H1><I>Mammut Help</I></H1></CENTER><HR><HR> <P> If you have any comments on Mammut, send a mail to<P> <DL><DD><A HREF="http://www.notam.uio.no/~oyvindha/">oyvindha</A>@notam.uio.no</TT> (Øyvind Hammer). </DL> <P> <A NAME=2><HR><H2>1. Introduction</H2> Mammut will FFT your sound in one single gigantic analysis (no windows). These spectral data, where the development in time is incorporated in mysterious ways, may then be transformed by different algorithms prior to resynthesis. An interesting aspect of Mammut is its completely non-intuitive sound transformation approach. <P> Mammut is started with the command "mammut". An empty window will appear with a menu bar at the top. <P> Select "Load & Analyze" in the "File" menu, and select a sound file. Mammut accepts files in AIFF or AIFC format, any sampling rate, mono or stereo. <P> The sound will then be zero-padded at the end, to achieve an FFT size which is a power of 2. The analysis will be stored in memory. This means that there is a limit on the size of the sound file, because the analysis data size will be huge. If the program crashes for sounds shorter than 30 seconds at 44.1 kHz sampling frequency, your computer has a too small swap space anyway, and your swap space should be increased. A spectrogram is then drawn. <P> You may now use the options in the "Transform" menu to change the spectral data, as described below. <P> To hear the result, you must resynthesize the sound with the "Synth & Save" button in the "File" menu, and then play the sound by pressing 'p'. <P> In the "Settings->Analysis" dialogue, you may select a number of duration doublings in order to zero-pad your sound to progressively higher powers of 2. This may be useful to increase the duration of silence at the end of a sound. Some transforms may insert interesting sound in this region. You will have to run a new analysis after this value has been changed. CAREFUL! A duration doubling of 3 means that your sound will get 8 times longer. Processing time will increase even more. <P> <HR><H2>2. Transforms</H2> <H3>Stretch</H3> All frequencies will be raised to the power of the exponent you specify, and the frequency axis is then re-normalized. This is a non-linear stretching of the frequency axis. Values close to 1 (0.9-1.1) are recommended. This transform will produce dispersion effects, with frequency sweeps. <H3>Wobble</H3> This transform will alternately stretch and contract the frequency axis using a sinusoidal transfer function for the frequencies.<BR> The <I>Frequency</I> parameter controls the number of periods of the transfer function from 0 Hz to the Nyquist frequency, while <I>Amplitude</I> controls its amplitude (1 is the entire frequency axis). <H3>Multiply phase</H3> Multiply all phases with the value you specify. A value of -1 will reverse the sound. <H3>Derivate amp</H3> Replaces the amplitude spectrum with its derivative (slope). You may specify a gain factor. <H3>Filter</H3> Optimal bandstop filter. The ultimate in cut-off performance! <H3>Invert blocks</H3> Splits the spectrum into regions with specified size, and turns each of these backwards. If you select a region size of 100%, the entire spectrum will be mirrored around its center. Also, the result is complex conjugated to avoid reversal of the sound. <H3>Threshold</H3> Removes all partials below a given amplitude threshold. <H3>Spectrum shift</H3> Optimal spectrum shift, with no window artefacts. The frequency you specify (positive or negative) will be added to all frequency values, shifting the spectrum up or down. <H3>Block swap</H3> Selects randomly positioned regions of the spectrum, and interchanges their halves. The <I>Block size</I> parameter sets the size of the blocks, given in percents of the whole frequency axis. This procedure is repeated a number of times, as specified, thus permutating the partials. <H3>Mirror</H3> Reflects the whole spectrum around the frequency you specify. <H3>Amplitude->phase</H3> The phases of the partials are set to their respective amplitudes, after a specified gain multiplication. Rather useless. <H3>Gain</H3> A highly useful function, because many of the transforms will change the gain and the spectrum may have to be re-scaled manually. <HR><H2>3. Load & Multiply</H2> This function, in the File menu, is used for different kinds of spectral multiplication (cross-synthesis). First, "Load & Analyze" the <I>longest</I> sound. Then, "Load & Multiply" with the shortest sound.<P> You can choose between four different multiplication algorithms:<P> <UL> <LI>Convolve. Will complex-multiply with the spectrum of the reversed sound. Use this for standard, high-quality convolution with eg. a room response. <LI>Correlate. Will simply complex-multiply two spectra, giving the correlation. <LI>Fun. Simple complex multiplication, with intended programming "errors" (sign reversals and coefficient swaps). <LI>A^B. Raise spectrum A to the power of spectrum B. Useless (?) </UL> <HR><H2>4. Stereo</H2> These transforms are only available when a stereo soundfile has been analyzed.<P> <H3>Swap phases</H3> The phases, but not the amplitudes, are interchanged between the two channels. <H3>Crossover</H3> Swaps blocks between the two channels. The probability, for each frequency bin, that the program will switch between swapping and non-swapping mode as it runs through all the bins, must be specified. Small probability means that large blocks are swapped (or kept). <HR><H2>5. Tricks</H2> You can zoom the display in and out using the '+' and '-' keys. Move left and right with the '<' and '>' keys.<P> Due to the zero padding, Mammut may produce soundfiles which have a long tail of silence or humming. You should cut this away in a sound editor.<P> Mammut doesn't like sounds with DC or other subsonic components. Many transforms will move these frequencies up into the audible range, producing annoying tones. You may therefore want to remove all frequencies from say 0 to 60 Hz using the Filter function <I>before</I> other transforms are applied. <HR><H2>6. A final word</H2> The general idea (and the name "mammoth FFT") was conceived by the Swedish composer Paul Pignon many years ago. <P> <I>PLEASE NOTE</I>: You must have a certain attitude when using this program. Use it experimentally, by ear. Do not try to understand what happens - even the programmer can't explain it in many cases. <A NAME=3><HR><H2>FTP</H2> The latest version of Mammut is available by anonymous FTP from <A HREF="ftp://notam.uio.no/pub/sgi/mammut.tar.gz/"> ftp://notam.uio.no/pub/sgi/mammut.tar.gz/</A> <P><A HREF=#top><I>top of document</I></A>