The MusicWeaver

For BeOS — PPC and Intel

Latest Release 2.8 — Narch 2007
(Page last modified on )
(Download links later on in the page)
[reduced screen shot]

Click here for full size screen shots



Alert!

If the MusicWeaver crashed under BeOS Personal Edition when you, say, tried to run the Synth Demo, read this.

The MusicWeaver is a real-time MIDI data stream manipulator (call it "MIDI Morphing!"), using an interlinked net of small processing modules. You build your desired network graphically as a 'flow-diagram' through simple drag-and-drop operations. Do simple things like note transposition or keyboard splits, or more complex operations such as performing different transformations according to parameters of individual MIDI events — such as the velocity of notes — or at specific points in a sequence. The range of modules is always expanding, and so are the possibilities.

Because the 'diagram' that determines the flow of MIDI data is two-dimensional, you can have many streams, branching and merging as needed. Each section of each path can apply its own processing to the notes and so on flowing through it. You can create several streams from a single input (maybe have some handle different segments of the keyboard range) or perhaps provide others from prerecorded sequences — triggered by particular input events. Much of the capability of the MusicWeaver modules is based on the ability to 'mark' individual events in a stream, and direct them to separate streams depending on which marks are set.

The suite is a particular application of the general 'Weaver' scheme, which is unique in its ability to handle — intermixed but distinguished — multiple types of data simultaneously. Any data can flow along any path in a Weaver diagram, but will be processed only by those elements that recognize it, and passed unchanged by others.

This means, for instance, that in addition to MIDI data the MusicWeaver has the notion of 'Director' events. Some of these can be used to alter paths of data flow in your diagram; others can trigger variable MIDI events to affect pitch bend or controller levels. Director events can be generated from selected MIDI events (e.g. program change) or from external inputs such as a joystick.

Release 2.8

This March 2007 release has a few more fixes and enhancements, and two additions to the StreamWeaver set. These latter, 'PipeStream_PTY' and 'GetFile' are actually modifications to PipeStream and ReadFile respectively, but are sufficiently variant that they have been added to the set rather than replacing the others.

'RePlay' now saves System Exclusive sequences properly (a SysEx would corrupt the saved file), and 'DeGlitch' no longer has a crash under certain conditions.

'Transpose' now can be told not to transpose events on channel 10, so that percussion doesn't go weird. 'SysExGen' is now able to calculate checksums for sequences if required. 'Notator' is better at displaying closely spaced notes that previously might overlap, and will use "Melodic Minor" conventions if desired.

Release 2.6 and 2.7

These two January 2007 releases have some fixes of varying importance, one more new module — 'Notator' —, and a largely rewritten 'MidiPlay'. Notator will show you the notes (currently) being played, on a standard musical staff, with accidentals displayed according to the selected key-signature (no timing or sequence representation, just the current notes). MidiPlay now transmits more of the data contained in the midifile, and has more flexible queueing of files to be played. In the way of fixes, FilePanels now understand symbolic links(!).

2.7 fixes some glitches either added or not noticed in 2.6 (!) and has documentation that matches reality a bit better. The ChordSelect module has been improved, as have KeySig and Analyze.

Release 2.5

This August 2006 release has updates to only two components, but one of these is the Weaver program itself (now v3.2), which has had a couple of long-lurking bugs tracked down and fixed (it would sometimes crash on loading a diagram, and an element could 'vanish' sometimes when a move failed).

The other updated module is Replay, which has also had a bug or two fixed — it would crash if a loaded sequence had 'scaled' timing. There are a couple of added features as well. A sequence can now be sent out in 'steps' by successive external triggers, and a new Record mode lets you create sequences suitable for stepped output.

The downloadable archive is the full suite. (Simpler for me than trying to maintain update packages.) Unless you've moved things around in the folders, it should unpack over an already installed Weaver folder.

Release 2.4 (May 2006)

This release added a few new (hopefully) useful modules: These have been updated:

Release 2.3 (February 2006)

This time there is actually a revision to the Weaver main program [the first in six years!]. Weaver 3.1 allows configuration parameters (element settings) to be saved and restored alone, rather than only as part of a full configuration file. This should make it easier to reset diagrams to a desired state after changes.

There are a couple of new (or newly released) modules. MidiLink provides connection to external MIDI producers and consumers via the R5 MidiKit. SysExMon lets you look at the contents of System Exclusive messages (as hex sequences).

RePlay has some enhancements, as does the Controller module. Others have had minor updates and/or bug fixes. Most of the StreamWeaver modules are now included too, for convenience.

The rest of the modules are outlined below in the History section.

Requirements

The new Weaver and all the revisions have been built under BeOS R5, so the system will no longer run in any earlier version of the OS. There is no need for a special BONE main program any longer on Intel — the fix has been folded into the standard version. The PPC version is now (finally!) available as well.

The main program and most of the modules should work under any such system, but to make the most of MIDI you will need a suitable MIDI interface and other relevant hardware such as a Synth and Keyboard Controller.

The packages are available for downloading as zipped archives (links below — choose the one appropriate to your system); these should unpack the contents into a single folder with icons and attributes attached.


For the BeOS release 5 and later:

Release 2.8 — March 2007

Download x86 musicweaver (1.6MB)
Download PPC musicweaver (850KB)


Still available for the BeOS (PowerPC and Intel):

For release 5 and later (PowerPC and Intel):
v2.2 -- July 2004 -- Update only: must be unpacked over Release 2.1

(Unpack it from the same folder that you did the original.)
Download x86 musicweaver update (370KB)
Download PPC musicweaver update (200KB)

v2.1 — January 2001 — release 4.0 and later

Download x86 musicweaver full archive (1MB)
Download PPC musicweaverfull archive (600KB)

Author:

                                Pete Goodeve
                                Berkeley, California

                e-mail: pete@GoodeveCa.NET
                         pete.goodeve@computer.org

Back up to my other BeOS stuff


History and Details:

New in Update 2.2 The new modules are mostly concerned with extracting information, such as chord identification and key signature from a MIDI stream; only the Metronome actually generates events. They are: Revised modules: The package also has two updated non-music-specific modules icluded: StreamView and WriteFile, so that extracted textual data can be viewed and saved.

All licensing restrictions introduced in 2.0 have now been removed. All modules are freely useable.


These modules were new in 2.1 and 2.0:


The 2.0 release added recording and playback of MIDI, and provided new-Midikit access to and from other applications. You might use it in conjunction with a sequencer, such as Sequitur, for example, to pre- or post-process a recording.

The previous release to that (1.3) had a considerably upgraded Weaver main program ('v3.0'), with hierarchical diagrams ('Composite Elements'), on-line help, graphical routing and naming of paths, direct replacement of elements in a diagram, and so on. The MusicWeaver modules all had on-line help included as well, a few were been upgraded, and a couple of new ones were added. If you need the details, you can find them here.


The other modules supplied in the suite are:

The following 'Universal' Modules are also included as part of the basic Weaver 3 set.