kg19+@andrew.cmu.edu (Kurt A. Geisel) (03/11/90)
Bars & Pipes : A User's Report Since I have seen little coverage in the various music and computer magazines I subcribe to of the remarkable new Bars & Pipes music sequencing package from Blue Ribbon Bakery, I decided to write a brief report of my experience with the program, at least as far as I have delved into it in the first week of use. Bars & Pipes, which is available strictly for the Amiga at the moment, is more than just a sequencer. It was written by Todor Fay, the same author of a previous Amiga product, SoundScape. It was cowritten by Melissa Jordan Grey, who appears to have music credentials and was involved more with the design of the product than the programming. Those of you familiar with SoundScape (I "upgraded" from SoundScape myself) will recognize Fay's philosophy prevalent in Bars & Pipes, and hence its uniqueness to the Amiga architecture. Like SoundScape, Bars & Pipes processes MIDI events through independent modules, which are actually seperate tasks running simultaneously in the Amgia's multitasking environment. The MIDI events pass between modules through a form of interprocess communication, which the user sees as "connections" and is free to route or "patch" any MIDI processing setup he or she desires. Unlike SoundScape, Bars & Pipes has a much slicker and intuitive (and musically useful) interface. Bars & Pipes' MIDI event processors are called Tools and are represented as icons in a toolbox. These are the standalone MIDI event processors. All Tools don't have to be loaded into the toolbox at once. The common Tools are automatically in the toolbox upon startup, but additonal ones can be loaded later and presumably the set of tools can be expanded in the future. The sequencer section of the program is represented by a scrollable list of tracks. An infinite number of tracks, memory allowing, are available. A descriptive name and a brief notation can be given to each track. Each track in the list is represented by a strip which displays a "zoomed out" view of the recorded pattern in that track (like a mini player piano roll). The entire track list can be scrolled forward and backward in time by a scroll bar on the bottom. Each track is preceded and followed by a "Pipeline", representing a channel through which MIDI events flow. Pipelines begin at the far left of the track's event display, flow into the sequencer, and flow out the right side of the sequencer. Tool icons from the toolbox can be dragged into any order in the piplines. Tools which are connected before the sequencer process events before they go into the sequencer. Hence, the processing done by the tools placed here are permanently recorded. Tools can also be placed after the sequencer, where processing occurs during play back and does not permanently effect what is recorded. Some tools can branch output into another track and there is a "Feedback" tool which will place the final output of one track into the input of another track. Here is a complete list of tools which came with my package: Accompany B - Automatic accompaniament. This is essentially a software Fun Machine! It's neat, especially when you can assign the synth voices of your liking and string any number of them together. Articulator - Modifies duration (stacatto/legato) of notes passing through it. CounterPoint - Automatically generates first series counterpoint with random variations. (I had the most fun with this.) Delay - Delays MIDI events. Doctor of Velocity - Forces all velocities to a preset point. Echo - Provide echoes with any number of repeats, falling velocities with various slopes. Elbow - Forces all events into neighboring pipeline. Feedback In - The "output" of the Feedback device, which allows you to feed the final output of one track into another. Feedback Out - The "input" of the Feedback device. Harmony Generator - Makes harmonies from a single note. Inverter - Squeezes all notes into a preset range. Keyboard splitter - Only one split point, but you can keep stringing them together. Merge In - Takes output which has been branched off another pipeline. MIDI In - Main MIDI intput. This is the default tool as the first input of all pipelines. You can filter events such as controller, program change, etc. MIDI Out - Main MIDI output. Modulator - Shifts notes by a specified amount. Note Filter - Allows only notes from a preset range. Note Flipper - Flips note about any axis. Phrase Shaper - Applies dynamic curves to incoming velocities. Quantize - One of the best quantizers I've ever used. Reverser - Reverses MIDI events in time. Sforzando - Creates Sforzando curves through Poly After-Touch. Subdivider - Splits notes into many notes by a preset fraction. Transpose - A true transposer. Triad - Plays triad chords from single notes. Unquantize - Introduces random variations to timed events. As you may have noticed, some of these tools would require more musical knowledge than just a sequence. More on that in a moment. Not all tools can be placed in the pre-production side (before sequencer), because they depend on historic knowledge (e.g. the Reverser obviously can't reverse events which haven't occured yet). In addition to being a supposedly open architecture (I've already inquired about the availability of a developer's kit), you can create MacroTools consisting of special combinations of existing tools. In fact, some of the tools provided are MacroTools (e.g. Triad simply consists of two Transposers- you can easily make a chord player of any type you want.) In addition to the Tools, another form of external processing program is the Accessory. Accessories seem to be more on the level of an application, but they still have access to Bars & Pipes internal data. The Accessories currently included are MUFFY, a standard MIDIFile converter, and Follow the Leader, which prints lead sheets (more on that in a moment.) Now, I mentioned that some of the tools require more musical knowledge than just a sequence. Here is one of Bars & Pipes' main strengths that make it much more than a sequencer: it supports quite a bit of "musical parameters." Although you don't need to define them for just plain sequencing, here are some of the musical parameters which Bars & Pipes can include in a sequence: Time Signature Key Scale Mode Dynamics Rhythm Chords Lyrics You can first help yourself tremendously by defining a Time Signature, at a complete minimum. With that, you get: - Measure and beat lines in editing and the mini piano roll displays. - Metronome is correct. - Editing and song pointer operations are easily locked to measures. Things just take off from there. The Key, Scale, and Mode parameters allow things such as CounterPoint and Harmony Generator to behave intelligently. You can call up a grayed display in your music editor to show you the scale you are using. You can also snap edited notes to the scale. Dynamic curves will direct the loudness of various auto accompaniaments as well as allow you to automatically shape velocities. Rhythms can also be shadowed in the note editor, and will help the Accompany B use an intelligent Rhythm. Chords are handy for printing out lead sheats as well as generating harmonies. Lyrics can be entered, and various phrases can be locked to certain measures. The Follow the Leader accesory uses Chord and Lyric information to print out a lead sheet. Every parameter has a large list of preset options available, but you can also create your own. (There are plenty of Rhythms and some Modes I've never even heard of, so I haven't had to make my own yet.) Every parameter can change dynamically throughout the piece. Some (such as key) can be different for every track. Now that we have the basic architecture out of the way, I will tell you how I feel about this package. Sequencing As just a sequencer, this is a damn good one. I've looked at Music-X and it is SLICK, but this is no less slick as a sequencer. With 192 PPQ resolution and a remarkably steady clock, it functions very well when recording. I've found it records much better than SoundScape and I have yet to choke it. Even with a large number of tools in the Pipeline, it doesn't seem slowed down. The "zoomed out" event strips (mini piano rolls - damn I wish they named those things) are extremely handy. Scrolling your way around the piece with the scroll bar is quite speedy- the program is very smart about when to update graphics and is quite speedy in doing so, especially considering there is some eight tracks on screen at once. I've also had great success with syncing with my drum machine, no insignificant feat since it is an aging Oberheim DX with MIDI Clock support only- no Song Position pointer. In addition to being able to send MIDI Clocks/Time Code, B&P can be driven by external Clocks/Time Code. B&P has extensive SMPTE support, but doesn't currently support a hardware SMPTE reader/writer. In fact, I am not aware of any Amiga SMPTE hardware, but then I haven't looked. If you have a box which converts SMPTE to MIDI Time Code, B&P has full support of the various SMPTE frame speeds. You can pop up a SMPTE time display at any time. I should also mention a couple of other video production features I haven't really played with yet. You can create sound effects tracks which are on absolute time. Then, no matter what time signatures/tempo changes the music is following, sound effect events will come up at an absolute time. In addition to support embedded tempo changes, B&P has an extensive Tempo Map facility which provide various curves and speeds for tempo changes and allows you to pace your music with SMPTE time events. A feature in B&P I really love is the Flag Set. The main track display contains many special flags which can be dragged and left anywhere. In addition to Song Pointer, you have the Punch In/Punch Out flags, two memory flags, Loop Flags (see below), and Edit Flags (which define ranges for edit operations). Flags can be dragged individually or entered in pure number format in a special window (in measures/beats/clocks). Flags can lock to beat, measure, or be completely free. In addition to the standard Punch In/Punch Out facility, B&P has a way-cool recording feature called Looping. After setting the Loop flags around the section you want to record, the sequencer will give you a 4 bar lead-in and then allow you to repeatedly record the section eight times. After you have made eight attempts, you get a window with eight numbered buttons. You can keep pressing the buttons in any order to hear the various versions of your recordings. Then, you can either trash them all, or select one, which will be placed in the sequence. I've used it many times already, and I love it! Editing Editing support in Bars & Pipes is very good. Editing operations can occur at both the global and the track level. In both cases, Edit Flags define the range over which the editing operation will take effect. Track editing has its own blown-up display. You have your choice of a normal staff display or a "Piano Roll" display. You can also have both, and you can have any amount of information stacked within the track editor, including all of the musical parameters mentioned above, velocities, controllers, poly and mono aftertouch, program changes, etc. There are quite a bit of editing tools and they are all quite useful. I've found editing to be a snap. Note entry from scratch, however, can be a bit clunky. This is not a replacement for DMCS or the like. Even with the staff display, you don't get the usual note symbology. You still get the "duration bars", as with the piano roll display. If you want to edit notes from scratch, you have to preset the note value, duration, and modifiers before each note (as long as you aren't entering a series of notes with the same parameters, in which case you can just keep clicking.) A "magic wand" tool can, with a "wave", modify velocity curves or note durations to match musical parameters. You can have key/scale & mode as well as rhythms shadowed on the editing page. You can edit in any resolution, but you can also snap to time signature, key/scale & mode, and rhythms. You can also bring up a window on any note or event and edit its parameters (time, duration, etc.) in raw number format. Editing velocities, aftertouch, and controllers is as easy as dragging the discrete lines or drawing curves. You can also use "magic wand" to match velocity to the dynamics in the piece. At both the global and track level, you can "Toolize" between the Edit Flags. You can set up a chain of tools in the ToolPad and "Toolize" essentially processes all notes in the sequence between the edit flags using that tool configuration. Step time recording is also supported. Overall, editing is smooth and well done. The "Toolize" feature is especially handy. I'm looking forward to doing serious scoring with this. ABA Song Structure One neat feature of B&P is the ABA Song Structure feature. You can define and name the sections of your song. Thereafter, you can rearrange the sections in any order just by editing an ASCII list of your sections (e.g. A B A B C B A). Bars & Pipes will copy or move the appropriate sections automatically. After editing or changing any section of your song, selecting "Propagate" in the edit menu (either globally or within a track) will copy those changes to every occurance of that section thereafter. This is an idea with super potential, but this implementation is not entirely watertight. It is very dangerous throwing sections around using the ABA List and I suggest you SAVE SAVE SAVE before you do anything with it. Bars & Pipes DOES NOT keep only one copy of each section and loop around. After you define the ABA list, it rearannges and copies until the complete sequences matches what you have defined. You can easily write over other sections of music with this. I believe it is also responsible for a nasty which I will describe under Bugs. Here is the ABA List's weakness: you HAVE to have each section recorded once at the beginning of the piece, because when you define sections intially they have to be consecutive. You can't, for instance, have two copies of what will become section A, then B BEFORE you define the ABA structure. You have to have 1 A, followed by 1 B, 1 C, etc. In other words, it can't be used to structurize an existing song without some extensive editing first. Once a song is structurized, though, rearranging and editing is a snap. This would be a stupendous feature if it weren't for the problems I've outlined. Interface I have found the interface to be VERY well done- leaps and bounds over SoundScape. Playing with tools and pipes is quick and easy (I was doing some pretty complex tool connecting on my first session) and the menus are very well laid out. The buttons on the sequencer are colorful and stylized- "arty", which really bothered me at first (kind of like the front panel of an EMAX- Blechh!), but I got used to them. Once you get the hang of it, everything is logical and within reach. Bugs I haven't encountered too many killers. There seem to be a number of bugs in the display code, especially in editing. Pointers have a tendency to suddenly turn a putrid shade of green and stay that way until you change pointers. The title bar annunciator which tells you what tool you have selected doesn't really go away, even after you've thrown away the tool. Little things like that. The worst display bug I've found: if you turn on lock to key/scale & mode in the editor, dragging notes don't erase themselves and leave an ugly mess behind until the display gets updated. The most dangerous bug happened only once and I haven't been able to recreate it. It was when I was using the ABA List, which doesn't surprise me. At one point, the sequencer got the idea that my song ended on bar 25. Bar 24 was the last bar which held events before I used the ABA List. Once it decided that the song ended on bar 25, I COULD NOT CHANGE IT BY ANY MEANS. Inserting measures, entering notes, playing with the cut and paste: NOTHING helped. The song would just play until bar 25 then stop. Saving, exiting, and loading didn't help either. The problem was finally "remedied" by cutting my entire song into the clipboard, starting a new song, redefining all the tracks, and pasting the song back in. Needless to say, this is less than optimal. I'm not sure what I did, but I haven't encountered this yet again. Conclusions Bars & Pipes in an excellent package with a lot of unique features. I admit, if you are just interested in sequencing, Music-X is hard to beat. However, if Bars & Pipes' unique MIDI processing, musical knowledge, and "computer-aided composing" potential sound intriguing to you, I highly recommend this package. If Blue Ribbon Bakery actually releases a tool/accessory developer's tool kit, B&P's utility will basically double for me. It looks like the basic architecture for some seriously cool music tools has been laid out and I would love to get my hands on the programming library. As with many upstart packages, the manual is horrendous. It gets you through the basics, but its complete swings between cryptology and patronizing prose are sometimes hard to swallow. Actual quote: "Lyrics are the words which accompany music." A number of the musical features of B&P are quite advanced, such as Mode. However, the manual makes really sad attempts at explaining what they are to the non-musician. If you are a musician, it sounds trite and patronizing. If you aren't a musician, it isn't nearly enough to get started. Fortunately, a good blibliography of musical theory is listed in the back. Furthermore, the quality of proofreading is seriously substandard. I'd say there is a mega-typo every two pages or so. Despite these complaints, I am quite impressed and satisfied with this package. It should keep me busy for a long time. Bars & Pipes lists for about $300. I got it through Computer Discount for $230. - Kurt Kurt Geisel SNAIL : Carnegie Mellon University 65 Lambeth Dr. ARPA : kg19+@andrew.cmu.edu Pittsburgh, PA 15241 UUCP : uunet!nfsun!kgeisel "We just need to short-circuit the continuum on a BIX : kgeisel 5 or 6 parsec level." - Forbidden Planet
karl@sugar.hackercorp.com (Karl Lehenbauer) (03/25/90)
Does Bars & Pipes have the ability to read and write files in Standard MIDI Format (SMF)? What about performing? Can I load a set of songs into it at once and drive through them in some simple manner when playing out? Many of the features sound very interesting. Do they introduce any weirdnesses in the "standard" operations of recording, playing, punching in and out and quantizing? Also, does it have an undo buffer, and if so, how deep is it, and does it have any ability to define a "save depth" such that you can keep a number of previously saves automatically, or is there even one level of backup? -- -- uunet!sugar!karl "As long as there is a legion of superheros, all else -- can surely be made right." -- Sensor Girl -- Usenet access: (713) 438-5018
umbirch2@ccu.umanitoba.ca (03/26/90)
Still on the topic of Bars & Pipes, does anyone have the demo version of it?? If so can someone please send it to me, or tell me I can get it?? Thanks, Robert Birch <umbirch2@ccu.umanitoba.ca>