home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
067.lha
/
Drw
/
drw.doc
< prev
next >
Wrap
Text File
|
1986-11-20
|
8KB
|
161 lines
Some spotty documentation for the DRW program
Introduction:
DRW is a sonic spectrum editor. It allows you to paint a sonogram
using specialized 'brushes' and then synthesize the corresponding
audio waveform. The program presents you with a grey area where
time is on the x-axis, frequency (actually phase increment) is on the
y-axis and color represents the amplitude of the sinewave at that point
in time and phase. Sonograms may be loaded and stored, sound files
may be analyzed into sonograms and resulting sounds may be saved as
IFF 8SVX files. It allows you to play the sound (both channels) with the
mouse controlling frequency.
Caution:
This is an extremely quick and dirty program which reads the color
values directly off the screen. There is no 'UNDO'. Because it is
written in CSI Multi-forth, certain operations are slower than they
need to be. Filename handling may be unfriendly should you make a
typo or two. There are several other annoying things that I won't
mention.
The Screen:
The screen presents a 128 by 256 pixel drawing area, surmounted by
a color palette of 30 colors, ranging from grey(0) through blue, black,
red, orange and yellow(255). Beneath the palette is the control comb,
which selects various brushes and drawing options. On the right is a
pathetic pseudo-prop gadget which controls certain drawing characteristics.
The MODES:
There are several states into which the program may be put: all of them are
accessed via the keyboard buttons. They are:
T)op D)oodle S)ynth P)lay R)eset W)rite B)andpass I)input O)utput Q)uit
T)op mode: clears the screen to grey ( amplitude 0), then goes directly to
D)oodle mode.
D)oodle mode is the main drawing mode. It works with the comb to allow
the sonogram to be drawn. To use the comb, you click on one of the tines.
A user-unfriendly 4 letter mnemonic appears on the right of the screen,
along with its corresponding number .
Here are the various options which this enables:
1) Dot A dot of the selected color is continuously dropped on
the screen while the left mouse button is depressed.
2) Line A continuous line is drawn while the button is down. Note that
the line cannot be drawn from right to left.. to encourage
'proper temporal flow'.
3) Ramp A line at this frequency is 'ramped' up to the selected color,
and then ramped down. The rate of ramping is controlled by the
phony prop gadget. The ramp is summed into the color on the
screen.
4) Thin A thin Rectangle is deposited, much as a dot is.
5) Blob A rather fat rectangle is deposited.
6) Harm A ramp in the suitable color and rate is summed into the screen
at harmonics determined by the current Frequency space settings.
The Pointer represents the eighth harmonic. Only writes forward,
and connects points continuously. This is is admittedly slower than
it could be. Harm can be used to create a harmonic framework for
subsequent alterations.
7) Avg Averages a few pixels before and after the pointer for this
frequency.
8) R-Dn Ramps down from the color under the pointer, using the rate from
the prop gadget.
9) R-Up Ramps up (backwards) from the pointer position, like ramp down.
10) Fill Fills this frequency with this color, until it hits a color
differing from that under the pointer.
11) Fil2 Tries to do a ramp-fill up to the selected color to the colors
at the edges. Doesn't work.
12) Inc Adds one to the spot under the pointer. GOes forward.
13) Dec Decrements this spot by one.
14) Xcld Excludes all but harmonics at this time period. The pointer
represents the eighth harmonic.
15) -Cut removes all colors quieter than the current one from the
sonogram. Nice for cleaning BPFs.
16) Inc0 Increments if there is a non-grey color under the pointer. For
making soft areas louder.
17) Dec0 Decrement, but not down to grey - just to green.
18) From sets the 'from' point for a Copy. You must click the left button.
19) To sets the 'to' spot for a copy.
20) Copy Copies 'pantograph'-style for those of you who remember Images,
based on the 'from area' going to the 'to' area.
21) .21. nothing
22) AMmd Puts some AM sin-waves on the screen as raw material.
23) CpFr Copies a frequency line to new Mouse's freq. Uses From.
24) CpTm Copies a time slot to new Mouse's slot. ditto.
25) Lck1 Puts a lock on every frequency. A harmonic lock crudely constrains
certain brushes from being positioned anywhere but on the nth line.
Allows stable harmonic timbres to be easily created for use
as loops.
26) Lck2 Locks even lines.
27) Lck4 Locks every 4th line.
28) Lck8 Locks every 8th line.
29) Vl00 restores original amplitude boost.
30) Vl01 doubles amplitude when Synthing the sample.
S)ynth zero's the sound area and then creates the waveform by additive
synthesis. You may cut the sound short by typing 'P' to go directly to
play mode. This may be slow at times, but it depends on the current
time and frequency settings. Technicians will note that I am using
fixed point arithmetic and a custom sin-lookup table to make this
calculation.
P) Play plays the sound area. Moving the mouse vertically changes the
Amiga 'period' (i.e. frequency.)
The following modes require some names and numbers from the keyboard.
R)eset resets the frequency and time spaces. It flips to the workbench
input console window. The first number is the
number of samples each pixel on the x-axis represents (1-256). The second
is the phase harmonic spacing of the frequency lines. In this system,
2pi=1024*256. Since there are 128 lines, aliasing begins at about
2048 so restrict yourself below this. An equivalent Hz value is
displayed (assuming a period which corresponds to a sample frequency of
15040 KHz). The last number is the frequency offset, which allows you to
position the screen away from frequncy zero and use closely spaced
frequencies which are nevertheless audible. The screen will flip back
after a second allowed for you to digest this info.
W)rite writes the sound area to an IFF sample file, for use by such programs
as may use IFF samples. A filename is prompted for, and a number of octaves
(which merely decimates the sample).Note this doesn't work too well,
since a) my octave chopper is very crude (it skips samples instead of
filtering) and b) I am confused by the 8Svx spec. If you stick with
1 Octave and use other software to fix the sample, it's OK.
B)andpass is the heterodyne filter. A name of a sound file is prompted for,
then a starting offset within the file (so you may skip to an interesting
section) and then the record 'k' is asked for, which is the record size
log to base 2 (i.e. 5=32, 10=1024 ...) under 7 is pretty speedy, but decent
usable work appears at about 9 or 10. This picks up information from
reset about frequency spacing. You may abort by hitting the close gadget.
This is not an FFT because it is more geared to the parametric nature of
the program. Again, it uses fixed point arithmetic.
I)nput and O)utput write the sonogram (or read) to a disk file. The Reset
parameters are also saved.
Q)uit gives you a chance to play Marble Madness.
Remember: Software kills! Use this tool wisely!
Actually, In lieu of money, which I hate, consider calling you local
educational institutes and show their music department this program.
I am after activism as a shareware concept. Money I don't need. And,
it won't buy you a single thing.. there are no guarantees implied in this
or any software. Neither can I say when or if the improved versions will
appear. I have left a few slots in the "comb" open for forth persons
to include their own functions. Someone, please put in a "BltBitMap" copy
function!
Those who wish to propogate this set of files are cautioned to make them
complete,(I.E. try to include the source.. there isn't very much
in the way of Forth examples out there also I like my Icons and Doc files)
and to add comments to the UploadDocs file so you can form
your own user group. You can get to me here:
J H H Lowengard
43 W 16th st. apt 2D
NYC 10011-6320
also via MIDI-NET and CIS:76625,2425