HITHER GATE MUSIC
HITHER GATE MUSIC
Goal: lightly churning burbles
In general, varied and rhythmic sounds work well. If the sound is too steady state, the result may not change enough during the course of playback to remain interesting. Also, if a sound is already very rough to start with, the distortion processing may go over the top.
Make a copy of the input soundfile, giving it a single letter name.
It is presumed that the input is mono and begins and ends smoothly, i.e., without a click or being suddenly cut off. Of the various inputs tried, a frog and a tom (drum) worked best. The vibrations of the frog's voice were nicely extended, and the tom's resonance led to some very finely etched and changing burbles.
Dialogue box:
Default parameters
New name is 'b.mp3'Command:
rem function mode infile outfile
copysfx tomcdt.wav b.mp3
Distort with wavecycle repetition
This form of distortion, developed by Trevor Wishart, uses the changing lengths of soundfile which lie between zero crossings. There are two parameters: repetitions the number of wavecycles in a group, and groups the number of times to repeat each group.
Dialogue box:
Wavecycle distortion
Command:
rem function mode infile outfile repetitions groups
distort repeat b bdr 5 -c2PLAY bdr.mp3 (distorted soundfile)
New name: 'a distort-repeat'
Pass the distorted sound through a ring modulator.
This process adds and subtracts a specified number of frequencies to the source, thus tending to split it into high and low components. A somewhat 'hollow' sound can often result.
The number of frequencies specified here is 1000.
Dialogue box:
Ring modulate
Command:
rem function mode infile outfile freq_in_Hz
modify radical 5 bdr bdrrm 1000PLAY bdrrm.mp3 (ring-modulated soundfile)
New name: 'a distort-repeat ring-modulate'
Loop segments (not the whole soundfile)
Now we divide up the soundfile into segments and either overlap or separate them. In this case we overlap them because the length of the step is shorter than the length of the segment. The processing begins at time zero in the infile.
Segment_length and step are given in milliseconds. 1000ms = 1 sec. In this case, therefore, each loop is ½ sec. long and the next segment begins after 1/10
th of a second, an overlap of 4/5ths . Note that this is not an overlap in that the two sound together. Rather, it means that the start point of the next segment occurs 0.1 sec after the previous one. Thus 4/5ths of the sound material is the same. The segments are placed end-to-end, thus resulting in a longer soundfile.Dialogue box:
Loop defined segment lengths
Command:
rem function mode infile outfile start-time segment_length step
extend loop 1 bdrrm bdrrmloop 0.0 500 100PLAY bdrrmloop.mp3 (looped soundfile)
New name: 'a distort-repeat ring-modulate loop'
Segment the looped soundfile and mix up the order of the segments.
To make it more unpredictable, we use segments of different lengths. We do this by specifying both a minimum and a maximum size. The program selects a segment length at random from somewhere within this range. The output duration parameter means that we can specify just how long we want the output soundfile to be. You can also specify the length of splice between the segments, a longer splice length giving a somewhat smoother result. The default value is 15ms, and here we are making it a little longer.
Without the Scramble process, the looped segments, being all of the same length, create a regular, motoric effect. Some of this is retained because maxseglen is a little more than twice the size of the loops. But the changing lengths and scrambled segment order reduces the motoric effect, making it more varied and unpredictable.
Dialogue box:
Scramble the segments
Command:
rem function mode infile outfile minseglen maxseglen output_duration splice
extend scramble 1 bdrrmloop bdrrmloopscr 0.06 1.1 32 -w25PLAY bdrrmloopscr.mp3 (scrambled soundfile)
New name: 'a distort-repeat ring-modulate loop scramble'
An analysis is needed to prepare for the function to follow.
We convert the soundfile data to analysisfile data, because the Trace operation deals with analysis channels.
Dialogue box:
Default parameters
Command:
rem function mode infile outfile
pvoc anal 1 bdrrmloopscr bdrrmloopscr.ana
Retain only a specified number of the loudest analysis channels.
The analysis channels contain the (changing) frequency + amplitude data of the sound, organised in a vertical series of frequency 'bins' each bin covers a set frequency range. A given bin or channel may or may not have any partial data, and even if it does, the loudness will differ. Ecah bin only lasts for a very short time, so as the sound progresses, the content of each bin changes.
The Trace process retains the loudest bins and discards the rest. If you specify many bins, e.g., 300, the output will probably sound almost the same as the input. But if you specify only a few, e.g., 10 or less, only a 'trace' of the original sound remains. This is where the sound changes to light burbles. The churning aspect came from the loop operation.
Dialogue box:
Enter number of channels to retain
Command:
rem function mode infile outfile loudest_channels_to_retain
hilite trace 1 bdrrmloopscr.ana bdrrmloopscrtr.ana 10It is possible to play this analysis file within Soundshaper. Simply hit the Spacebar or click the Transport PLAY button, either of which will call pvplay.exe as necessary. [text updated]
Finally, we reconstitute the soundfile.
Synthesis converts analysis data back to soundfile data, ready for audition as a .wav file.
Dialogue box:
Re-synthesise
Command:
rem function inanalysisfile outsoundfile
pvoc synth bdrrmloopscrtr.ana bdrrmloopscrtr.wavPLAY bdrrmloopscrtr.mp3 (trace of soundfile)
New name: 'a distort-repeat ring-modulate loop scramble trace'
rem day2.bat - 'CHURBLES' batch file for second set of functions rem Description: usually results in lightly churning burbles rem Last updated: 24 March 2003 rem Sources (with results after processing): rem aklcdp.wav (1.38 sec) - good rhythms & sonic changes rem bashdt.wav (1.5 sec) - not good, too similar all through rem frogcdt.wav (1.8 sec) - excellent because spreads attack rem hoggdt.wav (3.7 sec) - churning then lighter burbles rem tomcdt.wav (1.3 sec) - remarkably good: goes very thin (it's the ring modulation that makes the biggest change) rem touccdt.wav (3.0 sec) - distortion very prominent rem whdtm.wav (2.4 sec) - light randomised churning echo on rem Step 1. Copy to simple name copysfx tomcdt.wav b.wav rem Step 2. Distort Repeat x cyles in y groups distort repeat b bdr 5 -c2 rem Step 3. Ring Modulate modify radical 5 bdr bdrrm 1000 rem Step 4. Loop with longish overlapping segments extend loop 1 bdrrm bdrrmloop 0.0 500 100 rem Step 5. Scramble the file of loops extend scramble 1 bdrrmloop bdrrmloopscr 0.06 1.1 32 -w25 rem Step 6. Analyse pvoc anal 1 bdrrmloopscr bdrrmloopscr.ana rem Step 7. Trace to reduce to n loudest partials hilite trace 1 bdrrmloopscr.ana bdrrmloopscrtr.ana 10 rem Step 8. Synthesise final result pvoc synth bdrrmloopscrtr.ana bdrrmloopscrtr echo off
STEP |
PROCESS |
OUTPUT |
---|---|---|
Step 1. | Copy | b.mp3 |
Step 2. | Distort Repeat | bdr.mp3 |
Step 3. | Ring Modulate | bdrrm.mp3 |
Step 4. | Loop | bdrrmloop.mp3 |
Step 5. | Scramble | bdrrmloopscr.mp3 |
Step 6. | Analyse | bdrrmloopscr.ana |
Step 7. | Trace | bdrrmloopscrtr.ana |
Step 8. | Synthesise | bdrrmloopscrtr.mp3 |
(by Robert Fraser, March 2016)
The Soundshaper screenshots used in this tutorial are out of date in two respects:
To run the CHURBLES chain of CDP processes in Soundshaper:
[After each step, you can play the result in the transport panel.]