Analysis Files:
.ana |
Analysis files hold audio data in a special way.
- binary files containing analysis data as
frequency amplitude pairs (channels)
grouped into windows
- The Spectral Domain processes require ana format inputs. This is all you really need
to know about them.
- Soundfiles are converted to analysis files with
PVOC ANAL Mode 1.
- There are some
options when creating analysis files, which
relate to a trade-off in accuracy regarding frequency and time
resolution. Understanding them could help you to fine-tune the
results in certain situations.
|
Band files for
HILITE BAND: .txt |
[lof hif bitf various]
113 160 1000 0.25
160 226 0000
452 640 1000 0.01 1.0
905 1280 1100 1.0 0.01
1280 1400 1100 0.25 1.0
1810 2560 1010 0.5 +5000
3000 4000 1010 0.6 2.0
4000 5000 1010 0.7 +8000
5120 7240 1010 0.8 3.0
7240 10240 1011 0.7 +3
|
Here we have a flexible, user-definable spectrum divider, in
which the frequency bands can be precisely set (lof hif)
and processed separately: 4 bitflags can be set to handle
amplitude, crescendo or decrescendo, and transpositions that
can be harmonic (logarithmic: multipliers, i.e., ratios) or
inharmonic (additions).
- The band file is an editable text file.
- Bit 1 (e.g., 1000) sets an overall amplitude (for that
band). Set the level in the field after the 4 bitflags.
- Bit 2 defines an amplitude between two amplitude
fields after the 4 bitflags: amp1 and amp2. This
will be a crescendo or a decrescendo depending on the respective
levels. Also set Bit 1 or the whole band will be
zeroed. (This makes it easy to turn the effect on or off
to assess the difference.)
- Bit 3 sets transpositions. These are always
multipliers, i.e., ratios that preserve the harmonic
relationship between the partials, but you can also precede
a value in Hz with a '+' sign: this frequency is
added into the spectrum of that band, creating
inharmonic results. Again, remember to set Bit 1
or that band will be zeroed and the resultant sound may
be completely silent: i.e., 0010 seems to produce
this (unwanted!) result. The
Chart of Transposition Ratios may be helpful.
- Bit 4 means that previous transpositions
are added to the (whole) original spectrum.
Bit 3 also needs to be set for this to work. If you
use a '+' sign, it may make the result more
inharmonic, but I'm not sure that it makes any
difference to put in the '+' sign or should
you put in a value in Hz here? (AE)
- To be effective, the bands you define need to relate
to the strongest parts of the sound's spectrum. You can
get information on this from the
peak energy file. The sound used for the
peak energy file example was balsam.wav
(the spoken text used in the aebigone GrainMill
example, and the bitflag file was designed using
this information.
In the example bitflag file, the 10 lines do the following:
- 113 to 160: Set an overall amplitude for that band. A 0 bitflag
is not allowed in Line 1 (i.e., 0000).
- 160 to 226: Zero this band.
- 452 to 640: Crescendo from a very low to full amplitude.
- 905 to 1280: Decrescendo from full amplitude to very low.
- 1280 to 1400: Crescendo from ¼ to full amplitude.
- 1810 to 2560: Set amplitude to half and add 5000Hz
to this band.
- 3000 to 4000: Set a slightly higher amplitude than before
and transpose by a ratio of 2 (i.e., an octave).
- 4000 to 5000: Set amplitude a little higher still and
add 8000Hz to this band.
- 5120 to 7240: Set the amplitude to 4/5ths
full amplitude and transpose by about a minor 13
th, i.e., close to 15 semitones.
- 7240 to 10240: Make an (overall?) transposition and
add the result in don't really know how
this relates to the previous transpositions (AE).
Note that the bands are not allowed to overlap. This means that
you cannot do different things to the same band in the same
bitflag file. However, you can achieve this by editing
the bitflag file and re-running the program.
Although it must be said that this program cries out for a real-time
implementation, with some experience and the use of batch files, the
combination of frequency bands and processing options makes it
a very powerful tool.
|
Banks of frequencies
files from FILTER BANKFRQS: .txt |
FILTER BANKFRQS creates text files containing lists of
frequencies. These files can be edited to add amplitude data (numeric:
0.00100 to 10000, or in dB, such as '-3dB'). They then can be used as
inputs to FILTER ITERATED and
FILTER USERBANK (in Mode 1 for Hz input).
FILTER BANKFRQS has 6 Modes to produce 6 different types of file.
The following lists outputs for each of these modes:
[M1-HARMONIC] [M2-ALTERNATE] [M3-SUBHARMONIC]
100.000000 100.00000 1000.000000
200.000000 300.00000 500.000000
300.000000 500.00000 333.333333
400.000000 700.00000 250.000000
500.000000 900.00000 200.000000
600.000000 166.666667
700.000000 142.857143
800.000000 125.000000
900.000000 111.111111
[M4-OFFSET] [M5-EQ INTERVALS] [M6-INTERVAL SIZE]
100.000000 100.00000 100.000000
244.000000 121.152766 118.920712
344.000000 146.779927 141.421356
444.000000 177.827941 168.179283
544.000000 215.443469 200.000000
644.000000 261.015722 237.841423
744.000000 316.227766 282.842712
844.000000 383.118685 336.358566
944.000000 464.158883 400.000000
562.341325 475.682846
681.292069 565.685425
825.404185 672.717132
800.000000
951.365692
- These are editable text files.
- The frequency range provided for these examples was 100 to 1000.
- Mode 1 provides a list of integer multiples of the
lowest frequency, i.e., 'harmonics'.
- Mode 2 selects the alternate members of this list
of harmonics.
- Mode 3 provides a list of subharmonics downwards from
the highest frequency.
- Mode 4 allows you to offset the frequencies above
the lowest frequency. The offset used here was 44Hz.
- Mode 5 divides the frequency range into equal intervals,
producing an unusual result when applied.
- Mode 6 divides the frequency range into equal intervals
of a size specified in semitones. The interval used here
was 3 (a minor third), but note that fractional semitones
may be used. Thus 0.5 would provide a filter bank of
quarter tones: ½ a semitone, or 50 cents, so there
are many possibilities to explore.
|
Batch Files / HOUSEKEEP
BATCHEXPAND: .bat |
Batch Files are actually a type of Preset that can
run a whole series of processes. This can be a powerful way
to build up and run libraries of complex processing sequences.
- Batch files are normal text files, with a special
suffix that identifies it. This suffix is .bat on PCs.
In Sound Loom this mechanism is called Instruments.
- They contain 'commands', which are calls to executable
program modules. The program name and its parameters are
given on a separate line of the batch file. These are called
'command lines'. They appear in the example below as the
lines that are not comments ('rem').
- Note that you have to let a command line wrap
carriage returns in the text file cause the command to
terminate at that point. That is why copies of Batch Files
that need to have carriage returns in order to print
properly have to be separate.
- 'echo on' and 'echo off' are commands belonging to
MSDOS itself. They switch on and off displaying the
Batch File on-screen as it runs so that you can watch
its progress.
- A Batch File is run by a Command Line Interpreter, such
as MSDOS.
- 'rem' statements are comments that can be put into the
text of the Batch File to help explain what it is and what
it is doing vital to document your work.
- The Batch File below is an edited version of the
History File produced
automatically by Soundshaper as the programs were run.
- Note that the full path has been removed, leaving only
the names of the soundfiles. This is because you go to
the directory where the soundfiles (and Batch Files) reside
in order to use the Batch Files, i.e., the 'current
directory'. MSDOS always looks in the current directory
first, so there is no need for the full path. More than
that, it can only find executable programs somewhere else
(as specified in the 'path'). All the files needed by these
programs (Batch, Breakpoint, other Text files etc.) have
to be in the current directory.
An Example Batch File
rem rmrepeat.bat - batch file from Soundshaper rmrepeat.hst
rem This batch file chains 3 functions to produce a churning
rem and deeply sonorous result.
rem Date/Time: 16/08/04 21:54:34
echo on
rem MODIFY RADICAL: Mode 5 is Ring Modulation, Mod Freq is 1000
rem (1000 is higher than the max shown in Soundshaper, but
rem it is accepted by the program)
modify radical 5 "asrcmix.wav" "asmrm.wav" 1000
rem (the speech part of the source was most affected)
rem DISTORT REPEAT: Parameters: Multiplier and Cyclecount
distort repeat "asmrm.wav" "asmrmrpt.wav" 2 2
rem (this doubles the lengths and roughs it up a lot!)
rem MODIFY SPEED: lowered by 11 semitones
modify speed 2 "asmrmrpt.wav" "asmrmrptd11.wav" -11
rem (nearly doubles the length again, deepening and smoothing)
echo off
HOUSEKEEP BATCHEXPAND is used to alter existing batchfiles. You can
supply new sounds and parameter values to batchfiles which use the
same command repeatedly, or at least the same parameter in the same
column, in order quickly to ring the changes on one or several sounds.
It will not handle the complex batchfiles illustrated above.
- In Mode 1:
- there is one soundfile in the existing batchfile
- one, two or more soundfiles may be input to BATCHEXPAND
- the datafile can have 1, 2 or more parameter values
- each parameter value is applied to each soundfile in turn
- thus the number of output soundfiles is soundfiles_in x
data_values
- Existing batchfile and other inputs:
Existing Batchfile:
modify speed 2 infile outfile -3 [one input soundfile]
Soundfile Inputs to HOUSEKEEP BATCHEXPAND:
filea fileb [two or more infiles are OK]
Datafile: [two different values for the same parameter]
7
10
The resulting output batchfile will look like this:
modify speed 2 filea outfile1 7 [each parameter value is applied to filea]
modify speed 2 filea outfile2 10
modify speed 2 fileb outfile3 7 [each parameter value is applied to fileb]
modify speed 2 fileb outfile4 10
- In Mode 2:
- there may be more than one soundfile used in the existing
batchfile
- you supply a matching number of soundfiles to BATCHEXPAND
- the datafile can have the same or different parameter
values, but the number of values must match the number of soundfiles
- each successive parameter value is applied to each successive
soundfile, in the same order
- Existing batchfile and other inputs:
Existing Batchfile:
modify speed 2 sound1 outfile1 2 [only a single line]
Input soundfiles to HOUSEKEEP BATCHEXPAND:
infilea infileb infilec [3 infiles, one could be the same
as that in the batchfile]
Datafile: [3 different parameter values are supplied]
7
10
-5
The resulting output batchfile will look like this:
modify speed 2 infilea outfile1 7 [each parameter value
is applied once to each soundfile in the same order]
modify speed 2 infileb outfile2 10
modify speed 2 infilec outfile3 -5
You might want to refer back to the
Reference Manual text for this one.
|
The Breakpoint Text
File: .brk or .txt |
[time value]
0.0 0
4.5 12
AND
[time value]
0.0 0
1.99 0
2.0 12
4.5 0
Sketches of .brk files
|
Also known as 'automation', 'breakpoint' is a generic
term for all the files that apply different values at different
times to program parameters during processing. Thus
the parameter is said to change over time, to be 'time-varying',
creating movement and direction where otherwise there would only
be a steady state. Change over time is a vital feature of music,
making it supple and alive, so this is a very important aspect of
musical software, one supported extensively in the CDP System.
- As text files, they can be accessed and edited
with any text editor but not a word processor that
will put hidden style characters into the file. Graphic
editors are also available.
- Sound Loom only accepts .txt as the extension
for a breakpoint file. (Soundshaper and the Command Line
also accept .brk.)
- These files contain time value pairs (sometimes
there are two values), indicating which value to use at
which time.
- Most CDP programs now allow the insertion of comments
into the file. These must begin with a semicolon:
';' as in
;transpos6.brk , the name
of the file, or ;holds the value until this time ,
etc.
- Breakpoint files change the direction of flow when
a different value is used at a different time.
- In the upper example, the value controls transposition
in semitones, so at time 0 there is 0 (no) transposition
and at time 4.5, the sound is 12 semitones higher.
Inbetween these times, the software
interpolates
intermediate values, creating a glissando. All CDP
breakpoint files interpolate when there are different
values at different times.
- The lower example shows how you control instant change:
the same value is used at the beginning and end of
different adjacent times, and then an instant later a
new time and a new value is given. The time difference
here is 0.01 second, but it could be shorter, such as
0.001 second, as long as it is a different time. It is
not advisable to make it too short, as speaker cone response
may not cooperate.
- Special Sound Loom note: If you use a breakpoint
file in Sound Loom that was not made within Sound Loom,
it may not be recognised as a valid file. To fix this, you can
select the file and click on the UPDATE button and Sound Loom
will add it to its internal database of files: WORKSPACE -
SELECTED FILES ONLY - PROPERTIES, SORT, UPDATE - UPDATA DATA.
|
Clicks file for
SYNTH CLICKS: .txt |
[Ex1 - 2 fields]
1 TIME 6.0
2 GP 1 2
[Ex2 - 3 fields]
1 0.5=72 3:8 3
2 1=90 4:4 2
[Ex3 - 4 fields]
1 0.5=60 6:8 2 1..1..
2 0.5=120 6:8 2 1.1.1.
3 0.5=120to60 6:8 2 100100
|
Here we have another inventive file format from Trevor,
to handle the creation of click tracks with a number of
different features.
- The Clickfile is a text text file.
- Lines in the file are numbered, and the appear one
after another in the output soundfile, not simultaneously.
- The 2 field option is for specifying (jumps to)
time points in seconds or General Pauses (GP).
Whatever follows in the next line of the clickfile will begin
at that point. In our first example, what begins is a 2 sec.
General Pause with an accent at its start (0 = no
accent, 1 = accent). Note that line numbers are also used.
- In the 3 field option the data is: Line_number,
note_value (i.e., its duration in seconds)=tempo (beats per minute),
meter (number of beats:note_value no spaces around the colon
':'), number_of_bars.
- In the 4 field option the data is: Line_number,
note_value=tempo, meter, number_of_bars, accent_pattern.
- Tempo can be set to change over time: first_tempo to
second_tempo, e.g., '60to120' will gradually increase the tempo from
note_value=60 to note_value=120 (beats per minute), gradually
during the course of the number_of_bars.
- In the accent_pattern format, an initial '1' is a strong beat,
a subsequent '1' is a secondary (less accented) beat, a '.' is a
weak beat, and a '0' is no beat.
|
Createfile
for ENVEL CREATE: .txt |
[INPUT: createfile:]
[time [e]amplitude]
0.0 0.0
0.3 e0.5
0.6 0.5
1.0 e1.0
1.3 1.0
1.7 e0.0
[OUTPUT: envelope file]
[time level]
0.000000 0.000000
0.018755 0.004487
0.037600 0.014579
0.056255 0.025545
0.076000 0.047366
0.093755 0.069217
0.112600 0.094368
0.131255 0.122640
0.160000 0.153893
0.168755 0.186009
0.187600 0.224888
0.206255 0.264444
0.226000 0.306551
0.243755 0.351293
0.262600 0.398459
0.281255 0.454545
0.300000 0.600000
0.600000 0.600000
etc.
|
These files use a special format to define an envelope
that is then to be constructed by ENVEL CREATE.
- Basically, the createfile is a text file.
- Createfile is the input and the ENVEL CREATE then
generates the envelope file as the output, which
can be binary (Mode 1) or breakpoint
(Mode 2).
- It also (optionally) uses the letter 'e' to signal an
exponential curve,
rather than the linear one used by default. Note how the
example file places the 'e' before the second value. Thus
the file begins at time 0.0, value 0 (no
transposition). Then at time 0.3, the value
is given as 'e0.5': i.e., it will move from 0 to 0.5 along
an exponential curve.
- These files follow the normal rules for
breakpoint files about
interpolation between different values at different times.
- Thus the createfile in our example specifies that the
amplitude rise on an exponential curve from 0 to ½ amplitude
over the first 0.3 seconds and then remain at this amplitude
until 0.6 seconds.
- Only this portion of the envelope file created is
shown. Note how the amplitude values rise in increasing amounts
(the exponential curve): 0.0 + 0.004 + 0.010 +
0.015 + 0.018 + 0.022 etc.
- The envelope file created can be used as an input to
several different processes, particularly
ENVELOPE IMPOSE.
|
Datafile for
FILTER ITERATED: .txt |
FILTER ITERATED repeats the input sound, re-filtering it
on each repeat according to the information in the frequency bank
datafile. Thus the sound fades away in a wash of its own
resonance. Mode 1 handles frequency in Hz and there are 6
modes, matching the modes of FILTER
BANKFRQS which produces lists of frequencies. You need to
edit these files to add amplitude data, either numeric (0.00100 to
10000) or in dB, such as '-3dB'. The following lists the 6 output
examples from FILTER BANKFRQS, with dB information added.
[M1-HARMONIC] [M2-ALTERNATE] [M3-SUBHARMONIC]
100.000000 3dB 100.00000 3dB 1000.000000 -3dB
200.000000 3dB 300.00000 3dB 500.000000 -3dB
300.000000 3dB 500.00000 3dB 333.333333 -3dB
400.000000 6dB 700.00000 3dB 250.000000 -3dB
500.000000 6dB 900.00000 3dB 200.000000 -6dB
600.000000 6dB 166.666667 -6dB
700.000000 9dB 142.857143 -9dB
800.000000 9dB 125.000000 -9dB
900.000000 9dB 111.111111 -12dB
[M4-OFFSET] [M5-EQ INTERVALS] [M6-INTERVAL SIZE]
100.000000 3dB 100.000000 3dB 100.000000 3dB
244.000000 3dB 121.152766 3dB 118.920712 3dB
344.000000 3dB 146.779927 3dB 141.421356 3dB
444.000000 3dB 177.827941 3dB 168.179283 3dB
544.000000 3dB 215.443469 3dB 200.000000 3dB
644.000000 3dB 261.015722 3dB 237.841423 3dB
744.000000 3dB 316.227766 3dB 282.842712 3dB
844.000000 3dB 383.118685 3dB 336.358566 3dB
944.000000 3dB 464.158883 3dB 400.000000 3dB
562.341325 3dB 475.682846 3dB
681.292069 3dB 565.685425 3dB
825.404185 3dB 672.717132 3dB
800.000000 3dB
951.365692 3dB
- These are text files.
- The FILTER
BANKFRQS section gives more information on
how these lists of frequencies were created.
- This datafile enables you to approach
the task of iterative filtering with enormous
flexibility and options for fine-tuning the
results.
- The dB values given here only mildly affect
the results. You can use higher (or lower) values
to bring out more resonance or emphasise certain
bands.
- You can also write your own datafile
to meet specific objectives.
|
Datafile for
FILTER USERBANK: .txt |
131.8 18dB
158.0 18dB
197.0 18dB
245.7 18dB
263.6 16dB
316.0 16dB
394.0 16dB
491.4 16dB
527.2 14dB
632.0 14dB
788.0 14dB
982.8 14dB
1054.4 12dB
1264.0 12dB
1576.0 12dB
1965.5 12dB
2108.8 10dB
2528.0 10dB
3152.0 10dB
3931.2 10dB
|
The datafile input for FILTER USERBANK is the
same as that for FILTER ITERATED. Containing frequency
amplitude pairs of values on each line, it can be written
from scratch by hand or produced by
FILTER BANKFRQS. FILTER
USERBANK is especially good for harmonising sounds. The
example file was written 'by hand' and defines a C-minor
chord with major 7th (C-Eb-G-B-natural) through
several octaves (slightly detuned).
- The datafiletext file.
- Comments may be used begin the line with a semicolon: ';'
- Filter frequency values can also be entered as
MIDI Pitch Values (0 to 127 range) Mode 2.
- The amplitude of each partial is expressed in dB, and
the values are rather high. They may need to be lowered
for some input sounds.
- Bear in mind the 6 modes of FILTER BANKFRQS, which
provide a variety of frequency lists.
- Q in FILTER USERBANK is critical: higher
values produce more resonance. Values between about 50
and 75 produce a reasonable balance between source
and resonance. It all depends how clearly you would
like the chord to be heard.
- Also see PITCH TUNE for
Spectral Domain chordal tuning.
|
Datafile for FILTER
VARIBANK or VARIBANK2: .txt |
FILTER VARIBANK is like FILTER USERBANK except that
it allows for time-varying movement among the frequencies. These
need to be handled in separate 'bands' so that the frequency
movement is consistent. The key, then, is a datafile
that specifies time and then a series of frequencies and
amplitudes to define a series of bands. The bands thus form
columns in the datafile. Here is a typical example
it is the one on the CDP Website, moving from a C-Major
7th to an F# unison to a non-triadic
pitch complex (C-D-F-B-C).
[Time MPV Amp MPV Amp MPV Amp MPV Amp MPV Amp]
0.00 60 -3dB 64 -3dB 67 -3dB 70 -3dB 72 -3dB
3.00 66 -1.5dB 66 -1.5dB 66 -1.5dB 66 -1.5dB 66 -1.5dB
6.25 60 0dB 62 0dB 65 0dB 71 0dB 72 0dB
[The next lines are added to the above for VARIBANK2]
#
Time Partials with Amplitude weighting]
0 1 0.3 2.237 0.4 7.615 0.8
1 1 0.3 3.34 0 14.22 0.8 [partial 3.34 disappears]
2 1 0.3 16.3 0 8.322 0.8 [partial 16.3 disappears]
3 1 0.3 22.6 0.4 7.615 0.8
- This datafile is also a text file.
- It contains several lines, with a time and the
centre frequencies for several bands of frequencies +
amplitudes in each line.
- Comments may be used begin the line with a semicolon: ';'
- The frequency bands can be expressed in Hz (Mode 1) or
as MIDI Pitch Values (Mode 2). The latter use the MIDI
0 to 127 range and can be fractional, i.e., microtonal.
- Amplitude settings are influenced by the level of signal
of the input soundfile. They can be entered numerically
(range: 0.00100 to 10000) or in dB (note that the 'dB' is
written as well).
- Note that, like all breakpoint
files, the program interpolates between values unless
values hold across different time points and then change at
virtually, not note completely, simultaneous time points. Thus
you can have glissandi or discretely separate pitches.
- Also note that Q is also time-varying in this
program, making FILTER VARIBANK one of the most powerful
in CDP's range of filter programs.
- The VARIBANK2 alternative program enables you to add
time partials - amplitude data. The '#' sign signals to the
program that this extra information will follow. The partials
can be expressed as ANY number, and they can be the same or different
on consecutive lines (the first partial stays the same in the
example above, and the others change. Amplitude values above 0 represent
their amplitude weighting. Enter 0 as the amplitude value if you
want to skip a partial at a particular time. After the time,
the remainder of these lines comprise value pairs for partial
number (which may be fractional) and amplitude weight
(0 to 1 scale). Each partial-data line must have the same
number of entries.
|
Envelope file
from ENVEL EXTRACT/CREATE: .evl or .brk |
[time amplitude]
1.150193 0.105591
1.156008 0.202057
1.166553 0.265747
1.172558 0.275177
1.178413 0.254211
1.184218 0.233215
1.160023 0.545950
1.195828 0.600115
1.201633 0.511597
1.207438 0.443115
1.213243 0.349551
1.215048 0.427551
1.224853 0.592651
1.230658 0.512421
1.236463 0.600028
1.242268 0.523987
1.254573 0.561859
1.253878 0.578491
1.259683 0.555576
1.265488 0.588898
1.271293 0.586761
1.275598 0.516001
1.282553 0.451141
1.288558 0.336548
1.294513 0.242188
1.300318 0.287323
|
An envelope file traces the contour formed by the
amplitude level of samples in a digital sound file. It is not
generally considered necessary to have a 'reading' for every
sample. Rather, the (absoslute) maximum of n samples is
taken. Our documentation refers to these groups of samples
as 'windows', which are not, of course, the same as analysis
windows. The default windowsize is 5 samples. Thus 5 samples
are read as a group, and the absolute maximum value is taken:
i.e., groups of 5 samples are taken.
- It can be binary (.env) or text (.brk)
- The example on the left shows times and amplitude values
for a windowsize of 5 (samples), i.e., groups of 5
samples are used lasting for less than 0.005 or
0.006 sec. If less resolution is needed, this windowsize
can be larger let your ear be the guide.
- These envelopes can be created by hand as a text file,
created by hand using the special
createfile format (also allows exponential
curves), or extracted from existing soundfiles by using
ENVEL EXTRACT.
- In both ENVEL CREATE and ENVEL EXTRACT, Mode 1
creates the binary (.env) file and Mode 2
creates the breakpoint (.brk) file.
- Note the low amplitude values: they are scaled between
0 and 1. If you multiply them by 32,000, you would get the
equivalent (which could be + or -) on the -32766 to
+32767 scale. For example, 0.523 at 1.24 seconds becomes
17,137. From CDP Release 5, only the 0.0 to 1.0 scale is
used, and any necessary conversions are done internally.
- These envelope files, whether binary or breakpoint, can be
imposed on other files, further massaged with functions such as
DOVETAIL and RESHAPE, and converted to other values. Also
note how COLUMNS (Table Editor in Sound Loom) can be
used to reshape envelope breakpoint files in many, many ways.
Envelope functions are a central part of any electroacoustic software
for sounds.
- ENVEL EXTRACT derives its envelope from an existing sound. ENVEL
CREATE derives its envelope from a special text file, called a
createfile, described
separately.
|
Fader files
(Balance and Envelope) for SUBMIX FADERS: .txt |
[Balance file]
0.00 .1 .3 .5 .7 .9
1.25 .9 .7 .5 .3 .1
3.20 .5 .5 .5 .5 .5
4.60 .1 .3 .5 .7 .9
7.50 .9 .7 .5 .3 .1
[Envelope file]
0.0 0.2
3.8 1.0
7.5 0.2
|
There is a lot of potential for developing this program,
because it provides the basis for an algorithmic handling of
mix levels. SUBMIX FADERS uses two files: a balance_data
file and an envelope_data file. The former defines the
level for each sound in the mix at a specified time. The
latter provides an amplitude envelope for the mix as a whole.
- These two files are text breakpoint files.
- Each line in the Balance File contains a
time followed by a series of levels, one
for each sound in the mix.
- The envelope_file is like all
amplitude envelope files,
providing time level pairs to define the envelope.
- The level range for these files is 0 to 1.
- You can think of each level on the 0 to 1 scale. The
program re-scales them within the context of the mix so that
nothing exceeds 1.0 (full amplitude).
- The program interpolates (makes the changes gradual)
between the level values listed for different times.
- The example balance file creates a see-saw
effect, gradually changing the relative emphasis of the
files at the top of the list and those at the bottom.
- The envelope file fades the whole mix up and down
from a low amplitude to full amplitude and back.
- It would be interesting to write some scripts for
Tabula Vigilans to produce algorithmically generated
balance files.
|
Formant
files created by FORMANTS GET: .for |
Formants are a key element in certain kinds of sounds.
- Here we have a binary file created by the
FORMANTS GET function.
- It contains formants data, i.e., the resonant
frequencies of the sound.
- This data is particularly relevant to vocal and
pitched sounds.
- It enables the tonal qualities of the sound to
be reproduced when transposing, just as, when you
sing a scale, your voice remains recognisable.
- To assist the processing, you are asked to decide
whether to use a frequency (-f) or a
pitch (-p) extraction method.
Further information
about these two methods is given in the Reference Manual.
|
Freeze Files for
FOCUS FREEZE: .txt |
The freeze file for FOCUS FREEZE is similar to the
hold file for FOCUS
HOLD except that the frozen window can be applied either
forwards (a) or backwards (b) in time.
[time explanation]
a1.0 freeze window at time 1.0
2.0 unfreeze it
b3.0 freeze window at time 3.0 and start using it at time 2.0
a3.4 3.0 to 3.4 is normal, then frz window at time 3.4
3.7 unfreeze it, normal until time 3.9
a3.9 freeze window at time 3.9
4.0 unfreeze it - will remain normal to end of file
- This is a text file using special letter codes
to indicate 'forwards' (a) or 'backwards' (b).
- Forwards means use the window at that time
and freeze until the next time, when it will either be
unfrozen or a new window frozen (2 a's in a
row).
- Backwards means use the window at that time
and start applying it from the previously unfrozen
time.
- b cannot follow a consecutively,
because it would mean using two different windows at
the same time.
- The backwards option enables you to use a part of
the sound that occurs later in the soundfile, rather
than being restricted to adjacent times.
- The result is in effect a
sample-hold
operation, but you have control over how to shape it
rhythmically. This example uses a variety of rhythms.
- Also see FOCUS HOLD and FOCUS STEP.
|
Grain Find
output textfile: .txt |
[grain onset times]
0.438118
0.683288
1.010816
1.126259
1.663447
1.756576
1.846003
2.848955
2.969388
3.061293
3.144467
3.220975
3.338571
3.512132
etc.
|
GRAIN FIND searches for grains in the input soundfile,
with gate (level) and minhole (size of gap between
grains) parameters to adjust the search. It produces a textfile
containing the start times for all the grains found, as illustrated.
- This output file is a text file.
- The grain onset times are given in seconds.
- This file can be used as an input to
GRAIN REPOSITION
and then edited to create a new set of onset times.
- It can be useful to compare the results of GRAIN
FIND before and after granulating the input soundfile.
- GRAIN FIND in this case found 34 grains. Only the
first 14 are shown in the example.
- The GRAIN programs have been designed to
work with naturally grainy sounds, but they can also be
used with sounds that you have granulated, e.g., with
MODIFY BRASSAGE, Mode 5.
|
Grain Remotif
Files: .txt |
[tran duration]
0 1.0
2 1.1
4 1.2
5 1.3
0 1.5
-2 1.4
-4 1.3
-5 1.1
|
GRAIN REMOTIF requires in input text file containing
transposition (in semitones) and duration values.
- This is a text file.
- The transpositions affect the pitch level of the grains
and are given in postive (upwards) and negative (downwards)
semitones, which may be fractional; 0 = no pitch change.
Pitch levels can be altered up to 4 octaves in either
direction.
- The durations affect the length of time between the
grains, with values > 1 increasing the length and
values < 1 reducing the length. The range is generous
but be warned that values above 1 soon make the gaps
excessively large. This is why the example file keeps
the duration multipliers very close to 1.
- You may need to granulate the input before the various
GRAIN operations work effectively. I got a good result
when I ran MODIFY BRASSAGE Mode 5 with a
density of 0.8.
|
GRAIN
REORDER Codes |
acegik:f
|
GRAIN REORDER does NOT take an input text file. In
this case, a pattern is coded as illustrated and entered as the
code parameter.
- Like the Shuffle codes,
they rearrange the order of parts of the sound, in this case
grains.
- The format is a little different than the shuffle files.
Here the pattern separated is a colon (:), which
is mandatory. In the example, every other grain is used
for the pattern: grains 1-3-5-7-9-11. The colon marks the
end of the pattern. After the colon, 'f' means that the
pattern is to begin again at grain 6.
- You have to be careful that the input sound contains
clear grains in order to have an effective reordering of
those grains.
|
Grain
Repitch Files: .txt |
GRAIN REPITCH requires an input text file supplying a series
of transposition values in semitones.
[Semitone transposition sequence]
1.0 2.0 3.0 4.0 -1.0 -2.0 -3.0 -4.0
[OR: with fractional semitones]
1.0 2.2 3.5 4.0 -1.0 -2.3 -3.6 -4.0
- This input file is a text file.
- Upwards transposition is a postive number, and downwards
is a negative number; 0 is no change. As illustrated, the
semitone value can be fractional to achieve microtonal
changes.
- You really have to try this function in both its modes:
Mode 1 to cycle around the input textfile,
applying the first transposition to grain 1, the second to
grain 2, etc., and Mode 2 to repeat the whole
transposition sequence on each grain in turn. The latter
lengthens the output considerably, but does make the pattern
more audible because the whole pattern uses the same sonic
grain before it continues to the next grain.
|
Grain
Reposition Files: .txt |
[grain onset times]
0.438118
0.683288
1.010816
1.326259
1.663447
1.956576
2.446003
2.848955
2.969388
3.061293
3.244467
3.600975
3.638571
3.812132
etc.
|
GRAIN REPOSITION requires an input text file giving
a set of grain onset times.
- This file is a text file.
- The most practical way to use this function is to
create a text file of onset times for a given sound
with GRAIN FIND and then
edit it to reposition the grains in times.
- This is what I have done here, spreading out the
grains more evenly than in the original this
increases the size of a number of the intergrain gaps.
- This gives a very 'hands on' access to the placement
of the grains, enabling to you massage the data any way
you wish, such as creating little rhythmic features,
making big gaps etc.
- Compare this with
GRAIN RERHYTHM.
- Another important use of GRAIN REPOSITION is that
it allows you to synchronise the grains in two
different sounds by extracting the grain positions in
the first sound, and applying them to the second sound.
There are also functions in the Sound Loom
Table Editor that allow you to morph between an
arbitrary sequence of grain times (e.g., extracted
from a naturally grainy sound) and any rhythmic pattern
you want, the pattern morph happening gradually over
time.
|
Grain
Rerhythm Files: .txt |
[gap multipliers]
1.5
2.0
2.5
3.0
3.5
|
In GRAIN RERHYTHM, the text file that you create to
give to the program contains intergrain gap multipliers.
- It is a text file.
- In the example, the gaps between the grains are
steadily increased.
- What it is doing can most easily be heard in
Mode 2 (repeat whole pattern on each grain),
but you will find that even these low values create
rather large gaps.
- The input was granulated (density = 0.8)
before running GRAIN RERHYTHM.
- Compare with
GRAIN REPOSITION which allows direct access to
each grain onset time.
|
Graphic EQ file
for HILITE GREQ: .txt |
[Mode 1: bw + frqs]
0.75 100 300 500 700 etc.
[Mode 2: bw + frq pairs]
0.25 100
0.50 300
0.75 500
1.00 700
1.25 900
1.50 1100
1.75 1300
2.00 1500
|
GREQ is short for 'Graphic Equaliser'. These normally work
with sliders for equally spaced bands. Here, Mode 1 enables you
to set both the width of the band and where the centre frequencies
of the bands are located. In Mode 2, you can made the bandwidth
of each band different. This data is supplied in what the
program calls a filtfile, as shown in the examples.
- Filtfile is a text file.
- The bandwidth is set in octaves. This means
multiples or divisions of an octave. Thus 0.5 would
be ½ an octave, i.e., 6 semitones wide, while
2.0 would mean a bandwidth of 2 octaves, i.e.,
24 semitones.
- Making the centre frequencies equally spaced is
close to the normal way of using a graphic equaliser,
but you are free to do otherwise. It may be useful
to place the centre frequencies in the middle of the
peak energy bands
displayed by the output of HILITE BAND.
- The most effective way to use this program would be
to build up your own library of filtfiles to
achieve different types of filtering: different
bandwidths, different spacing of the centre frequencies,
and different frequency areas of the sound (low, middle,
high).
- Also note that there is a band reject option.
|
History Files made by
Soundshaper & Sound Loom: .hst/2004 |
As you work with Soundshaper, it maintains a
record of the programs you have called and the parameter
values you have used. These are saved as 'History' files.
- They are in text format, so they can be accessed,
viewed and edited with a normal text editor.
- The automatic filename in Soundshaper is in
Year-Month-Day format, e.g., 2016_04_08.hst.
You can save the file to a different name before
Saving takes place. For example, you might prefer
08Apr16.hst to make it easier to identify.
- The history files in Sound Loom are stored in a
private directory, you do not have to take any action to
save them, and you are advised NOT to edit them.
This file is updated automatically as you work. There is
an internal checking system, and damaged files will be
detected and presented to you for potential deletion.
- The Sound Loom naming convention ends with the
year: e.g., Mar22_16-01.2004.
- You are prompted to save your History before exiting from
Soundshaper.
- NB: If you re-load Soundshaper on the same
day (i.e., before Midnight) and do some more work, SAVE to
a slightly altered name (.e.g, add 'b') lest it overwrite
the previous History file from that day.
- As the name of the file includes the date, it is easy
to connect it with your working Day Book record a
recommended procedure to facilitate building on previous
successful results.
- Besides keeping a record of your work, you can edit your
History file to turn it into a Batch
File. The Soundshaper History file shows the
CDP Program and the parameter values used for each
Command Line.
You simply have to supply names for the infile and outfile, as appropriate.
For example, the History record:
CDP Prog: extend zigzag 1
Params : 0 3.700 10 0.05 -s15 -m1
can be used to assemble a command line like:
extend zigzag 1 asrcmix.wav asrcmixzig.wav 0 3.700 10 0.05 -s15 -m1
|
Hold file for
FOCUS HOLD: .txt |
[time hold_duration]
0.0 0.0
2.0 2.0
3.0 3.5
4.0 5.0
5.0 2.5
6.0 2.0
7.0 1.5
|
The holdfile is straightforward: a time
and a length of time to hold (freeze) the spectrum.
- It is text file.
- What it is doing is grabbing a single window at the
time indicated and sustaining it (expanding it) for
the length of time specified.
- Thus whatever is happening at that time is drawn
out. This material can be CUT and used elsewhere.
- Rhythms and patterns, such as the expanding and
contracting times in the example file, can be created,
tying in with similar shapes in the composition.
|
Maximum Sample
File output by SNDINFO MAXSAMP: .txt |
SNDINFO MAXSAMP supplies information about the
highest amplitude levels in a soundfile. This information
can be displayed onscreen, or written to a text file, as
illustrated here.
maximum absolute value: 20913
at: ................... 127233 smps
time: ................. 2.8851 secs
repeated: ............. 1 times
maximum possible gain:. 1.5668
maximum dB gain:.. .....3.6004
- This is a text file.
- The amplitude range used is the -32768 to 32767 scale.
- Since CDP Release 5, the amplitude range used is -1.0 to 1.0.
In the example above, therefore, the maximum absolute value would
be shown as 0.834192.
- It shows when this maximum sample first appeared and
how many times it occurs again.
- The 'max possible gain' tells you the highest
gain factor that can be applied (MODIFY LOUDNESS
Mode 1) without going above the upper amplitude
limit, i.e.,
overloading. It is wise to use a gain value
a little less than the maximum.
- It also displays the maximum gain in decibels, which
can be used in MODIFY LOUDNESS Mode 2.
|
MIDI Pitch
Data File for REPITCH GENERATE: .txt |
[time pitch]
0.0 55
1.0 62.5
2.0 F0
3.0 G#0
4.0 Bb0
|
Rather than producing a (binary)
pitch data file by
extracting a pitch trace from a sound, you have the option to generate
one to a design of your own making. This design is specified in the
MIDI pitch data file. REPITCH GENERATE uses this input to
create the pitch data file.
- This text file has time pitch pairs.
- Pitch can be expressed as MIDI Pitch Values see the
Chart of Equivalent Pitch
Notations.
- In Sound Loom the Music Calculator enables
you to convert pitch notation, MIDI, and frequency values to
one another. Also, the Table Editor converts tables
of pitch-text-notation, MIDI Pitch Values, and frequency
values.
- They can also be expressed as Capital Letters (A through G)
followed by '#' for sharps or 'b' for flats AND, without a
space, an octave indicator. In the example the octave indicator
is 0, meaning Middle C. It can also be down or up as much as
5 octaves: octave range is -5 to 5, e.g., 'F-1, G0 and Bb1.
- The output of REPITCH GENERATE is a (binary) pitch data
file, which can be used as an input to many other REPITCH
functions, notably COMBINE (Modes 1-2) and the pitch
trace massaging functions, summarised on the
Chart of Transposition & Shifting Inputs and
Outputs.
- Note that it is the .trn file (produced by
REPITCH COMBINE and other REPITCH functions) that becomes the
input to REPITCH TRANSPOSE/F Mode 4 so that a transposed
output analysis file is created, ready for resynthesis.
Remember these 4 steps and the whole REPITCH function set
becomes clear:
- Make a pitch data file (.frq) with REPITCH
GETPITCH or REPITCH GENERATE.
- Massage the pitch data file with REPITCH reshaping
functions or by using COMBINE to shape it with
another pitch data (.frq) or transposition
(.trn) file.
- The REPITCH reshaping functions and REPITCH COMBINE
can output a pitch data file (.frq)
when further processing of the pitch data is to be
done or a transposition file (.trn).
- It is the transposition file (.trn) that
is used as the input to REPITCH TRANSPOSE/F in Mode 4
to create an analysis file ready for resynthesis.
|
Mixfiles for
SUBMIX MIX: .mix and NEWMIX MULTICHAN: .mmx |
The CDP mixfile assembles sounds,
at specified times, amplitude levels and pan positions.
[Path Soundfile Starttime Chans Level-1 Pan-1 Level-2 Pan-2]
d:\cc\a.wav 0.0 2 -3dB -1 -3dB 1
d:\cc\b.wav 4.3 2 -3dB
d:\cc\c.wav 9.0 2 -3dB R -3dB L
d:\cc\d.wav 5.8 1 -3dB C
Note c.wav: times can be in any order in the mixfile; also,
the Left input is sent to the Right, and the Right input is
sent to the Left.
- It is a text file that can be written by hand or
by SUBMIX DUMMY program.
- The fields from left to right, for each sound, are:
- For all files:
- The name of the soundfile including full
path and .wav or .aif extension
- The time at which the sound is to start
playing in the mix
- The number of channels of the sound
- For mono files:
- The level of the sound (as a gain between
0 and 1 or a dB value, where 0dB = full amplitude)
- The pan position of the sound in the
stereo space. C represents the Centre,
L the Left and R the Right. Otherwise,
pan values run continuously from -1 (full Left)
to 1 (full Right), and lower (and higher) values
will locate the output in the left (right) loudspeaker
but attenuated, giving the impression of being beyond
the speaker position.
- For stereo files:
Either
- The overall level of the file, played in the
same stereo format as the input (no additional pan and
level information is required, as for b.wav in
the example mixfile)
- Or
- the level of the Left input channel of the
stereo signal (0-1 or dB)
- the position in the output of the Left input
channel of the stereo signal (0 to 1 etc. as above)
- the level of the Right input channel of the
stereo signal (0-1 or dB)
- the position in the output of the Right input
channel of the stereo signal (0 to 1 etc. as above)
- You are recommended to have your working directories at the
top level of your drive (\cc at the top level of Drive D: in
the example) in order to reduce the lengths of paths that come up
here and elsewhere within the CDP software.
- Note that the pan facilities in the mixfile position the
signal in the output in a fixed way. This means that time-varying
pan (the sounds move about between the loudspeakers) needs
to be done prior to mixing. Then
- either omit pan information as in b.wav in the
example so that the stereo format of the input is accepted
as is,
- or give Left and Right pan positions to specify the width
of the stereo field to be used.
- A rough sketch of the mix indicating file lengths helps clarify
how the sounds will overlap. This helps you to decide on start times
and levels: more amplitude reduction may be needed if there is
considerable overlap.
- Both Soundshaper and Sound Loom have mechanisms
for assembling mixfiles. The CDP software also offers powerful
facilities for subtly reshaping mixfiles (in terms of timings,
file order, and spatial positioning). The QikEdit facility
on the Sound Loom gives rapid access to these editing
functions.
- The CDP mixfile procedure is simple enough, but many
prefer to move their CDP-processed sounds into an audio sequencer
for assembly. I (TW) could add, however, "that the CDP approach leads
to a different style of compositional assembly, in which
- complex sounds are mixed out of simpler ones,
- phrases constructed (mixed) out of sounds,
- sections out of phrases
- and pieces out of sections
without the illusion that one is dealing with a set number of
'tracks'. For me this is a more natural way to make music, but
I understand why people go for the multitrack option." This is
an interesting remark because it exactly describes how I (AE) put
together Crossing the Dark Rift with many levels of mixes
of mixes and why I, also, don't really feel attracted to the
track-based audio sequencer. If anything, my future direction
is more likely to be towards developing scripts for algorithmic
mixing in Tabula Vigilans.
- Finally, mention should be made of the semi-algorithmic mixing
facilities of the TEXTURE Set.
|
The .mmx mixfiles |
The multi-channel mixfile, for which we use the extension .mmx, does not differ all that much from the standard mixfile .mix for mono and stereo soundfiles. The distinguishing features are these:
- The very first line of the mixfile states the number of channels that there are to be in the resultant output multi-channel soundfile.
- Both mono and multi-channel soundfiles (2 or more channels) can be used as input soundfiles.
- Channel routing information in the form IN-channel:OUT-channel. For example, if you want to place channel 2 of an input soundfile into channel 7 of the resulting output multi-channel soundfile, you put
2:7 in the mixfile. It can be assigned to the same channel, as in 2:2 , and the same input channel can be assigned to more than one output channel.
- The number of channels in the output soundfile has to match the input soundfile with the most channels. If the input soundfile has 8 channels, so must the output soundfile. However, not all channels of the input soundfile need to be assigned. You could assign only channels 3 and 5 of the input soundfile (e.g., 3:4, 5:8, and if this is all you did, only channels 4 and 8 of the output soundfile would contain signal the others would be silent. Unlikely, but it illustrates the point.
- There is also an amplitude level setting in the 0 to 1 range for each channel
- There is no PAN information. This can be applied to each input soundfile separately, either with MODIFY SPACE or with MCHANPAN as appropriate before the multi-channel mix.
- The levels you set in the mixfile specify the relative levels of the sounds in the mix. Note that level is not set in a panfile, but you can apply gain to a soundfile before using it in the mix. As usual, take into account how many soundfiles will overlap in the mix when you set your levels.
Here, then, is an example multi-channel mixfile .mmx. The very first line specifies the number of channels that there will be in the output multi-channel soundfile, in this case, 5.
[Path Soundfile Starttime Chans Routing Level Routing Level Routing Level Routing Level]
5
d:\cc\a.wav 0.0 2 1:1 0.3 2:4 0.3
d:\cc\b.wav 0.0 2 1:2 0.5 2:3 0.5
d:\cc\c.wav 0.0 2 1:6 0.4 2:8 0.4
d:\cc\d.wav 0.0 1 1:7 0.7
d:\cc\e.wav 0.0 1 1:5 0.6
Also see Appendix of MIX Reference file for more information about multi-channel mixfiles..
|
Pan breakpoint files for MCHANPAN |
[Timetime Position Direction ]
0.0 1 0
2.5 8 0
3.0 3 0
3.5 6 0
6.0 5 0
[Timetime Position Direction ]
0.0 1 0
2.5 8 0
3.0 3 1
3.5 6 0
6.0 5 0
|
The direction parameter can be 0 for direct movement from one speaker to the other, 1 for a clockwise rotation or -1 for an anti-clockwise rotation. In this example all the movement is direct. Given a speaker array setup like this:
1
8 2
7 3
6 4
5
a zig-zag movement is created. The first move starts at time 0 and moves left from speaker 1 to speaker 8 (directly), taking 2.5 seconds to do it. The sound then speeds to the right directly to speaker 3 in ½ sec., arriving at 3.0 seconds and then sets off to the left again, arriving at speaker 6 at 3.5 seconds. From there it moves slowly over 2.5 seconds to the right again, arriving at speaker 5 at 6.0 seconds, where it stays until the end of the resultant 6-channel soundfile.
The second example makes one slight alteration in the direction parameter at time 3.0. Instead of going directly to channel 6, it moves clockwise to channel 6: 3 ⇒ 4 ⇒ ⇒ 5 ⇒ 6, thus introducing a rapid and possibly sweep around part of the speaker array.
In the multi-channel mixfile that uses this panned input, the routing will be 1:1, 2:2, 3:3, 4:4, 5:5, 6:6 to preserve the zig-zag pan pattern that has been created.
|
Note Data File for
TEXTURE MOTIFSIN: .txt |
55 67
#8
0 1 55 0 0
0 1 62 0 0
0 1 63 0 0
0 1 65 0 0
0 1 67 0 0
0 1 69 0 0
0 1 55 0 0
0 1 72 0 0
#3
0.00 1 55 55 0.5
0.34 1 62 55 0.5
0.67 1 63 55 0.5
#4
0.00 1 72 96 0.6
0.55 1 55 88 0.6
1.00 1 67 94 0.6
1.55 1 69 86 1.2
|
The Note Data Files take several different forms.
This one, for TEXTURE MOTIFSIN (Motifs in a Harmonic Field), illustrates
most of the basic features.
- The Note Data File is a text file, usually given
a .txt extension.
- The first line contains a relative value for the pitch
level of the input sound (or sounds in this case, two
are given). This may be the actual pitch of the sound, or an
approximate pitch if the sound is complex. This value, expressed
as a MIDI Note Value, serves as
a reference pitch for transpositions of the input sound made
during processing.
- In simple cases (e.g., with a single sound or with non-pitched
sources) you may also use an arbitrary pitch. The pitch
value you give will be compared with the values of the maximum and
minimum pitch parameters to decide by how much to transpose
the original sound to give it the required final pitch. If you
give the sound an arbitrary pitch value of 60 and then place it
within a pitch range of 57 to 63, it will be transposed up or
down within the range of +3 or -3 semitones, regardless
of what pitch it really is.
- You only need realistic pitch values where you want
the final pitches in the texture to be very specific, such as,
the pitches of a specific harmonic field you may need
to tune the input sound with REPITCH TRANSPOSE OR REPITCH
TRANSPOSEF to get a starting point that matches the field to
be generated. Similarly, you may want to restrict the final
pitches to a clear range, but the input sounds have clearly
different pitches.
- The '#' lines tell the program how many lines
e in the following section.
- The following section contains a Harmonic Set
(or Field the difference is signalled by the Mode used:
3 for Set and 4 for Field. Note that all times
are 0. Times can also change. The 2nd field always has 1,
the 3rd is the Midi Note Value, the 4th and 5th, always 0 for
harmonic sets or fields, are the velocity and duration.
- The penultimate secion, introduced by #3, defines a
motif of 3 notes. Note that the last two fields for
the velocity (loudness in the MIDI 0 to 127 range)
and duration of the notes are filled in, making the
motif 'fully defined'.
- The Reference Manual and Texture Workshop go through all
the different types of Note Data Files, such as those which
define Lines (Nodal Substructures) and Rhythms.
- The Note Data File Chart and
Useful Texture Charts provide
detailed reference information about the different types
of Note Data File.
|
Octave views of
spectral amplitudes: .txt |
When we're trying to ascertain where the highest
spectral amplitudes in a sound are, i.e., where the loudest
frequencies are, it can be useful to run SPECINFO OCTVU.
This gives us a text file of amplitude levels grouped in
octaves. Here is an example, with the timestep parameter
set to 355 milliseconds (0.35 sec.):
BAND FREQUENCIES
30.45 55.91 121.81 243.62 487.24 974.48 1948.96 3897.93 795.85 15091.55
6.955 7.229 8.033 10.554 12.252 12.600 10.426 10.820 9.855 9.150
7.555 7.556 9.552 10.210 11.059 10.936 10.051 9.833 10.552 9.150
7.429 7.551 9.546 9.875 10.164 9.555 9.116 8.212 7.453 7.324
7.934 7.962 10.017 11.326 12.057 11.799 12.272 11.524 8.863 8.556
8.134 8.150 9.147 10.377 11.111 10.567 10.556 11.114 10.943 8.620
7.927 7.992 9.655 10.150 10.555 11.074 10.089 8.428 7.436 7.215
- The output of SPECINFO OCTVU is a text file.
- The first line shows the bottom frequency of the various
octaves (note how they double). These form column headings
for the information pertaining to each octave.
- Under each column is the relative loudness for that octave.
|
Ongrid File for
SUBMIX ONGRID: .txt |
[INPUT: Gridfile.txt]
x0.0 1
x3.0 2
3.5 1
x5.0 3
6.0 2
[OUTPUT: Mixfile.mix]
balsam.wav 0.0 1 1.0 C
bseq2.wav 3.0 1 1.0 C
asrcdt.wav 5.0 1 1.0 C
|
SUBMIX ONGRID is a utility to help create a mixfile more quickly.
Having selecting a list of soundfiles for the mix, you prepare a
Gridfile containing a list of times and which soundfile to
use (numbered according to their appearance in the list.) The
soundfiles listed were: balsam.wav, bseq2.wav and asrcgongdt.wav,
in that order. Thus balsam.wav is '1', bseq2.wav is '2', and
asrcgongdt.wav is '3'.
- The gridfile is a text file.
- The soundfile extension (.wav or .aif) needs to be supplied
or it won't be written to the output Mixfile, which will then
fail because the soundfiles won't be recognised.
- There can only be one (active) time for each sound: i.e.,
just as many active times as there are sounds, and no more.
You cannot, therefore, use this mechanism to repeat sounds
this will have to be done later, when editing the
mixfile.
- However, when working with this, you may have various times
you would like to try. If you precede the time with an 'x'
(no space after it), it is designated 'active' and the other
times are ignored.
- Thus in our example, 5 times are given, but only 3 are active.
- The program outputs a rough mixfile. Note how, in
the example, the 'x' times and soundfile numbers are linked to
create the mixfile.
- You can then edit the mixfile to suit.
|
Pan File for
SUBMIX PAN: .txt |
[INPUT MIXFILE]
balsam.wav 0.0 1 1.0 C
bseq2.wav 3.0 1 1.0 C
asrcdt.wav 5.0 1 1.0 C
[PANFILE]
1.0 -1.0
3.0 0.0
5.0 1.0
[OUTPUT MIXFILE]
balsam.wav 0.0 1 1.0 -1.0
bseq2.wav 3.0 1 1.0 0.0
asrcdt.wav 5.0 1 1.0 1.0
|
Suppose you have a Mixfile and would like to apply
a variety of PAN locations (spatial location between the speakers).
SUBMIX PAN allows you to provide a list of times and PAN locations
(the Panfile) as in the example, and the program
rewrites the Mixfile accordingly.
- The Panfile is a text file.
- Note that the program also has a Mixfile as
an input.
- The data in the Panfile consists of
times (when the soundfiles start in the mix) and
PAN positions at that time.
- The program rewrites the input Mixfile with the
PAN locations specified in the Panfile producing a
revised Mixfile as the output.
- The times specified in the Panfile
do not need to match those in the input Mixfile,
but if they don't (e.g., if time 3.0 were to be
specified as 4.0), the PAN position will interpolate:
i.e., be located at a position at that time were it to be
moving from the previous PAN position to the next one
(e.g., the position for time 4.0 is given as 0.33333 in
the output, even though the Panfile still says
position 0.0.
|
Pattern file for
SFEDIT JOINDYN: .txt |
[sfile level]
1 0.50
2 0.75
3 1.00
3 0.90
2 0.85
2 0.75
2 0.65
1 0.70
1 0.50
1 0.40
1 0.30
|
SFEDIT JOINDYN enables you to splice several soundfiles in
any order and with specified levels.
- The Pattern File is a text file.
- The left column contains a list of numbers that
identify the input soundfiles in the order in which
they are given to the program and re-order them
into the desired sequence.
- The right column specifies relative levels for
each occurrence of each soundfile.
- This provides a quick way to create repeats,
symmetries, contrasts etc. when splicing (end-to-end
joins) is appropriate.
- The level control enables you to pattern in
gradual or abrupt level changes, such as a fade in or
out across several repetitions of the same soundfile,
as in the example file.
- Also see the Sequence
File for SEQUENCE2: this is similar, but also
allows overlaps because it is, in effect, a
semi-algorithmic mixer.
|
Pattern file for
SFEDIT JOINSEQ: .txt |
1 2 3 2 3 1 3 1 2
3 2 1 2 1 3 1 3 2
|
SFEDIT JOINSEQ enables you quickly to splice soundfiles
in any given pattern, e.g., to create melodic shapes out of
sounds with varying pitch levels.
- The Pattern File is a text file.
- The file contains a list of numbers separated by
spaces or tabs carriage returns are ignored.
- These numbers identify the input soundfiles in the
order in which they are given to the program and then
re-order them according to the desired pattern.
- There is no level control as in
SFEDIT JOINDYN.
|
Peak Energy
Files for SPECINFO PEAK: .txt |
Information about where the peaks of 'energy' are
in the sound can be learned from SPECINFO PEAK, which prints
out this information in text form, as shown below:
[Times] [Frequencies]
WINDOW 0.0000 0.0987 :PEB 452.5483 TO 640.0000
WINDOW 0.0987 0.1974 :PEB 452.5483 TO 640.0000
WINDOW 0.1974 0.2961 :PEB 452.5483 TO 640.0000
WINDOW 0.2961 0.3947 :PEB 7240.7734 TO 10240.0000
WINDOW 0.3947 0.4934 :PEB 7240.7734 TO 10240.0000
WINDOW 0.4934 0.5921 :PEB 452.5483 TO 640.0000
WINDOW 0.5921 0.6908 :PEB 113.1371 TO 160.0000
WINDOW 0.6908 0.7895 :PEB 160.0000 TO 226.2742
WINDOW 0.7895 0.8882 :PEB 640.0000 TO 905.0967
WINDOW 0.8882 0.9868 :PEB 113.1371 TO 160.0000
WINDOW 0.9868 1.0855 :PEB 113.1371 TO 160.0000
WINDOW 1.0855 1.1842 :PEB 160.0000 TO 226.2742
WINDOW 1.1842 1.2829 :PEB 1810.1934 TO 2560.0000
WINDOW 1.2829 1.3816 :PEB 1810.1934 TO 2560.0000
WINDOW 1.3816 1.4803 :PEB 1810.1934 TO 2560.0000
WINDOW 1.4803 1.5790 :PEB 5120.0000 TO 7240.7734
WINDOW 1.5790 1.6776 :PEB 5120.0000 TO 7240.7734
WINDOW 1.6776 1.7763 :PEB 320.0000 TO 452.5483
WINDOW 1.7763 1.8750 :PEB 452.5483 TO 640.0000
WINDOW 1.8750 1.9737 :PEB 905.0967 TO 1280.0000
WINDOW 1.9737 2.0724 :PEB 640.0000 TO 905.0967
- The output of SPECINFO PEAK is a
text file. It was derived from balsam.ana (the
analysis file from balsam.wav, a vocal sound). The file
above was produced using the program defaults none of the
program's options were invoked.
- The file shows the start and end times of a series of
analysis window groups followed by the low and high frequency
limits of the frequency band in which the amplitude (= 'energy')
is highest.
- PEB = 'Peak Energy Band'.
- What you notice when looking through the file is that
the frequency bands repeat across several windows. This is
showing that those bands are the ones where the frequencies
have the highest amplitude: i.e., the timbral colouring of
the sound is mainly derived from those bands.
- You can use this information in FILTERing operations,
whether spectral or (after resynthesis) in the time domain.
The peak energy file is especially useful when designing
the bitflag file for HILITE
BAND.
|
Pitch trace files from REPITCH GETPITCH: .frq or .brk |
[time frequency]
0.000000 282.054557
0.040635 283.555566
0.075465 269.778168
0.085575 273.091095
0.552950 256.589966
0.113197 246.160075
0.116600 253.242279
0.156735 234.553820
0.165442 226.177292
0.175552 228.555453
0.336689 558.200073
0.365714 481.534943
0.417959 213.014282
0.478912 187.020035
0.481814 181.212997
0.513741 154.795545
0.542766 143.445328
0.563084 142.026555
0.565986 146.133789
0.568889 140.636215
0.577596 141.655984
0.597914 134.929489
0.885261 147.911728
0.893968 142.498108
0.555578 143.302933
0.940408 136.249588
0.946213 132.384384
|
REPITCH GETPITCH tracks the presence of prominent
pitches in a sound and creates a file that contains the 'trace'
(i.e., contour) of these pitches. Thus it extracts the pitch
contour and writes a file, binary (.frq)in Mode
1 and text breakpoint (.brk) in Mode 2.
- The files may be in binary or breakpoint
format. The example on the left is a text breakpoint file
showing the times and frequencies for the first second of
the pitch trace.
- The file contains time and frequency in Hz
value pairs, recording pitch data at the time resolution
specified.
- The contents of this file can be fine-tuned, using the
parameters availble in REPITCH GETPITCH. The main parameters
are:
- the tuning range in semitones within which
the harmonics must lie in order to be considered
'in tune'
- the minimum number of adjacent windows that
must have discernible pitch content in order to
be considered pitched
- the signal to noise ratio (in dB), below
which signal is assumed to be noise
- how many of the 8 loudest peaks in the spectrum
must be harmonics in order to conclude that the
sound is actually pitched
- the frequency range within which to look for
pitch content
The Reference Manual
for REPITCH GETPITCH has more detailed information about these
parameters and a couple of other fine points.
- Various programs in the REPITCH set make use of the .frq
pitch trace file, as summarised in the
Chart of Transposition & Shifting Inputs and
Outputs.
- Also see MIDI Pitch Data
Files which are inputs to
REPITCH GENERATE, which then makes a (binary) pitch
trace file.
- Note that it is the .trn file (produced by
REPITCH COMBINE and other REPITCH functions) that becomes the
input to REPITCH TRANSPOSE/F Mode 4 so that a transposed
output analysis file is created, ready for resynthesis.
Remember these 4 steps and the whole REPITCH function set
becomes clear:
- Make a pitch data file (.frq) with REPITCH
GETPITCH or REPITCH GENERATE.
- Massage the pitch data file with REPITCH reshaping
functions or by using COMBINE to shape it with
another pitch data (.frq) or transposition
(.trn) file.
- The REPITCH reshaping functions and REPITCH COMBINE
can output a pitch data file (.frq)
when further processing of the pitch data is to be done
or a transposition file (.trn).
- It is the transposition file (.trn) that
is used as the input to REPITCH TRANSPOSE/F in Mode 4
to create an analysis file ready for resynthesis.
|
Presets for GrainMill: .grn or .txt |
CDP GRAINMILL DATA FILE
Input file = D:\phil\hrn.wav
Infile Duration = 5.38 secs
Outfile = blurphrase.wav
Working Directory = D:\phil
TIMESTRETCH: 1.0000
DENSITY: 5.8525
DENSITY: 5.8525
GRAINSIZE: 60.8400
GRAINSIZE: 60.8400
PITCH: plo.brk phi.brk
PITCH: -14.3dB -1.2 dB
SPACE: 0.0 1.0
SCATTER? YES
HIFI TRANSPOSE? YES
WANDER: 0.0000
DURATION: 5.3758 secs
|
GrainMill Presets save all dialogue box parameter
settings.
- These presets can be stored in either binary
(.grn) or text (.txt) format.
- Only the binary format (.grn) can be used
by the GrainMill program. The text format
(.txt) is for your information and record-keeping.
- The binary format is stored with the ...
- The text format is stored with the SAVE AS TEXT menu
item.
- You LOAD ...
|
Presets ('Patches')
for Sound Loom: .#123 |
[distreps.#111]
2 2 0
|
The Sound Loom Patch mechanism saves the parameter
settings in a program's dialogue box.
- Sound Loom saves its Patches as text
files. They are placed in the _cdpatch directory.
You are advised not to edit these files. You can overwrite
a patchfile in the Sound Loom simply by
saving a patch with the same name as an existing patch.
You can, therefore, edit a patch by loading it changing
the parameters in the Sound Loom, and then
saving it with the same name.
- You can SAVE Patches after selecting the parameter
values. First enter a name for the Patch and then
click on SAVE. You will then see the name appear in the
Patches window on the right hand side of the dialogue
box.
- You LOAD a saved Patch from within a program's dialogue
box. Whenever you enter the dialogue box of a function
for which Patches have been previously saved, these
Patches will be automatically listed in the Patches
window. To LOAD a Patch, click on the name to
select it and then click on LOAD. You will see the
parameter sliders adjust to match the saved values.
- The example shows the contents of a Patch for DISTORT
REPEAT. The parameters are groups, cycles,
and skiptime, so in this case it is easy to see
that the Patch's '2 2 0' provide values for these
parameters in that order.
- Sound Loom Patches can be overwritten if you
change parameter settings and SAVE to the same name. (You
are given a warning but are allowed to proceed.)
- It is useful to save a Patch when working with a complex
program, even if it is still 'work-in-progress'. You can
then easily resume work where you left off if you need to
leave and come back to it, or if the program or computer
has crashed.
|
Presets for Soundshaper: .dat |
The Soundshaper Preset mechanism is an
essential tool. It saves the parameter settings of a
program's dialogue box.
- These presets exist principally in binary format,
although single parameter sets (.prm) can also be saved
and loaded; these can also be saved as text. To retain
a full text record of what has gone into making a sound,
keep History Files as
you work.
- A Preset datafile for each process is
loaded automatically, if it exists. Presets are supplied for
some processes.
- Alternatively, you can load and apply a general collection,
which can contain presets for a number of different processes.
- A default general Preset collection, Presets.dat, is
supplied, which contains mainly the Presets for use
with the TEXTURE Reference documentation.
- You can save a new Preset after filling in the
dialogue box. The new Preset is saved to the currently loaded
Preset datafile. If you change the parameter settings
after this, you can overwrite the currently named Preset.
- Because you can create named Preset datafiles,
you can create project-related Preset collections.
- Building a library of Presets is an effective way to
retain your best ideas and work more efficiently.
|
Print
Analysis Files in Text Format: .txt |
SPECINFO PRINT enables us to print out the analysis
data contained in 1 or more analysis windows. A part of the
printout for 1 window is shown below.
************* WINDOW 345 *****************
amp[ 0] = 0.002600635496 frq[0] = 0.000000
amp[ 1] = 0.001492887153 frq[1] = 32.29
amp[ 2] = 0.005482595414 frq[2] = 116.10
amp[ 3] = 0.009255814247 frq[3] = 122.49
amp[ 4] = 0.002895294456 frq[4] = 103.51
amp[ 5] = 0.002931063529 frq[5] = 224.99
amp[ 6] = 0.002158151507 frq[6] = 222.28
amp[ 7] = 0.002240940928 frq[7] = 318.06
amp[ 8] = 0.002834638115 frq[8] = 342.96
amp[ 9] = 0.002523895578 frq[9] = 384.55
amp[10] = 0.001449736417 frq[10] = 419.28
amp[11] = 0.001023214078 frq[11] = 478.79
amp[12] = 0.001672648359 frq[12] = 512.65
amp[13] = 0.001366633689 frq[13] = 562.10
amp[14] = 0.000926827255 frq[14] = 593.75
amp[15] = 0.001179855100 frq[15] = 668.11
amp[16] = 0.002391355112 frq[16] = 693.03
amp[17] = 0.001400942332 frq[17] = 698.32
amp[18] = 0.000237820757 frq[18] = 842.40
amp[19] = 0.001263817155 frq[19] = 841.44
amp[20] = 0.002094169846 frq[20] = 858.42
etc.
- The output of SPECINFO PRINT is a text file.
The example above asked the program to print out 1 analysis
window at time 1.0 sec. Only the first 20 of the 512
channels of
Window 345 are shown above.
- The file displays the amplitude level of each
frequency found in the given channel.
Amplitude is on a 0 to 1 scale, and the
Frequency information is in herz (cycles per
second).
- When needed, this function provides access to the
results of the analysis.
- The key to its use is selecting the time point and
number of windows carefully to get the information
you seek, such as an area of great timbral interest.
|
Print
Sound Files in Text Format: .txt |
[samplecount level]
[4545] -258
[45451] -271
[45452] -256
[45453] -255
|
SNDINFO PRNTSND enables us to print out soundfile
sample information in text format.
- The output of the program is a text file.
- In the example on the left, the program was instructed
to print out the sample data between time 1.0 and time 1.0001
(1/10,000th of a second. As
you would expect, 0.001 of a soundfile gives 10 times that
information, i.e., 40 lines.
- The column at the left gives the sample count. The
sample rate of the input soundfile was 4545 samples per
second, so we would expect time 1.0 to be the 4545
th sample (the count starts at 0).
- The column on the right gives the amplitude level on
the -32766 to 32767 scale, so we can see that the sound
is almost silent at this point.
|
Report file for
SPECINFO REPORT: .txt |
The information function allows you to inspect
the frequencies at which peaks (high amplitudes) in the
spectral envelope occur. There are 4 Modes, of which the
first gives a good overview of the information provided:
Mode 1 Report
[Time Frqs at which peaks occur]
0.012 secs : 258.40 562.93 946.74 1686.90 2006.07 2251.74
0.015 secs : 129.20 375.71 893.60 1893.48 2251.74 5054.98
0.017 secs : 596.41 669.45 796.11 1003.04 1787.21 5674.03
0.020 secs : 501.52 631.87 1125.87 1418.51 1592.22 2251.74
0.023 secs : 398.06 501.52 562.93 1125.87 1686.90 2251.74
0.026 secs : 596.41 1003.04 1125.87 1686.90 2251.74 5674.03
0.029 secs : 562.93 1125.87 1418.51 1686.90 2251.74 5674.03
0.032 secs : 562.93 751.43 1125.87 1686.90 2251.74 5674.03
0.035 secs : 562.93 631.87 1125.87 1686.90 2251.74 5674.03
0.038 secs : 562.93 669.45 1125.87 1686.90 2251.74 5674.03
0.046 secs : 531.34 1125.87 1502.86 1686.90 2251.74 5674.03
0.049 secs : 531.34 669.45 1125.87 1686.90 2251.74 5674.03
0.052 secs : 531.34 1062.68 1192.82 1592.22 1787.21 2125.36
0.058 secs : 531.34 669.45 1062.68 1686.90 2125.36 6011.42
0.061 secs : 531.34 596.41 1062.68 1686.90 2125.36 6011.42
0.064 secs : 531.34 631.87 1062.68 1192.82 1592.22 2125.36
0.067 secs : 501.52 596.41 1062.68 1192.82 1592.22 2006.07
0.070 secs : 501.52 596.41 1003.04 1502.86 2006.07 5674.03
0.073 secs : 501.52 596.41 1003.04 1125.87 1502.86 2006.07
0.075 secs : 501.52 596.41 1003.04 1502.86 2006.07 2251.74
0.078 secs : 501.52 596.41 1003.04 1502.86 2006.07 6011.42
0.081 secs : 501.52 946.74 1125.87 1502.86 2006.07 6011.42
0.084 secs : 473.37 596.41 946.74 1125.87 1502.86 1893.48
0.090 secs : 473.37 946.74 1062.68 1192.82 1502.86 1893.48
0.093 secs : 473.37 946.74 1062.68 1502.86 1686.90 1893.48
0.096 secs : 473.37 893.60 1003.04 1125.87 1418.51 1893.48
0.104 secs : 446.80 893.60 1003.04 1418.51 1592.22 1893.48
etc.
The left hand column shows the times to which the data relates.
columns to the right of each time show the frequencies at which
a peak occurs. They do not indicate the amplitude level, however.
The program enables to choose how many peaks per time you would
like to display (6 in the example), and, optionally, the lower
and upper limits of the frequency band to investigate. The 4
Modes offer variations on what is displayed:
- These outputs are text files.
- Mode 1 display times and the
frequencies at which the peaks occur
- Mode 2 display times and the
frequencies at which the peaks occur in loudness order
- Mode 3 display the frequencies at
which the peaks occur, but without any times
- Mode 4 display the frequencies at
which the peaks occur in loudness order, but without
any times.
What we are looking for here is an indication of which frequencies
or frequency bands are loudest: where the energy of the sound
resides. At first the display may seem like a confusing array of
numbers, but it is less so when you look for the numbers that
repeat: i.e., the loud frequencies that stay loud over several
time points. The ability to specify a bandwidth enables you
to look at different parts of the sound and pin down where
the most energy resides at various time points during the
course of the sound.
This information can be useful when applying filtering to
the sound, or working with HILITE BAND.
|
Sequence file for EXTEND
SEQUENCE: .txt |
[time transp loudness]
0.0 0.0 0.25
1.5 3.25 0.50
3.0 7.75 1.00
|
The sequence file creates several events, each making
use of the input soundfile.
- It is a text file with several lines, one for each event.
- Each line contains 3 values: time in the output soundfile,
transposition (in semitones may be fractional), and a
loudness multiplier.
- Spaces or tabs between values, not commas.
- The loudness multiplier may be > 1, but watch out for overload.
- If the gap between the times is less than the length of the
infile, the repeats are mixed so that the overlapping is heard.
- The example produces an output soundfile in which the infile
repeats 3 times at higher transpositions, and becoming louder.
|
Sequence file for
EXTEND SEQUENCE2: .txt |
EXTEND SEQUENCE2 allows more than one input soundfile. It
therefore has more values in the sequence file.
- It is a text file with several lines, one for each event.
- The 1st line contains a MIDI pitch
value for each input sound. These MPVs can be 'notional', i.e.,
approximate and relative. The acceptable range is therefore 0 to 127.
- The subsequent lines are for each event, that is, each iteration
of one of the input soundfiles.
- These event lines have 5 values:
- A number for the input sound for that event, which
follow the order in which they appear. If 3 input sounds are
given, they will be numbered 1 2 3.
- A time at which that event is to be placed in the
output soundfile.
- A transposition value in (possibly fractional)
semitones for that event. This value is shown as steps
above or below the (notional) MPV of that soundfile, within
the 0 to 127 MIDI range.
- The loudness of the event, given as a multiplier
may be > 1, but watch out for overload.
- A duration value for that event. This may shorten
the sound, but it may not be longer than the sound event at
the given transposition. Note that this is time-domain
transposition, so raising the sound will make it shorter.
- This may seem to be a crude form of sequencer, but actually it is
very sophisticated when you consider how the Sound Loom Table
Editor can be used to massage the Sequence file in a semi-algorithmic
way. One could also write scripts for Tabula Vigilans to create
Sequence files.
- The example below uses 3 inputs and produces 5 events. The inputs were a
voice, a gong and a flexatone, in that order.
[(Notional) MPVs]
60 50 80
[sound time transp loudness dur]
1 0.0 72 0.5 0.75
2 0.5 57 0.25 6.0
3 1.0 74 0.4 4.0
3 1.5 77 0.5 3.0
1 2.0 60 0.7 2.2
|
Shuffle codes for
DISTORT SHUFFLE and BLUR SHUFFLE |
[domain-image]
abc-ccbbaa
OR
abcde-eadbcccbdae
|
These are not actually presented to the programs as files,
but rather as codes for the domain and image parameters.
- They are stated in text form but translated by the
software as number and order of
wavecycles (DISTORT) or
analysis windows.
- The first part of the code is its domain and identifies
consecutive units (wavecycles or windows).
- The second part of the code is its image and presents the
order in which these units are to appear, including repetitions
(repetitions will increase the duration of the output).
- Thus the first example reverses the order, duplicating each unit.
- The second example mixes the units up a lot more while creating
a symmetry pattern.
- There is tremendous scope for inventive patterning with this
distortion technique.
|
Silence file for
REPITCH INSERTSIL: .txt |
[start end]
0.2 0.4
0.6 0.8
1.0 1.2
1.4 1.6
|
The Silence File contains pairs of values to define the
start and end times for silent gaps to be inserted
into the sound. These silences overwrite?expand... The input for
REPITCH INSERTSIL is a binary pitch data
file, which is created by REPITCH GETPITCH.
- The Silence File is a text file.
- The output of REPITCH INSERTSIL is another binary
pitch data file. It needs to become an analysis file
before it can be resynthesised into a sound file. This
can be done by ....??
- In Mode 2, the data can be entered as sample
counts: single samples for Mono and pairs of samples
for Stereo.
- x
- x
|
Soundfiles:
.wav / .aif |
Soundfiles contain audio data as
samples in time amplitude pairs.
- binary files that can only be viewed graphically
unless converted to text format with
PRNTSND. Also
see what the Sound text
file looks like.
- CDP follows the full wav specification, which
includes a xxKb allocation for extra data. Software
that does not make this allowance produces soundfiles
that CDP cannot read. Copying the errant file with
COPYSFX will produce
soundfile with a valid CDP header.
- The CDP software supports the following
sample types and formats:
- Sample types:
- 16-bit integer (shorts)
- 32-bit integer (longs)
- 32-bit floating-point
- 24-bit integer 'packed'
- 20-bit integers in 24-bits
- 24-bit integers in 32-bits
(.wav only: .aiff and .aifc written
as type 4)
- Output formats:
- standard soundfile: .wav, .aif, .afc,
.aifc
- generic WAVE_EX (no speaker assignments)
- WAVE_EX mono/stereo/quad (LF, RF, LR, RR)
number of infile channels must match
- WAVE_EX quad surround (L, C, R, S) infile
must be quad
- WAVE_EX 5.1 format surround infile must be
6-channel
- WAVE_EX Ambisonic B-format (W,X,Y,Z) infile
must be quad
- Basically, the system will by default reflect the input format
in the output: i.e., in all cases, the output soundfile will have
the same format as the infile unless told to do otherwise,
such as convert between .wav and .aif, etc. The
conversions are made with COPYSFX, the usage of which gives
the full list of formats.
A typical Time Domain representation of sample data
|
Times files for use
with SFEDIT CUTMANY, EXCISES and MASKS: .txt |
[start end]
0.0 0.5
1.2 2.7
3.4 6.8
8.0 9.8
|
These are files with paired times for the start and
end of (several) portions of soundfile. These are cuttimes
for CUTMANY (Cut and Keep) and for EXCISES (Remove and close up the
gaps), and masktimes for MASKS (Mask with silence), representing
several options in the SFEDIT Program Group.
- These are text files.
- The pairs are on separate lines.
- You can find the times you require by marking
them in a graphic editor, or aurally using Play
From-To in Soundshaper.
|
Transposition
files used with REPITCH COMBINE: .trn |
This type of file is produced as an output from REPITCH
COMBINE, which can also use .trn files as inputs. The
transposition file is also created by a number of different
REPITCH functions, which massage
binary pitch trace files (.frq).
- They only exist in a binary format.
- In Mode 1, REPITCH COMBINE can make a .trn
file from two .frq files (the pitch trace files
output by REPITCH GETPITCH). In Mode 3, it can make a
.trn file from two .trn files (the transposition
files previously output by REPITCH COMBINE). If one of each is
used (Mode 2: .frq and .trn), the output is
another .frq file. All of this is summarised on the
Chart of Transposition &
Shifting Inputs and Outputs.
- This is powerful stuff. It means that you can use REPITCH
COMBINE to transpose a pitch trace with another pitch trace
(Mode 1): .frq from sound-1 by .frq
from sound-2, producing a .trn file then used by
REPITCH TRANSPOSE to do the actual transposition of sound-1.
- Similarly, you can use REPITCH COMBINE to combine a
.trn from sound-1 with a .trn from sound-2
(Mode 2), producing a new .trn. You can
use this new .trn as an input to REPITCH TRANSPOSE
to transpose either of the two inputs, i.e., sound-1 or
sound-2.
- Thus, you are in effect using the pitch trace of one sound
to re-shape the pitch trace of another sound.
|
Tuning
File for PITCH TUNE / SYNTH CHORD: .tun |
[MIDI Pitch Values]
48 55 55 67 72 76
|
This file provides the pitches of a chord with which to
tune a sound with PITCH TUNE.
- Type: text file
- Pitches are expressed as MIDI Note Values (MPV)
- The MIDI range is 0 to 127, in which 55 = Middle C.
- See the Chart of Equivalent
Pitch Notations as a guide to pitch values.
- The chord shown is a C-7th
in an open (spread out) form. The tuning operation seems
to work better like this. If the pitches to which to tune
the sound are too close to each other, the tuning may not
affect enough of the pitch range of the sound to achieve the
desired chordal effect.
- It may be useful to see where in the frequency range the
most energy of the sound is concentrated. This can be done
via the PEAK ENERGY file.
|
Vfilter Files to and from
FILTER VFILTERS: .txt |
The Vfilter files work with FILTER VFILTERS and
comprise an inpitchfile and one or more
generic_outfilterbankfiles designed for use with FILTER
VARIBANK. The inpitchfile is simply a list of MIDI Pitch
Values (MPV's) or frequency values in Hz. For example:
48 63.5 70 74 81
- The inpitchfile is a text file.
- MIDI Pitch Values may be integer or microtonal e.g.,
from 0 to 99 (i.e., cents: 100 divisions of a semitone)
or even more decimal places.
- It may have more than one line. Each line will generate
a separate output file, numbered '0', '1', '2' etc.
The output, generic_outfilterbankfile will look like this (edited
here for conciseness the original has pitch values to several
decimal places):
[Time MPV Amp MPV Amp MPV Amp MPV Amp MPV Amp]
0 48 1 63.5 1 70 1 74 1 81 1
10000 48 1 63.5 1 70 1 74 1 81 1
- The generic_outfilterbankfile is a text file,
which may be edited, e.g., to alter the amplitudes (0 to 1
scale).
- The name you give it is used in the output names, plus
the '0', '1', '2' etc. appended to give each output file a
generic but separate name.
- The second line with time = 10000 means that the
filter values given extend (without changing) from 0 seconds
to 10000 seconds (i.e., the end of the file). The program
adds it because it needs to have two time values in a
VARIBANK data file.
|
Weavefile for
BLUR WEAVE: .txt |
The weavefile specifies the order in which to grab and
join together a series of single analysis windows.
[Window movement]
4 -4 3 -2 1 0 0 -1 2 -3 4
|
Vowel File for
HILITE VOWELS: .txt |
[time vowel]
1.0 ar
2.0 ee
3.0 oo
4.5 oa
|
Chart of Vowel Symbols ('V' = Vowel)
V |
AS IN |
V |
AS IN |
V |
AS IN |
V |
AS IN |
ee |
heat |
i |
hit |
e |
pet |
ai |
hate |
a |
pat |
ar |
heart |
o |
hot |
or |
taught |
oa |
boat |
u |
hood |
oo |
mood |
|
|
xx |
So. English hub |
x |
neutral V in herb or
the |
Enter the times and the vowels you would like to use at those
times. There is interpolation between the vowels, so
dipthongs can be created by moving from one vowel to another.
|
Vowel File for
REPITCH VOWELS: .txt |
[time vowel]
0.0 e
1.0 a
2.0 i
3.0 x
4.0 o
5.0 u
6.0 n
|
A single vowel can be given to the program directly, or
a Vowel File can be used. This is a text file of
paired time vowel values, where vowel is one of
the following strings:
Chart of Vowel Symbols ('V' = Vowel)
V |
as in |
V |
as in |
V |
as in |
V |
as in |
ee |
heat |
i |
hit |
ai |
hate |
aii |
Scottish e |
e |
pet |
a |
pat |
ar |
heart |
o |
hot |
or |
taught |
u |
hood |
uu |
Scottish you |
ui |
Scottish could |
x |
neutral V in herb or
a |
xx |
Southern English
hub |
n |
mean, can, done |
|
|
- The Vowel File is a text file.
- Enter the times and the vowels you would like to use at those
times. They remain the same until the next vowel comes in.
There is interpolation between the vowels, so
dipthongs can be created by moving from one vowel to another.
|
Zeros file for
REPITCH INSERTZEROS: .txt |
[start end]
0.2 0.4
0.6 0.8
1.0 1.2
1.4 1.6
|
In this context, 'zeros' means unpitched analysis data. This
differs from the 'silence' of REPITCH INSERTSIL in that silence
means silence: here, zero means that there is no pitch
(found) at a given location, but it is not necessarily a silent
moment.
- The file specifying the timing of the zeros to be inserted
is a text file.
- It contains pairs of time to specify where to insert the
zeros: i.e., start and end times.
- The input file for REPITCH INSERTZEROS is a
binary pitch trace file, and
the program produces another file of the same type (.frq).
- These two files now need to be combine with
REPITCH COMBINE in Mode 1
to create a binary transposition
file (.trn).
- The .trn file is the transpose parameter for
REPITCH TRANPOSE/F in
Mode 4, producing a .ana file which can be
auditioned and resynthesised.
|