Work with a single formant-envelope selected at a specific time from an existing CDP formant file (.for). The success of these processes is highly dependent on the source.
informantfile input formant data file made by FORMANTS GET. Its extension will be .for.
1f-outfile a single-moment-formants datafile. Its extension will also be .for.
time the time in seconds in the informantfile where the single-moment-formants are to be extracted.
(NB: We use .for rather than the more common .fmt because it is reserved by other non-CDP software.)
Note that the starting point for these procedures is an existing CDP formant file, as created with the CDP program, FORMANTS GET. There are various important options to understand when extracting formants. These options are explained within the GET FORMANTS section of the FORMANTS reference manual.
Here is a summary of the steps involved:1. Analyse the soundfile (PVOC ANAL Mode 1, using the default parameters 1024 (FFTsize) : 3 (FFToverlap) see the Technical Glossary)
2. Extract the formants, using an appropriate value for -p or -f (see above)
3. Determine the time at which there is a formant that you want to extract (see below)
4. Run ONEFORM GET, using this time
5. Run ONEFORM PUT, using the one-formant file and the analysis file, either in Mode 1 or Mode 2.
6. Audition the resulting analysis file to check the result
7. Convert to a soundfile with PVOC SYNTH
The spectrum of a sound has an overall contour. In speech, the contour of the spectrum determines the vowel that you hear, but all sounds will have a spectral contour of some kind. Often (as in speech) this spectral contour will change from moment to moment. This is what allows us to communicate with speech on a monotone where the pitch remains static but the spectral contour changes as we articulate the different vowels in our spoken communication. The spectral colouration (i.e., 'timbre') changes (with the different vowels) although the pitch of the sound remains the same.
The ONEFORM GET function allows the spectral colouration occuring at a specified time within a sound, to be extracted. This spectral colouration is referred to as the 'formant envelope'. What is extracted is the spectral complex making up the formant at this particular time-point thus the expression 'single-moment-formant.'
Note that there needs to be a clear formant structure in the sound at the time at which the formant is extracted. One way to find the right time at which a formant occurs is to use FORMANTS SEE to convert a (CDP) formants file into a pseudo soundfile for viewing. Then you can zoom in on the peaks to get an accurate time. In VIEWSF you can zoom in about 32 seems useful to see where the formants are. A time in the soundfile where there is NOT a clear formant is likely to result in a poor result in ONEFORM, such as a buzzy sound.
- Listen to the the sound and chose a time clearly within a vocal vowel sound, or within a clearly pitched area of an instrumental sound but note that there may be no clearly defined formants in instrumental sounds.
- In Sound Loom, go to CHOSEN FILES mode and get the analysis file. Then PROCESS > FORMANTS > get & view. Run this and save the resulting (pseudo-wav) file. On the Parameters Page for ONEFORM use the Sound View button to view and listen to the sound, or any part of it. When you think you have located a part of the sound with clear formants (e.g., a vocal vowel sound), you can mark the time on the graphic display with the mouse and output this (OUTPUT DATA) directly to the Parameters Page, where it will appear in the parameter box. (If the Sound View button is not there, it is because you have an earlier version of Sound Loom. In this case use the Sound View button on a different Parameter Page (e.g., PITCH:SPEED) to view the pseudo-wav file.)
In general, on the Sound Loom, many processes have a Sound View option, which calls up a graphic display of the sound from which it can be played, and on which times or blocks of time, depending on which program you're running and what kind of data it needs can be marked. When the data is output from the graphics, the corresponding parameter values are set automatically.
Where a process needs a file (e.g. a breakpoint file, a set of times as in ZIGZAG, or a list of time-pairs (as in SFEDIT CUTMANY) then the Sound View button is found on the file-creation page you reach from Make File. Each Sound View is designed to output the appropriate data for the process you are running.
- In Soundshaper, the most direct way of viewing the formants is to go to:
Info > Spectral > Get+See Formants. The resulting pseudo-soundfile (ending in "vu.wav") is automatically displayed in VIEWSF.
- It is probably important to note that many vowels in standard English are diphthongs, gliding between one vowel formation and another. For example in "about", the sound for "a" is reasonably constant, but the "ou" is really a glide from "a" to "oo". So, depending on where you sample inside the vowel, you will get a different result: an "a", an "oo" or something in between.
Vocal sounds have wide formant bands which are usually (not guaranteed to be always) detected by the formant extraction process. Synthetic tones have no formants, so the output of the formant extraction process will be junk. Instrumental tones may have extractable formants, but one may have to fiddle with the parameters to get a workable result.
This function allows a formant-shape (the spectral content of a spoken vowel, or of any other sound) occuring at a specified time within a sound, to be extracted and used to shape the spectrum of another sound (using ONEFORM PUT).
Thus, for example, the vowel sound of 'ey' in the recorded text "here they are", could be extracted, and then used to shape another sound, imposing the vowel-colour of 'ey' on that other sound. The 'imposing' is done with ONEFORM PUT.
1 The single-moment-formant is imposed on the analysis file i.e., added to the existing formants
2 Attempts to replace the existing formants in the analysis file with the single-moment-formants.
inanalfile input analysis file made with PVOC, on which the formants are to be imposed
1f-infile input single-moment-formant datafile made with ONEFORM GET, which we will apply to the input analysis file
outanalfile output analysis file generated
-llolim low frequency limit: the spectrum is set to zero below this limit
-hhighlim high frequency limit: the spectrum is set to zero above this limit
-ggain overall gain on the outputlolim, hilim and gain can be set independently
A fixed contour can be imposed on the spectrum of a sound, emphasising some frequency areas, and de-emphasizing (or even removing) others. This fixed spectral contour can be derived from a particular moment in another sound, using ONEFORM GET.
ONEFORM PUT applies this contour to the whole sound, acting like a static graphic-equaliser on the whole sound. As with all filtering processes, it will only be effective if the target sound has something to be filtered. e.g., if you use the imposed formant-shape on a very narrow bandwidth signal, you may hear no effect (except a change in level). Broadband signals (noisy sounds, for example) will tend to give the best results.
ALSO SEE: FORMANTS PUT
This function allows a formant-shape (the spectral shape of a spoken vowel, or of any other sound) extracted from some other sound (using ONEFORM GET) to be used to change the spectrum of another sound.
Thus, for example, the vowel sound of 'ey' in the recorded text "here they are", could be extracted, and then used to shape a target sound, imposing the vowel-colour of 'ey' on that other sound.
The difference between the two modes is important. Because Mode 1 adds the single-moment to existing formants, the formant content becomes more complex, perhaps resulting in a buzzy sound. On the other hand, Mode 2 replaces existing formants with the single-moment formant, thus re-colouring the whole sound with that of the single-moment formant.
pitchfile input (binary) pitchfile, containing (time-changing) pitch information: data file made with REPITCH GETPITCH (it will have the extension .frq)
1f-infile input single-moment-formant file made by ONEFORM GET (it will have the extension .for)
outanalfile output analysis file applying the single-moment-formant to the pitch contour in the pitch data file
This function takes information about the spectral contour (or formant-shape) of a sound at a specific time, extracted using ONEFORM GET, and combines it with pitch-trajectory information (a plot of changing pitch extracted using REPITCH GETPITCH) possibly derived from a different sound. The result will be a sound having the same pitch-trajectory, and using the 'colour' of the formant-shape.
ALSO SEE: COMBINE MAKE
This process may be used to create pitched, or pitch-changing events, using formant-shapes (e.g. vowel sounds from speech) extracted from a particular source. It is complementary to the processes which grab and extend FOFs, but works with (and outputs) analysis files, and operates in a different way.
The point of working with only a single-moment-formant is that a specific sound, a specific spectral structure, can be imposed on or combined with another sound. As formants are resonance structures with specific timbral 'colour', the ONEFORM set can be described as a tonal colouration or synthesis tool.
Terms in the Technical Glossary that you may want to revise:
• SPECTRAL DOMAIN
• SPECTRAL ENVELOPE
• ANALYSIS WINDOW