This text documents GNU/Linux Audio Mechanics (GLAME) Version 2.0.1 (2 November 2001), a capable and easily extensible free sound editor. It describes the various frontends from a user's perspective.
More recent versions of this document as well as additional information about GLAME might be available via the project's homepage at http://glame.sourceforge.net.
This document is also available as a gzipped PostScript file: http://glame.sourceforge.net/manual.ps.gz
Copyright © 2000, 2001 Richard Günther, Daniel Kobras, Alexander Ehlert, Johannes Hirche. See Copying, for details.
==How to handle the various GLAME frontends==
==References==
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the sections entitled “Copying” and “GNU General Public License” are included exactly as in the original, and provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation.
Moi Mr. Newcomer, hi Mrs. Impatient!
Welcome to GLAME, the GNU/Linux Audio Mechanics. This is the Quick Start Guide for all those who loathe reading lengthy documentation. So I won't fuzz with details but try to get you going on basic tasks as fast as possible.
GLAME comes in two flavours, the graphical interface glame and the console frontend called cglame. You'll have to be able to grok Scheme in order to deal with cglame. It's extremely cool and powerful but it's probably not what you are looking for when reading a quick start guide. So let's talk about the graphical interface in the following, and send those Schemers off to poke through the proper documentation.
So you recorded this charming little chanson called Angelina, but she ditched you the other day and now dates Ron instead? No need to keep waiting until another Angelina passes your way. GLAME will help you changing your Angelina tune into a hymn on Heather in an instant. (Admit it, you've been after Heather for ages!)
Fire up glame, ignore the crappy splash screen, and what you'll see is the so-called Swapfile GUI. Don't waste your time pondering about the name, it's simply a view of all audio tracks that GLAME knows about. Tracks are kept in a hierarchy of projects and further groups of tracks. To make your sweet angelina.wav known to GLAME, first select New Project from the Project menu. A new entry appears; name it No More Angelina. Then click the right mouse button on the new entry, and a pop-up menu does what its name suggests: it pops up right in front of you. Choose the entry called Import, and select your angelina.wav. It's a stereo file, of course. Therefore the Swapfile GUI now shows two entries within your Angelina project, one for each track. Now you're all set to wipe poor Angelina if not from your life, then at least from your art.
Once again, click on the No More Angelina entry in the Swapfile GUI, press the right mouse button, and select Edit from the pop-up menu. What appears now is the so-called Waveedit GUI, a window containing a graphical view of the audio tracks in your project. (Of course you are tempted now to wipe Angelina from one track only. Well, you could do that by selecting Edit on a single track rather than the whole project. You could even edit one track in multiple windows at the same time. But this is not the road we want to go down now. This Angelina-bitch ditched you, remember? Let's wipe her from your song completely.)
The Waveedit GUI is mostly driven from a pop-up menu attached to the right mouse button. Have a guess what Play All might do? Well, try it out. If you can't hear a single note, check your mixer settings with an external mixer program, and if all seems to be right, go back to the Settings menu in the Swapfile GUI and check your Audio I/O preferences. Working now? Good. Want to know how zoom in and out work? Ah, no, you figured that out yourself. Now you have to identify the places in the song where your voice trembles Angelina. To make it easier for you, during playback a vertical line will mark the region currently playing. Of course you don't have to keep playing the song as a whole over and over. There is Play Selection after all. What's a selection? That's a highlighted region in the editing window. Press the left mouse button, drag the mouse, release the mouse button again, and you'll get the trick. A lot of things can be done with selections from the pop-up menu. They can for example be played, zoomed into, cut, copied, and deleted. The latter is just what we need now. Select each of the passages enchanting Angelina, delete them, and there she goes.
So what about Heather? We'll be with her in an instant, but we have to learn a bit about recording first.
Back we are at the Swapfile GUI. Let's add a new project, and name it Oh Heather. That's where you're going to record into. Well, not quite. You can't record into a project, of course, you can only record into tracks. So you need to pull a track out of thin air, two of them actually, as you're going to record stereo. The right mouse button again acts as your magic wand. It will present you a menu item Add stereo wave, and that's exactly what you need now. Add the two empty tracks, select your Heather project, and open the Waveedit GUI on it, using the Edit entry in the pop-up menu.
The editing window doesn't look too interesting at the moment but that's what you'd expect from an empty file. It'll change soon, so go launch your favourite mixer application, and prepare your system as well as yourself for recording. Once both of you feel in shape, come back to the editing window. Record at marker is the preferred item in the pop-up menu now. A panel will appear containing the four buttons Record, Pause, Stop, and Cancel. Hitting the first one will start the recording. Finding out about the meaning of the others is left as an exercise to the reader. Don't think too hard about it, though, as now is the time to give a c-sharp Heather in your best tremolo ever. You should've figured out to hit the Stop button by the time you're done.
The rest is easy. In the Heather editing window, mark a selection only containing you singing the name but none of the noise before and after. Pop-up the menu with the right mouse button and hit Copy. Then move over to the Angelina editing window, which should still be open. A click with the left mouse button will mark a position in the song, and selecting Paste from the pop-up menu will insert your Heather at this position. Where to insert the section is entirely up to your artistic talent.
Not fancy enough to woo Heather, you feel? Read on.
To brush up a selection from the Waveedit GUI, you can apply a single filter on it. Apply Filter from the pop-up menu gets you going. But you can do even better. Select Apply Custom and watch the Filternetwork Editor come up. Here, you can not only apply a single filter, but a whole collection of filters that interact with each other.
Think of the filter network as a factory of waves. It starts out on one or more sources of sound waves, mangles the sound, and finally sends it off to one or several consumers. There is already a source in the network, called swapfile_in, and a consumer called swapfile_out. Don't mess with them, as they were already set up by the Waveedit GUI to work on the selection you marked. It is your task now to build the individual steps in the factory itself. That is, what should be done to your sound, and in which order. To this end, you can insert filters into the network. They are your machines. Just hit the right mouse button, and select one of the entries. A small icon will appear depicting your new filter. Each filter has its inputs to the left, and its outputs to the right. To connect two filters, you draw a line from the output of the first to the input of the second, dragging the mouse with the left button pressed down. Some filters do not possess both inputs and outputs. You'll note this when one side of their icons is greyed out. Inputs and output in general are not limited to a single connection. A filter will accept as many connections as it can take, and reject any further.
For most filters, you want to tune their parameters, or their output will probably not come close to what you intended. Press the right mouse button on top of the filter image, and select the Properties entry. A new window will show up, where you can tune the parameters to your liking. Once all parameters are set, and all filters are connected, hit execute on the icon bar on top. When processing is finished, go to the Waveedit GUI, and watch your modified Heather tracks.
What's left to do? Back to the Swapfile GUI. It's about time to finally rename the No More Angelina project to Hymn to Heather. How? Go figure. You really should have gotten a good feeling of how GLAME works by now. Next, get the pop-up menu up on Hymn to Heather. Select Export..., and save your song as, say, heather.wav. As you may have guessed, by default the suffix determines the type of file Hymn to Heather is stored as. For some additional control, you can explicitly specify the desired file type and sample format via several rather obvious buttons and menus. Want details on that one? Hey, enough is enough! Go read the proper docs if you're that interested. Or try on of the Help entries that will present you a context sensitive entry from the manual.
Well done, you may call yourself a GLAMEr now. A Lamer even, if you don't get up immediately and present your new song to Heather. Off you go. Good luck!
Back with us again? Oh rats, Heather finally broke your heart and left you? Cheer up, there's Bozo "The Dragster"'s ultimate party next weekend, and Bozo thinks you'll fit perfect with some of his best friends. Wonder how to break the ice? Don't worry. A microphone and a box running GLAME, that's all you'll need to hook them up.
Let's get the setup straight first. In the preferences dialog... Pardon me? How to get to the preferences? Gee, guess you need a couple of Angelinas and Heathers still, until you're ready for Bozo. Found it now? Fine. In the preferences dialog, there's a little fine-tuning to do on Audio I/O for a spiffy full-duplex setup, meaning that we're going to play and record at the same time. Select OSS and configure /dev/dsp for input, and /dev/dsp1 for output. This'll work if your sound card is fancy enough to offer more than one DSP device. Otherwise, lend your neighbour's for the day. Your smartass neighbour is likely to mention something about ALSA being so much better. "The day ALSA can be considered stable is unlikely to be in the same century that Bozo holds parties," is a good answer. Learn it by heart. The curious of course can try whether there's a GLAME plugin compatible to the ALSA version du jour. If you're lucky, plughw:0,0 and plughw:1,0 might be the correct settings for input and output. Probably they aren't.
Now for some real fun. From the Swapfile GUI, you can launch the Filternetwork Editor. New Filternetwork is the menu entry we're talking about. You are already familiar with the window that pops up–remember the wave factory? This time, however, the factory is completely empty. Two filters, audio_in and audio_out, will make it work just-in-time, though. For kicks, add a flanger filter as well, and connect it to both audio_in and audio_out.

This setup is working but seriously lacking coolness. Let's fiddle with some parameters. Right-click on the flanger icon and select Properties. Set the effect depth to 50ms, the detune range to 25ms, lfo speed to 8Hz, dry/wet balance to 0.0 and the LFO Type to Ramp Up.

Once you click on Execute in the editor window, start talking into the microphone. Voila, you're talking like Mickey Mouse! Now stop the network by clicking on the Execute button again that has in the meantime morphed into Stop. Change the LFO Type to Ramp Down and execute the network again. Coolness factor rising, eh!? Time to fire up your favourite mailer and send a message to mag@glame.de, telling him what cool a frood he is. Some of the parameters you can even alter while the network is running. Just go on from here and play around. Once you've found the Bozo killer setting, the Save button is a good one to try next.
Now for a more sophisticated network: A sampler that will record your voice and repeat it in an endless loop. Bozo's dudes are gonna love it, honest. First, wire up the basic network from audio_in, mix, one2n, and audio_out. So far it's just a slightly complicated way of sending all input to the output unmodified. The network gets a lot more interesting when we add a feedback loop. Add a buffer filter, a delay filter, and connect them sort of backwards. That is, draw a second connection from one2n's output to the input of buffer. Connect buffer to delay, and finally hook up delay's output to the input of mix.

Still a little tuning to do. There's a little blob on the connecting line between delay and mix. Right-click on it, and select Destination Properties in the menu that pops up. Set the gain to 1.9. Next, open the properties dialog for the buffer filter and set the time parameter to 1 second. In the delay filter's properties, set the delay time to 500ms. Turn down your amp really low, execute the network and talk something intelligent like "Boh" into your microphone. If a screeching sound hurts your ears, the gain parameter probably is to high. Click on the little blob again and tune it until you're satisfied. If you set it to smaller values, your voice will slowly fade out, if it's to high it will just get louder and louder until your speakers freak out. Obviously, an endlessly repeating "Boh" isn't all that stunning. "Zoh" sounds like a good second line. Talk into the microphone, and wow, here's our vocal percussionist. The party is your's, and hey, it's time to go now. Send our best to Bozo and the drags. Have fun!
Nonsurprisingly, GLAME's graphical frontend is called glame. Usually, it will be invoked without any arguments. An optional file name may be given though, indicating an alternative location of GLAME's internal swapfile. See The Main Window, for details.
A note to the DIY folks: When running glame straight from its source
tree without prior installation, glame/src/ has to be your current
working directory. Otherwise, glame won't be able to find its plugins.
The graphical frontend consists of three parts. The main window, also called
the Swapfile GUI, is the only one active right at the beginning. The wave
editor and the filternetwork editor can be activated from there. Controlling
glame is supposed to be rather intuitive. Should you ever feel lost,
just try pressing the right mouse button, and a context sensitive menu will pop
up and hopefully present you with the option you were looking for. If you are
looking for a list of keybindings for the current window try pressing the
F1 key. The context sensitivity buzzword also applies to GLAME's online
help. Just push the button and hope for your preferred gnome help browser
being able to display texinfo docs. (The standard gnome-help is.)
On startup, glame will present you with an application window in well-known GNOME design that contains a tree view of the so-called swapfile currently in use. Representations of all the sound tracks you want to edit will be stored here, so it's certainly a wise idea to put the swapfile on a partition with plenty of free space. By default, the swapfile resides in ~/.glameswap, but you can configure its location in the preferences window available from the Settings menu. Note that you need to restart glame for the change to become active.
Within the swapfile, individual audio tracks are combined to projects. You can create new projects using the entry New Project in the Project menu. This will insert a new item into the tree view of the swapfile and pop up a field where you can edit the project's name. Double-clicking on an item allows you to change the name later as well.
Now you're all set to start importing files into your new project, or to subdivide it further into groups. A context sensitive menu offering operations on groups or items respectively pops up when you press the right mouse button. The first item in the menu always hints at the name of the group or track you are applying the operation to. Those are your options:
Editw key, too.
Group properties...DeleteAdd groupAdd clipboardAdd mono trackAdd stereo trackLink selectedCopy selectedMerge with parentFlattenApply operationImport...Export...Editw key, too.
Track properties...DeleteGroupApply operationExport...The following items are present in the Project menu:
New ProjectEdit File...Record Wave...Import...Empty [deleted][deleted] folder. This operation cannot
be undone. Deleted elements are usually just moved to the [deleted]
folder so you can undo deletes by just moving items back. Emptying the
[deleted] folder can also be done by deleting the [deleted]
folder itself.
Show consoleShow console, you get access to the
powerful backend of glame that can be controlled via a scheme scripting
language. Or just watch the error logs that pop up here as well.
SyncQuitThese are the items of the Filternetwork menu:
New FilternetworkOpen...Load PluginLoad Plugin
menu item from the filternetwork menu. This is useful for instance to use
external LADSPA plugins or custom filternetworks you didn't put into
the default GLAME search directory.
From the Settings menu you can invoke the preferences window, from
the Help menu you can invoke a gnome help browser with this
documentation, or jump directly to the quick start guide.
The wave editor pops up when the Edit function is applied to either a
group or a single item of the swapfile tree.
Editing is done on all items of a particular group
at once. Functions to edit and explore the current items can be reached via
the right mouse button or the toolbar. The wave editor is also reached
through the Edit File menu entry or the w accelerator.
You can find keybindings listed by pressing the F1 key in any
wave edit window.
Simple editing can be done using the ordinary Cut, Copy,
Paste, Delete, Undo and Redo operations
inside the Edit submenu, that work on the current selection in
the active wave widget. You can cut and paste between different wave
widgets, if the numbers of channels match. When you operate on multiple
views of the same wave item at once, they will be kept in sync
automatically. Keybindings for Cut, Copy, Paste,
Delete, Undo and Redo are Ctrl-x, Ctrl-c,
Ctrl-v, Ctrl-k, Ctrl-z and Ctrl-r.
You can export the current selection by choosing the Export selection
menu entry from the Edit submenu or by pressing the Ctrl-s
keyboard shortcut.
To control the view use the View submenu which contains the
items Zoom to selection, Zoom in, Zoom out,
View all and Goto marker. The zoom in, zoom out and
view all functionalities can also be reached from the appropriate
toolbar entries.
To specify the current selection simply use the mouse and drag it with
the left mouse-button pressed. Alternatively you can use the Select none
or Select all menu items from the Select submenu or the
corresponding buttons in the toolbar to remove
the actual selection or select the whole wave. Pressing shift and the
left mouse-button selects everything starting from the marker position (which
you can set using the left mouse-button) to the current position. The selection
and the marker position can be changed with dragging the marker or the
selections left or right edge (the cursor will change if you move over them).
As usual, the Close and Help menu entries close the window, or
bring up the gnome help browser with this documentation, respectively. Those
items can also be reached from the toolbar.
Using the Play all and Play selection commands the whole wave or
the selected part will be sent to the default audio output device. Using the
Record at marker and Record into selection commands you can
sample from the default audio input device either starting at the marker
position and until you press the STOP button, or just inside the
selection. Using the play button from the toolbar will start playing either the
current selection or from the marker position if no selection is active and
will advance it until you either press the stop button (which will appear at
the place of the play button after start) or the wave has ended. Playing can be
reached through the Space keyboard shortcut which starts playing
from the current marker position. Using Ctrl-Space you can play the
current selection or the whole file, if nothing is selected. Pressing
Shift-Space will loop the current selection or the whole wave.
The Apply operation submenu allows you to apply operations like
normalize or fade to the current selection. Some operations pop up windows
for additional arguments.
The Apply filter submenu allows you to apply a pre-existing
filter to the active selection. Inside the apply window the list of
available parameters for the filter will appear which you may edit. With
the preview button you can figure out what the result after applying the
filter will sound like. You can abort the preview by pressing the
preview button again. Press the apply button if you are satisfied with
the setup. Press the cancel button if you don't want to modify the wave.
Alternatively, you can pop up the filternetwork editor
see The Filternetwork Editor, where you can construct a custom
filter or use Apply custom... which creates a filternetwork
framework containing necessary inputs and outputs specified by the
current selection.
A shortcut to the export functionality is embedded in the toolbar
as a Save item. This is especially useful for waveedits
opened through the Edit File menu entry as this one does not
show the wave in the swapfile tree.
The filternetwork editor is opened when you choose one of the custom
functions in the wave editor, or the item New Filternetwork in
the Filternetwork menu of the main window. The filternetwork editor
comprises of a tool bar at the top of the window to execute, save and apply
other functions, and a main canvas for connecting and adding
new nodes to the network. A preexisting network can be edited by opening
it from the Open... item in the Filternetwork menu of the
main window.
All functionality in the editing window is controlled via context sensitive menus bound to the right mouse button or configurable shortcuts.
Pressing the right mouse-button over the canvas background will pop up a menu
containing the list of available plugins. Plugins are bundled into categories
to speed up finding the desired item. Selecting one will add a node cloned
from the corresponding plugin to the network. A special item, Paste
selected at the bottom of the menu will paste the last copied node collection
at the current location. When a new node is added, its icon appears on the
editing canvas. It shows its input ports (if available) on the left, and
output ports on the right. If no ports of a type are available, the
corresponding side bar appears gray.
To connect two plugins, click on the output port using the left mouse button, and drag the appearing pipe to the desired input port. If a connection is possible, a pipe connection will be drawn. To manipulate per-pipe parameters of the connected nodes, a context menu is attached to the small black ball placed in the middle of the pipe.
Clicking with the left mouse button on a item will highlight it with a light blue frame, thus marking it as selected. Alternatively, nodes can be selected by clicking with the left mouse button into empty space in the editor, holding it down and dragging the appearing box over the desired nodes in well known file-manager fashion. You can alter selections by holding down the shift or control modifier keys. Pressing one of the modifier keys while selecting will add the selected icon to the current selection.
Selections may be manipulated in a number of fashions. A selection can be
collapsed by either choosing the corresponding context menu in the node menu or
the c shortcut. Once a selection is collapsed, a new node appears in
place of it. Connections to nodes in the selection to outside nodes are saved
and ports appear on the collapsed node. Collapsed selections are real new
subnets and may be saved and opened down, and just as any node representing a
network expanded in-place using the corresponding menu entry or the e
shortcut.
Finally, if you hover over an icon or port or the circle contained in a pipe for a little while, the current parameter settings are shown, and the node is raised to the top. The hovering delay can be adjusted in the preferences window. The same applies for the connection between two nodes.
Pressing the right mouse button over a network node will pop up a menu with the following items:
PropertiesRedirect parameterProperties dialog.
DeleteCopy selectedPaste selection menu entry from the node addition menu.
Colla