home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
No Fragments Archive 4: The Falcon Archive
/
nf_archive_four_v1.0.iso
/
ARCHIVE
/
WORK
/
MSX
/
VOXXDEMO.ZIP
/
VOXX_ENG.DOC
< prev
next >
Wrap
Text File
|
1995-09-09
|
33KB
|
628 lines
Voxx, The 16-Band Vocoder for ATARI Falcon 030
(c)1994 Hans Achim Mueller
Short User's Manual for Demo_Version.
INDEX
-----
1.- Introduction
2.- Installation & DEMO-Restrictions
3.- Description
4.- Operation
5.- Some Useful Hints
6.- Specifications
7.- Availability
1.- Introduction
This is the Demo-Version of a 16-Band Vocoder effect for the ATARI
Falcon030 computer. This program is Public Domain and free of charges.
It can be copied and distributed, if it is done entirely, without any
changes in the code or this text! Any distribution of mutations,
improvements, cracks etc. of this program without my written permission
is illegal!
*************************** IMPORTANT *********************************
I do not assume any responsability, in any form, for direct or indirect
damages, that may result from the use of this programm!
***********************************************************************
The german version of this text will follow soon (February).
2.- Installation
This Demoversion of Voxx should have the following files:
File Name Lenght
VOXXDEMO.PRG 46653
VOXXMENU.RSC 2454
VOXX_UPR.RSC 52006
VOXXENV0.RSC 65438
VOXXENV8.RSC 61982
VOXX_PAN.RSC 49128
VOXXMIX0.RSC 65438
VOXXMIX8.RSC 61982
VOXX_DOC.TXT (This text)
Be sure these files are the same length (where specified) in other case
you have a modified and therefore an ILLEGAL copy!
Voxx requires 512 KB of free memory and runs only on ATARI Falcon030 wih
a RESOLUTION of at least 640 * 480 and at least 16 COLORS! (VGA Monitor
or similar). If you do not have these requirements please write me a
postcard telling your configuration in order to check if it will be
available and when.
IMPORTANT: Before you start the program please read carefully this
documentation to avoid startup problems (there are some) that I am trying
to solve now. Furthermore a Vocoder is a complex effect that requires
some hints and knowledge to satisfy that what is expected from it!
2.1.- Restrictions in the DEMO-Version:
The purpose of a Demo-version is to let the user take an idea of what a
program can be or do. After deep thoughts about what should be in the
Demo-version of Voxx, I decided to release it at the conclusion of it's
developement. I could have released a demo much earlier, but it's screen
would not have been so impressive like it is now!. Actually the
Beta-version is ready and this demo is a slightly restricted version of
it. The restrictions are:
a.- The options marked with *** are disabled and these are: the Load and
Save File options, Program Store.
b.- The program changes (cycles) every 30 seconds to the next user
program. The user programs are uneditable presets (program Store
disabled) and some programs are intentionally missadjusted to
sound not so good. User adjustments on the actual settings are
possible at any time, but at least in 30 seconds will be overwritten
by an automatic selected program. If any accesory is selected and
the 30 seconds count is reached the accesory window will be
overdrawn by the new adjustements. This is intentionally and
harmless. Closing the accesory you get a clean Voxx-screen again.
To run, copy all files to a FOLDER and be sure the PATH is set to the
application when starting the program.
3.- Description
For all those who do not know what is a Vocoder and how it operates, or
those that not have a lot of experience with them, I will try to explain
it as simple as I can: Apparently the Vocoder is a Military residual
product that was developed to encode the speech in a way that it was
impossible to be understood by other listeners until they also had a
Vocoder with the same configuration. The function of a Vocoder is to
split the speech (FORMANT) or any sound into several Frequency-Bands
(eg. to analyze each band) and apply the amount of signal in each band
to another sound (CARRIER), that also is splitted in Frecuency-Bands. In
other words, the spectrum of the speech was used to FORM the sound of
the CARRIER. The most analog Vocoder is our own Vocal-System that is
composed of:
a.-Vocal chords: who produce the voice (Oscillators)
b.-Mouth: that forms the vocalization (Filtering and Noise)
The vocal chords produce a sound (voice) that only can vary the pitch
but not the sound character. The waveform of this sound is nearby a
Pulse-Wave eg. rich in Harmonics. The sound character is given by our
mouth formation (Vocalization). The form and volume of our mouth-cavity
(including tongue position and mouth aperture) produce a resonance
cavity that acts like a filter on the voice.
Any variation of our mouth is a variation in the filter parameters, so
we can say that we have a Time-Variable-Filter of more complex structure
than known of analog synthesizers. In addition the same airflow that
excites the vocal chords also can be/is used to create several noises
("s", "r", "t", etc) when it passes the throath, tongue and teeths,
which are added to the voice and also filtered.
These variations, slower than the voice's pitch, are variations in the
frequency-spectrum of our voice. If these spectrum-variations are
extracted and used to parametrize the spectrum of a sound, similar to
our voice, we get a synthesis of our voice. This synthesis will be as
good as the spectrum-analisys and reapplication to the sound are.
A well known example (at least for musicians) is the Jew's harp where
the instrument creates the sound (voice) and the mouth does the
vocalization.
A Vocoder is composed of following main sections: The analisys section
(FORMANT) that extracts the spectrum variations of the vocalization
source (speech, drums, etc), the voice section (CARRIER) where these
variations are applied to the target sound (strings, pulsewaves, noises
etc), something to interconnect both sections (routing MATRIX) and other
sections, for signal conditioning like GAIN, MIX, PAN and VU-Displays
etc. The names in uppercase are those I used in Voxx.
3.1.- Formant section:
The formant section is composed of 16 Band-Pass-Filters (BPF) for
different frequencys (like an Equalizer) covering the desired frequency
spectrum and Envelope Generators (EG's). Each BPF lets pass-through the
part of the input signal's spectrum that lies around the BPF's center-
frequency (Fc) attenuating the rest of the signal's spectrum
proportionally to it's "distance" to The BPF's Fc. In other words this
stage "slices" the Formant signal in frequency bands. The more bands
(BPF's) a vocoder has the more precise is the spectrum characteristic it
can analyze. Each band output ("slice") passes in the next stage to an
envelope generator to form a envelope for each band, proportional to the
formant signal's spectrum. As mentioned before, the vocalization is slow
in relation to the sound, threfore envelopes are used instead of the
direct BPF's output. The Attack/Decay time of The EG's is adjustable via
the ENV-Faders to create different effects of vocalization.
3.2.- Carrier section:
This section also has 16 BPF with the same Fc's as the formant section
and again here the the carrier signal is filtered and "sliced" into
spectrum components but this time the BPF's outputs go to
Value-Controlled-Amplifiers (identical to synthesizer VCA's but
controlled by digital Values, not Volts). The control value for these
amplifiers is supplied by the Formant Envelopes. The result is that each
Carrier-band output is modulated in amplitude by the amount of signal of
this band in the Formant signal. If all results are added (MIXed)
together the result is a "symbiosis" of the "speech" of the formant with
the "voice" of the carrier.
This is the principle that makes Talking Instruments talk! (or sing?)
3.3.- MATRIX:
In the beginning I mentioned the military purpose of a Vocoder to code
spoken messages and it was based on arrange the routing (Patching) of
formant envelopes to the carrier in an unnatural order to make the
speech/voice not understandable. Only with the reverse routing it would
be possible to reconstruct partially the original speech. I do not know
if this was usefull anytime for these purpose, but for musicians and the
movie-FX-sections (Greetings from Robot-Worlds) I am sure it is . This
routing is done in Voxx via the MATRIX an it is intended to route the
formant envelopes to the carrier amplifiers.
3.4.- Additional sections (at least for Voxx):
I/O-Section:
This section is for input and output signal gain adjust and level
display.
SPECTRUM & settings section:
This section displays the formant spectrum envelopes and allows some
global settings for envelope modes.
MIX/PAN section:
The resulting signal is adjustable in this section via the MIX faders
and the PAN knobs for each band similar to an equalizer.
4.- OPERATION:
This long description (I hope, I have reached something more than
confuse you) is followed now by the operation of Voxx.
4.1.- Connecting the Falcon030 :
IMPORTANT!
The Falcon030 audio inputs are designed for microphone signals and very
sensitive. If you connect them with a LINE-Output of instruments,
CD-players or other audio devices be carefull with the levels. In this
case the better way is to insert 200K Resistors in series with the
audio-source and the Falcon030 Inputs as in Fig. 1 to reduce Noise and
Humm. For more information about this, contact ATARI Corp. or your local
dealer.
Fig. 1
.......................................................................
: :
: Instrument Resistor Falcon030 Inputs :
: :
: Shielded Cable +------+ :
: Line-Out-Left ==================| 200K |=============- Left :
: +------+ :
: :
: Shielded Cable +------+ :
: Line-Out-Right ==================| 200K |=============- Right :
: +------+ :
: :
: :
:.....................................................................:
To connect the Falcon030 for use as Vocoder effect you need:
FORMANT sound source like a MICROPHONE, Tape deck, musical instrument,
etc, connected to the Left-Input of the Falcon030.
CARRIER sound source like SYNTHESIZER, elctric guitar, etc connected to
the Right-Input of the Falcon030.
A headphone, amplifier etc, connected to the Falcon030 stereo output.
NOTE: Uppercase devices are the most used in a Vocoder effect (see
chapter 5.)
4.2.- Voxx-Screen:
The following is a blockdiagramm of the Voxx Vocoder as it is arranged
in the screen:
------------------------------------------------------------------------
"Desk" "File" Menu Bar
------------------------------------------------------------------------
I/O Section Spectrum & settings Matrix
+------------+ +----------------------------+ +----------------------+
| #### #### | | ########################## | | F |
| #### #### | | ########################## | | E |
| #### #### | | ########################## | | D |
| #### #### | | ########################## | | : |
| #### #### | | ########################## | | : |
| F C L R | | | | 2 |
| O A O O | | P1 P2 P3 P4 P5 P6 P7 P8 | | 1 |
| R R U U | | | | 0 |
| M R T T | | FREEZE SLOW FAST STORE_PRG | | RST 0 1 2 .... D E F |
+------------+ +----------------------------+ +----------------------+
+-------------------------------------------------------------+ +------+
| E | | Voxx |
| N 16 ENV-Faders | | F |
| V | | U |
+-------------------------------------------------------------+ | T |
+-------------------------------------------------------------+ | U |
| PAN 16 PAN-Knobs | | R |
+-------------------------------------------------------------+ | E |
+-------------------------------------------------------------+ | |
| M | | U |
| I 16 MIX-Faders | | S |
| X | | E |
+-------------------------------------------------------------+ +------+
"#" = Displays
4.3.- Menu bar
The menu bar is composed of the titles "Desk" and "File"
4.3.1.- "Desk" is the menu for the options:
- About Voxx..: which shows the program's version and Users
Registration.
- The other options are the accesories your system has installed.
4.3.2.- "File" is the menu for Loading, Saving a file and Quit the program.
*** - Load File: Loads a file with the settings for 8 user programs
and the previous saved memory settings.
*** - Save File: Saves a user file with the 8 user programs as well
as the actual memory settings.
NOTE: The file extensions are predefined as "VXD" (VoxX Data)
- Quit: Exits the program.
4.4.- I/O Section
The I/O section is composed of 2 VU-Displays for Input and Output
levels, Left and Right each. The left input of the ATARI Falcon030 is
for the FORMANT (speech) and the right input for the CARRIER (voice
instrument). The output is the stereo effect (Left and Right). The 4
faders below are for adjustment of the input and output levels. To move
a fader, point it with the mouse and press the left button, holding it
(the arrow will change to a hand), now you can move the mouse up and
down to adjust the selected level. The slider will follow within his
limits while the left mouse button is pressed.
4.5.- Spectrum and settings section
The large display, shows the actual envelope value for each CARRIER-band
that is extracted from the Formant source, like a spectrum analyzer. The
frequncy for each band is displayed below. The program buttons allow the
selection of 8 user setting programs that are loaded at the start of the
program or via the "Load File" option in the Menu title "File". These
are user programs. Each of these programs holds the settings for all
adjustable parameters. Pressing a program button, the selected program
is copied to the edit memory . Each change in the adjustements is done
in the edit memory (those that are active). If you want to store these
settings for future use you must write them to one of the 8 user
programs (see STORE PRG) and then save them with he option "Save File"
in the menu title "File".
Of the 4 buttons at the bottom the 3 named FREEZE, ENV SLOW and ENV FAST
are for a global range setting of the formant envelope attack/deacy
velocity.
FREEZE sets all attack/decay velocities to zero regardless of the ENV
fader settings, freezing all actual envelope values until another
button, SLOW or FAST is pressed. This function is usefull to equalize
the CARRIER with a FORMANT's spectrum characteristic.
SLOW and FAST set two different envelope velocity ranges with a relation
1 to 10.
*** The STORE PRG button is to store the actual settings (in memory) in one
of the 8 available programs. To store a program press STORE PRG, all
the program buttons will then show pressed and then press the program
button where you wish to save the settings. The settings will be
recalled each time you press the selected program button.
4.6.- The MATRIX
The matrix is used to connect the FORMANT Envelopes to the CARRIER
amplifiers. For each band there is a FORMANT(source) button(green) and a
CARRIER(target) button (yellow) labeled from 0 to F, where the 0 stands
for the lowest frequency band and F for the highest. With this matrix it
is possible to assign or route the envelope of one determinated
frequency band to any of the CARRIER-band-amplifier. So you can assign a
low frequency amount in the FORMANT to modulate a high frequency band of
the CARRIER and vice versa. In a 1 to 1 routing the effect of a talking
instrument is the most notable while the shifting of the bands in both
directions by one or two (0 with 1, 1 with 2, ... E with F or
vice versa) adds the effect of pitch shifting (which is the logical
consequence of shifting the bands). Very scarammbled routings may result
in interesant and unespected effects of vocalization that surely will
not be understood as human speech, regardless of what source for the
FORMANT is used.
The RST button ReSTores the 1 to 1 routing of the MATRIX for comfort.
To operate in the matrix is very simple, then once the mouse enters the
routing field, it's pointer transforms in a cross that intersects with
both the FORMANT and CARRIER band buttons. If you want to connect
FORMANT band 5 to CARRIER band E place the cross in the position where
the green button "5" and the yellow button "E" are pointed by the
horizontal and the vertical lines respectively, then press the left
mouse button and the routing will be done. You can do this routing as
you like. A FORMANT source can be routed to one or more CARRIER targets
but a CARRIER target can only recive one source. This means that if a
source is routed to more than one target there will be one or more
sources without a respective target. Leaving the routing field returns
the mouse pointer to the usual arrow.
4.7.- ENV section
This section consists of 16 faders each one assigned to a frequency
band. According to the range selected with the ENV SLOW/FAST buttons it
is possible to adjust the attack/decay for each FORMANT envelope. The
lowest slider position is for slowest and the highest for fastest
attack/decay times. These sliders are moved by pressing the left mouse
button while it is positioned in one of the faders and keeping the
button pressed moving the mouse up and down (pointer is now a hand).
A speciality for this section as well as for the MIX section is that if
you move the mouse pointer over another fader of this section while the
button is pressed, then the new pointed fader becomes active leaving the
one before in the last position. With this method it is possible to
"draw" the slider positions with the mouse, moving it over the entire
fader section. In this way it is possible to slide all faders down or up
by entering in one fader, pressing the left mouse button and holding it,
to travel the mouse pointer accross the entire screen. While the mouse
button is pressed the only affected faders will be those of the section
where the mouse pointer was in the moment the left button was pressed.
4.8.- PAN section
Since the FORMANT (left input) and the CARRIER (right input) are used
both to form one signal, this section is for adjusting the stereo
panorama position for each modulated CARRIER band (result output), to
create a stereo effect.
It is provided with 16 knobs (potentiometer simulations), one for each
band. To move one of these knobs move the mouse pointer to it and press
the left mouse button and while holding it, move the pointer around the
knob. While the left button is pressed the knob mark will point in the
direction of the mouse pionter over the entire screen.
4.9.- MIX section
The result of each coded band now is ready and with this section it is
possible to adjust the gain for each band (equalize) to fit the desired
tone characteristic. The MIX faders are adjusted in the same way as the
ENV faders.
Additional information: When any adjusting element is being changed
(faders and knobs), each variation is inmediatly send to the DSP (and
not when the left mouse button is released). You will hear the changes
in realtime (as fast as realtime is possible). This has a disadvantage:
The faders are a little slower than those that are commonly used to set
parameters (here the information is actualized after the change/movement
is completed by releasing the mouse button. I think that for a musical
effect, realtime is a more important factor than fast slider animation.
Recalling a program also involves sending all parameters to The DSP.
5.- Some Useful Hints
Experience has shown that the use of a vocoder could be frustrating for
some users due to bad understanding of it's operation and what the user
wants to do with it. My shortest explanation of a vocoder I ever had
given to those who asked me "what is a vocoder?", was:
"it is like a good equalizer acting over a sound (CARRIER) whose
gain controls are fastly moved by a device that extracts the
movement information from the frequency spectrum of another
sound or speech (FORMANT)."
To obtain a good vocoder effect it is important to know what kind of
effect is expected and what FORMANT and CARRIER sound sources are used.
The most applications use speech as a source for the FORMANT and
synthesizer-sounds for the CARRIER.
The FORMANT sources like speech should be clear and cover the most part
of the spectrum (use the display). A thin voice like through a phone or
a smooth one (like mine) are very poor in the spectrum's "Skyline". A
very good speech source is that of the News Speaker in the FM/UKW-Radio
(They have all the equipment to fill the spectrum with speech). I
hearthly recommend this test! If using your own voice try not to sing or
vary the pitch according to the music (else your spectrum moves with or
against the spectrum of the carrier creating unregular highs and lows in
level). Remember that the most part of the voice (sound) of the FORMANT
is discarded, depending on the envelope settings, and only the
vocalization is extracted. Drums or other percussions are also used as
formant to create rythmic vocalizations of an instrument. Here the
limits and settings are unlimited and depend of your imagination.
CARRIER sources should be rich in harmonics and these are all those
clear and sharp sounds like Strings, Brass and all those sounds whose
waveform is based on sawtooth and pulses. Square, triangle and sine
waveform based sounds (smooth ones) like Flutes, Whistles and some
organs aren't good ones. Their harmonics are very small in relation
with the fundamental which will dominate the spectrum (a true sine has
no harmonics) and the resulting sound will be only in the bands near the
fundamental's frequency band. The CARRIER's pitch is the pitch for the
resulting effect, here is where the melody, chords or whatever should be
played.
I will try to list the effects and the best settings as well as sources
for each one:
a) Talking (singing) instruments, Choirs, Backgrounds, Harmonization:
FORMANT : Human Speech
CARRIER : Strings, Brass, Sawtoths, Pulses playing the melody or
accompainement chords.
Settings: Envelope SLOW
ENV Faders: upper positions
MATRIX: 1 to 1 or shifted by one or two
or
Envelope FAST
ENV Faders: lowest positions (in upper positions FORMANT's
pitch adds to the result)
b) Robots:
FORMANT : Human Speech
CARRIER : Strings, Brass, Pulses, Sawtoths, with constant pitch
(no melody) or steady chords.
Settings: Like a)
c) Solist Singer
FORMANT : Human Speech
CARRIER : Strings, Brass, Pulses, Sawtoths, with monophonic
(one Finger) melody (synthesizer options like DUAL,
UNISON, FAT, PORTAMENTO etc have very good results)
Settings: Like a)
d) Rythmic Chords and sounds
FORMANT : Drums, percussions
CARRIER : Strings, Brass, Pulses, Sawtoths, etc.
Settings: All Envelope settings (except FREEZE)
e) Warm instrument contouring (variable filtering)
FORMANT : No limits
CARRIER : No limits
Settings: All Envelope settings (except FREEZE)
e) Equalizer (fixed filtering):
FORMANT : Blows in the micrphone Noise or any sound
CARRIER : No limits
Settings: First envelope SLOW or FAST.
When the spectrum display reaches a desired
characteristic press FREEZE
or
using Noise or blowing the micro and pressing
FREEZE when spectrum display is equally leveled.
Use the MIX faders to equalize the sound.
6.- SPECIFICATIONS
The following are the main Voxx specifications:
Number of Bands : 16 FORMANT Filters and 16 CARRIER Filters
Filter Types : Digital-IIR, 4-Pole Band-Pass
Center Frequencys : 125, 160, 210, 275, 360, 460, 600, 780, 1020,
1325, 1725, 2250, 2900, 3800, 5000 and 6400 Hz.
Sampling Rate : 20.77 kHz, 16 Bit Stereo
DSP Usage : 100%
Dimensions(Pixels): 630 x 460 x 1 Pixels (W x H x D)
Memory Consumption: aprox. 512 kB
7.- AVAILABILITY of Voxx Version 1.00
Voxx will be available in it's version 1.00 in March 1994!
Voxx will consist of a Diskette with the program, a printed
user's manual similar to this one, in German or English.
Support and Updating: I will try to support any problems that may appear
in the use of Voxx only to registered users, and to Update this
program. The Update prices for registered users will only be those
for material + handling.
In the Future: Depending on Voxx's acceptance I am planning to MIDIfy
Voxx, and for experienced users, add a Filter Editor to change the, BPF
parameters like Resonance and Center Frequency. Any written sugestions
are welcome and if possible will be considered!
Coming Next: Pterodaktilus The Synthesizer(s) for Falcon030
Problems and errors with the Demo-Version:
As far as I have tested and know, this demo runs without any notable
error. There may be some problem when starting Voxx: The Spectrum
Display will overdrive, at the output may be only noise and any attempt
to reduce the Levels will be without effect. Solution: Start again
and/or Cold Reset (Set amplifier inputs and volume low!). I am trying to
solve this problem. If any error or strange effect occur please let me
know! I will try to fix it. I have programmed and use Voxx myself with
my Falcon030, as it comes from factory, without changes, additions or
hardware upgrades with TOS 4.02 and 4.04.
If VOXX fails to start, turn off the computer and after 5 seconds turn
it on again. There should not be any MIDI signal active, like MIDI-Clock
or something similar, during the computer's start-up.
Multitos and Voxx: I recommend to use Voxx in the normal TOS mode
(Single Task). Due to the intense communication between Voxx and the
DSP, I doubt if there is time enough left for "Multitosing".
Prices will be:
Germany: DM 195,- (+ Porto und Verpackung, z.Zt. nur V-Scheck)
Rest of Europe: DM 195,- (+ Postage & Packaging, Eurocheque Only)
Contact to:
Hans Achim Mueller
Spielmannsklinge 8
D-74889 Sinsheim
GERMANY
Phone: +49-7261-61522
Distributor inquiries are welcome!
April, 1994