OctaMED Pro V4.0   a review   Neil O'Rourke   || 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||   Introduction ~~~~~~~~~~~~  Many years ago, programmers needed a way to include music in games and demos. One way was to sample and loop a piece of music, as was done in the game Pinball Wizard. Another way was to "code" the music by hand, very difficult. The only music creation programs available at this time were Commodores' MusiCraft (which later became Aegis Sonix) and Electronic Arts' Deluxe Music Construction Set and Instant Music. All three programs used EA's IFF standard for music, SMUS (Simply MUsical Score), so they could easily interchange their scores in theory. In practice, Instant Music and DMCS could swap scores (so long as the songs were saved in SMUS format, not DMCS), Sonix could read them but usually failed to play them correctly. DMCS and Instant Music didn't really want to know about Sonix. Both Sonix and DMCS used "traditional" music notation to create their scores, complete with all those widgety things hanging off the lines (hey, I'm a programmer, not a musician!). Instant Music had the idea of coloured lines to represent the notes' pitch and duration. It allowed a non- musician to view and create music in a form never seen before. Several things stopped SMUS compositions from being included as in-game music. Firstly, there were no stand alone player programs to play the music. Second, the instruments were not included in the song (but the SMUS standard has allowances for in-score instruments). Thirdly, SMUS simply isn't convenient from a programmer's point of view. It takes time to extract the notes from a SMUS, and in a fast moving game or demo time isn't a luxury one has. A musician named Karten Obanski saw the problems programmers were having including music in their productions, and set about creating a program to end their woes. Karten had several good ideas: * Instead of music living on a stave (which seems to be as long as you want it to be), there is 64 notes that can be played in any given block of music. * Since the Amiga has four sound channels, each block has 4 tracks for the music, each track having 64 notes. * The notes are represented like this: A#1, meaning that we play the note A# in the first (lowest) octave. This can be stored in a very compact way, yet be extracted very quickly. * Each note may have a command associated with it - eg. a volume command, a tremelo command, a slide command, ... * Instruments, as such, don't exist. We play samples at a given frequency, with a given command, on a given sound channel. So, a note in this format may look like this: A#1 3C32 Which means : "Play Sample 3 using Command C and command data 32 at pitch A# in the first octave". Command . C means Change Volume, and 32 is half the maximum volume of the Amiga, so we play sample 3 at half volume at frequency A#1. Karten further enhanced his product by placing a replay routine in the public domain, and by including the samples used in the music as part of the save file. This file is called a module, and the name of the program is the "Master Sound Tracker". The final release of the Master Sound Tracker, V2, was a wonderful product. If you ignored a few little problems like: no exit from the program, frequent crashes (as in every few minutes), unreliable operation, etc. The program quickly sank into obscurity. The idea of the Master Sound Tracker was basically sound. Underneath a bug ridden, user hostile interface there lurked the makings of a truly great program. So, various European hacker groups took the original program and rewrote it, renaming it as the SoundTracker. The group DOC finally released SoundTracker 2.4, and this was now a (relatively) stable, mature product. Then other groups rewrote ST2.4, and the most notable rewrites came from Kaktus & Mahoney (NoiseTracker: improved the disk operations, added a sampler into the code, increased the instrument limit from 15 to 31), and Amiga Freelancers (ProTracker: better play commands and extra effects, general improvements). Unfortunately, the legal status of the SoundTracker still isn't defined. Karten Obanski never released the program into the public domain, so technically any program based upon the Master Sound Tracker is a pirated program. Even though there is very little resemblance to the Master Sound Tracker with the modern 'Trackers today (in screen layout, coding, features etc.), they are still (tecnically) pirated off the original. Thus the Sound Trackers took a long time to find their way into Public Domain Libraries. A Finnish programmer, Teijo Kinnunen, wasn't happy with the way the 'Trackers were designed. For a start, they took over the Amiga display and prohibited multi-tasking. Editing left a lot to be desired. Reliability was still a bit doubtful. As noted above, the legal status was a bit fuzzy. So he created a new program, MED (Music EDitor). This program could read SoundTracker songs and modules, had better editing, and generally did things different to the 'Trackers. It was also fully Public Domain. I first met MED on a fish disk back in '89. I didn't like it much, as the display looked primitive (compared to SoundTracker), the scrolling jerky. The general feel of the program left a bit to be desired. The program couldn't write a standard SoundTracker module for use in other programs. I never bothered to write to Teijo about MED, I decided to stick with the 'Trackers and clones. When I upgraded to System 2.0, none of the Tracker clones would work. Eventually ProTracker 2.1 and SoundTracker 2.6 were released BUT these remain horribly unstable on my '030/FPU/11 Meg monster of a computer. PT2.1 hangs, the screen display trashes and on exit the memory lists are stuffed up. With ST2.6, it just *crashes*. I received OctaMED 3 on the cover of CU Amiga, and I was impressed with how far Teijo had come with MED. Eight channel sound (although this was a bit dodgy), more editing options, better file requesters AND a traditional scoring system for entering notes. The program still left a bit to be desired, but a) it works well, and b) it works well on MY machine. The lack of a manual proved to be a hinderence, and the guide in CU Amiga isn't the best. I decided to purchase OctaMED Professional V4.  Reviewer Notes ~~~~~~~~~~~~~~  The machine I conducted this review on was an Amiga 2000 with a 25 MHz 68030 and 11 Meg of ram (1 meg chip, 8 meg fast and 2 meg 32 bit). The program was installed on a 44 Meg SyQuest platter. For comparison purposes, I fell back to the 68000 and redid some of my tests. If applicable, differences will be noted and be between <> brackets. I only use WorkBench 2.04 nowdays (my ROM switch was more trouble than it was worth).  Requirements ~~~~~~~~~~~~  OctaMED requires 1 meg of RAM to work in, more is appreciated. You can set the program to load all its files into memory, thus freeing up your internal drive for sample disks, or if memory is short, to load the graphic files when required. This not only slows the program down markedly (the graphic files are compressed), you are forced to leave the OctaMED disk in a drive at all times. But the program might run in 512K then. OctaMED needs KickStart 1.2 or greater. A hard drive is optional (great for me - I've 20 meg of SoundTracker modules and 10 meg of instruments). If you intend to use the 8 channel mode, you'll get better results with an accelerator. A sound sampler wouldn't go astray, as OctaMED supports directly sampling sounds. A smattering of musical talent could be useful, too :) .  General Overview ~~~~~~~~~~~~~~~~  I ordered OctaMED from MegaDisc (of course), and Tim invited me to review it. The program arived a day later in a postbag, with the manual and two disks. Disk One was OctaMED its self, and Disk Two was full of drum samples. The manual is a ring bound photocopy of some laser printed word processor files, with the cover being laminated. My initial impression wasn't favorable, but this soon passed as I started to read the manual. I'm not a manual lover, and I'm yet to see a manual that is well written and well presented. I've heaps of well presented manuals (Imagine 2.0 springs to mind - beautifully bound and presented, full of trash), one or two adequately written and presented manuals (DPaint 4), but no well written/presented manuals. The OctaMED manual is almost as a manual should be - all the information is there, with a description of all the panels and functions, and no padding. There is a summary of all the commands at the back, including MIDI commands, synthetic sound commands and the play commands. The manual really lacks an index, being such a complex program. The disk envelopes form part of the manual - I like it, other people think its a stupid idea. Each to his own, I guess. As you read this, OctaMED has been repackaged into a video cassette box with a new manual that includes an index! Installing the program on my hard drive was a breeze. Just drag the main program across, grab the couple of .gfx files (WB2 is wonderful for this) and the program fires with a double click. No messy ST-XX's to assign like SoundTracker! The program kicks off with a copyright notice and a great picture of something playing four keyboards - wonderful! (My brother thought that the picture was rather tacky) A mouse click later and the .gfx files are loaded and the program is ready for action, as shown in picture 1. < Upon going back to the 68000, a double click on the icon loaded the program into ram. It then proceeded to decrunch, a time consuming process. The loading and decrunching of the .gfx files also took some time.> The initial screen of OctaMED is a bit daunting to a 'Tracker user, but I eventually got the hang of it. Without actually describing all the control panels gadgets, you simply click on the gadget that contains the functions you wish to use, and this brings up the control panel. For example, the PLAY panel (as shown in picture 1) lets me start and stop a song, change my position in a song, and change the speed of a song.  OctaMED control panels ~~~~~~~~~~~~~~~~~~~~~~  OctaMED has nine different panels for the editing/file controls alone, along with panels for MIDI, Synthetic Sounds, Sample Editor, File Requestor, Block Editor and Note Editor. The EDIT and BLOCK panels allow great control over the creation of music. If I had a hi-hat riff that only lasted 16 positions (say), with the older SoundTrackers I would have to retype the riff 3 times to fill the pattern. With the BLOCK panel, I simply declare my 16 positions as a block, and then copy that block to the required position, just like a wordprocessor's block functions. The BLOCK panel also controls the size of the patterns in the Block editor. Here, you select how many tracks are to be seen on screen (from 4 to 16!), and the length of the patterns (from 1 to 3200!). Shifting notes around, inserting notes, deleting notes are all available through this editor. A useful feature of the EDIT panel is the SPC (space) button. With this button enabled, OctaMED skips a user defined number of positions to the next insertion point. As an example, suppose in my hi-hat riff I wanted a hi-hat hit on every second position. Using SoundTracker, I'd enter the note, arrow-down to skip the next position and enter another note. Using OctaMED with SPC enabled and set to two, the editor automatically skips a position every time I enter a note. Neat! The one thing most hated by serious musicians is SoundTracker's support for only 3 octaves. This is a problem caused by a) limitations within the Amiga, and b)the use of raw samples (not IFF instruments). A raw soundfile is just data, and as such is very small. An IFF file has lots of header information, and really good IFF's have multiple octaves built into them. While OctaMED only supports 3 octaves for raw samples, it allows the use of 3 and 5 octave IFF instrument files. If your song requires five octaves you can now enter it no worries if the instrument is an IFF 5 octave instrument. If you try and play a sample at an unsupported octave, OctaMED simply plays that sample at the nearest "supported" octave. Of course, if you are controlling a MIDI keyboard then all octave selections are valid. Another thing musos wanted was MIDI support. Although the 'Tracker is an ideal MIDI controller (with its block method of creating and controlling music), they were designed with demo and game programmers in mind. ProTracker 1.1 had a stab at MIDI, but this was quickly dropped in subsequent versions. I don't have any MIDI gear to try it out with, but OctaMED seems to have a very complete MIDI interface. There is nothing stopping you from using all 16 channels available for a MIDI song. The FILES panel brings up a very nice file requester - not the best I've seen, but up there with the best. It is here that you can choose the save format (ST/NT, MED), an Icon if required, and extended song information (like screen colours). The TRANSPOSE panel allows global editing on a song. Don't like the way your sample plays at A#3? With Transpose, you can look for every A#3 using a particular sample in a song, and change it. Want to change every note in a track by moving it up by one? No problem. And so it goes on. An even more interesting option is PLAY TRANSPOSE. With this function, you can play your song with the notes transposed but not written into the score, thus allowing for mistakes to be easily undone. The VOLUME panel is interesting. You can have a master volume, and have every track at a relative volume to the master volume. The use of this would be for an external module player. As an example, suppose I'm running Deluxe Video 3. DV3 only plays SMUS songs. So we write a little program in AREXX to control the module player. Suppose we want to fade the music in. To do this, we send out control program a message (via AREXX) to fade in the music. Our program then sends the module playing program the necessary commands to alter the master volume from 0 to 64, thus a smooth slide takes place. The INSTRUMENT panel is where you select what sort of instrument you want. If you're loading a sample, this is where it comes into. Want to make a Synthetic instrument? This is where you start. The Instrument panel allows you to alter the finetune of a sample, set the hold and decay values, and the relative volume. This is worthy of a deeper look, later. The sample editor is very complete. It can perform all the special effects required, has its own sampler - basically it is Audio Engineer transplanted. You can view the sample on an occiloscope display (to set levels etc.) before actually recording the sample. The editing tools are all there, including RANGE (which is set by the RMB), and all the associated range functions of copy, cut and paste. Play Range is useful for fine editing, and the zoom function is perfect for cleaning up little glitches in the sample. A handful of special effects include Echo, Filter, Boost, Volume and Volume Slide (not to be confused with the Volume Slide command). A small point to remember is ot set the size of the sample BEFORE you start to record and edit it! I usually pick a big value (around 500K) so I can record plenty of the sample. The Range and Cut functions now come into play as I trim the instrument down. Full IFF looping is available at this point, too. The sampler is useful. Imagine you're creating a piece of music, and all of a sudden you find that you need (yet) another sample. Using ProTracker (yes, yes, I *know* it has a sampler, but it doesn't work on machines greater than a 68000), you have to save your work, quit (bearing in mind that, on my machine at least, a crash isn't far off), fire up your sampler, sample, edit save and back to ProTracker again, update the PLST and use the sample. Even though ProTracker does allow task switching, on a 1 meg machine there isn't enough memory to multi task a sampler, a 'Tracker AND leave enough free RAM for a decent sample. This is using a hard disk, too! Imagine doing the same thing off floppies! So the sampler in OctaMED isn't such a bad idea after all. The sampler supports all samplers that work through the parallel port, and my AMAS works well. The Sample List is similar to a 'Tracker PLST (Preset LiST). Here, you tell OctaMED where to look for all the instruments you have. For example, I've 22 directories that get assigned the names ST-xx. Rather than move these directories around, I just told OctaMED where to look for them. A further 6 directories contain the samples that came with OctaMED. Unlike the 'Trackers, OctaMED doesn't really care how long the paths to an instrument are (SoundTracker and NoiseTracker MUST have disks called ST-xx:, or those names assigned to the correct directory. ProTracker doesn't need this, but you've still a fair bit of work to do to set it up correctly). Personally, I like having one big PLST. At least all the instruments are there. With the Sample List in OctaMED, you only ever see the contents of one directory at a time, making searching for an instrument a pain in the butt. I have this problem because of my extensive instrument collection. If I reordered them into directories of (say) drums, snares, guitars etc, then not only would my hassels me mitigated I would actually speed up the search for the "perfect" instrument to use.  Special Features ~~~~~~~~~~~~~~~~  If you ever bought Sonix, you'll know about synthesised sounds. Basically, these are instruments that aren't sampled, but built within the CPU (like on the old C64, and Sinclair ZX Spectrum). Although requiring skill to use, the synthetic instrument editor is quite useful for creating an electronic buzz sound (like in modern techno dance music). The synthetic sounds of OctaMED are enhanced by a programming language (somewhat akin to assembly) that allows you to program the envelope of the sound. You can cause the sound to fade in or out, alter the pitch up or down (Portamento), simulate chords (Arpeggio), set Vibrato or just loop. With a bit of effort, using just these commands, creating the ADSR (Attack, Decay, Sustain, Release) is a snap, with much finer control available than Sonix ever could allow. To create a synthesised sound, you firstly create a buffer to work in, simply by typing in a buffer size. Then you create a waveform, either by using a predefined one (sinewave, squarewave, triangular, ramp or white noise) or hand drawing. You can mix and edit the waveform to your heart's content (for example white noise that follows a sine wave with square wave steps). To create the ASDR envelope, you write the controlling program for the wave form. It seems that this program controls the hardware directly, as the manual gives an example showing how to lock the Amiga up with a single jump instruction. Synthesised sounds are further enhanced by having an interface to them in the block editor. If I have an instrument playing that is currently looping (Sustain), I can tell the sound processor to jump to the Release section of the ADSR envelope, and the sound will die out in the sequence I programmed. With all these wonderful features available in the synthetic sounds, OctaMED goes one better by allowing sampled sounds to be controlled in the same way. Although there are a few restrictions, a hybrid sound contains the best of both worlds - the total control offered by synthetic sounds as well as the "real world" of sampled sounds. This section in the manual is basically a reprint of the Synthetic Sounds, and would really benefit from having a tutorial included. Synthetic sounds are a lot of hard work, and hybrid sounds are even more work. My best efforts have been pretty woeful to date, but I have downloaded a song that is fairly resonable in its use of hybrid instruments. OctaMED gets its name from its ability to play up to eight sound channels at once. It accomplishes this by "splitting" a given sound channel in two. For example, if I want to have five tracks, then one Amiga sound channel must be split between two tracks. Believe me - to use this feature with any hope of obtaining great results you NEED an accelerator. As an experiment, I loaded an eight track song into OctaMED with my '030. Sounded good, very little distortion. I then fell back to the old 68000 and reloaded the song and played it. A bit more distortion, and the computer basically came to a standstill as the poor old 68K furiously interleaved the tracks. The scrolling became jerky and missed a few lines, the mouse behaved somewhat drunkenly and completly stalled the scrolling. Not fun. Back to sanity and the '030, to use 5, 6, 7 or 8 channel mode there are limitations: 1) Volume for the samples is halved. 2) Volume is set for the track pairs and cannot be altered for instruments. 3) Triggering notes sometimes causes conflicts (nothing special, you just get a bit of noise). 4) High frequency samples (eg HiHats) loose their clarity. These limitations not withstanding, eight channel mode is good for classical type music. Rave or techno tracks probably won't gain anything from the extra tracks, because of the slowdown of the system and the drop in sound quality (hi hats are particularly affected). However, by working with only five or six tracks you can keep some high quality tracks as well as split tracks. There is a HQ (High Quality) mode available for split channels. Although effective, it robs the CPU of more time as it smooths out the instruments while splitting channels.  Entering Music ~~~~~~~~~~~~~~  OctaMED allows two ways of entering your music - either by the familliar block editor, or by the traditional graphic notation editor. In practice, I find the graphic note editor good for entering music straight out of a music book, then fine tune it with the block editor. The graphic editor has all the tools of DMCS that you need - edit, delete and move notes around. The primary purpose of this editor is to enter music, and it does this job very well. Just select what track you want to edit and start entering notes. The notes are entered using the current instrument, so to change instruments it is a matter of a few mouse clicks. You can set your time signatures (4/4 or 3/4), and the key signature, in either sharp or flat. You can choose to insert or delete notes. Dotted notes are easy to enter, just click on the first note, shift-click on the second and voila! a dotted note. Changing tracks is a snap, just click on the track that you want to edit. You can have the other tracks either showing or ghosted. When playing a song, OctaMED scrolls along, showing what note is currently playing. Traditional music notation doesn't allow for all the effects that OcatMED allows (somewhat understandable, I suppose). If you want to slide from one note to another, there simply isn't any way the traditional score allows that. This is where the block editor comes in The block editor is really no different to a standard 'Tracker. The TAB key jumps from track to track, the arrow keys do as expected. One option is to have the space bar as a delete key. If you're coming over from ProTracker, there is an option especially for you - PT Keys. This allows you to control OctaMED like the ProTracker, very useful. However, you can't redefine the keys to suit your own particular style. The block editor is where any effects commands are inserted. Note that OctaMED has a HUGE number of commands to play with, and has redefined the commands layout to accommodate these. A nice touch is the Chord functions. Although you can emulate a chord on one sound channel (via the Arpeggio command), there are times when you need a real chord. The chord command works by holding the position constant in the pattern while you enter the three notes that make up the chord. However, you still have to know what notes to use to make the chord (which isn't much help for a musical dunce as me). Also, the notes in the chord are sprread across available sound channels. This may or may not be a problem, depending upon your needs and your track allocation. A feature I really like is to assign a set of notes to the numeric keys (above the main typing area). If you've just created a very difficult to reproduce sequence that will feature in your tune, but the block editor isn't flexible enough for you, then this is a really neat innovation. First, create the sequence. Then select it and via the edit panel assign it to a number key.  Effects Commands ~~~~~~~~~~~~~~~~  A typical 'Tracker has only one byte for commands (and two bytes for data). OctaMED has implemented two byte commands (still with two byte data), and can automatically convert a ProTracker song and commands to an OctaMED song and commands, and back again. The old favorite commands of Arpeggio (chord simulation), Slide Up/Down, Portamento (slide to a note), Vibrato (slide the pitch up and down) and Tremolo (slides the volume up and down) are still there, along with Set Volume, Position Jump, Tempo and Filter On/Off. All the ProTracker Exx commands are implemented as well. Features not found on the ProTracker are Slide + Fade (Slides a note to another note, fading as it goes), Vibrato + Fade (Instrument keeps Vibratoing and fades out), Hold + Decay, Volume Slide. There are also heaps of miscellaneous commands, most of which you'll never need to use. I count 14 MIDI commands that can be used in the score as well.  Compatibility ~~~~~~~~~~~~~  OctaMED can read and write any file created by an earlier version of MED. It can read and write 32 instrument SoundTracker modules. However, something goes wrong when reading a 16 instrument song, it fouls up for some reason. This shouldn't be too much of a hassel for most users, but it is a point to watch for. Why be able to write ST modules? Well, there are HEAPS of utilities for playing around with ST modules (RSI DemoMaker springs to mind). Also, the STReplay routines are very available and easy to use, as opposed to the MED and OctaMED play routines. What is gained in compatibility with other products, however, is lost in features. OctaMED allows 64 instruments, 8 channels of sound, patterns of arbitary length, etc. All this information is lost when the song is saved as a ST module. OctaMED refuses to load a packed 'Tracker song. If you've got ST songs that you want to work with, use a 'Tracker to convert them to modules. There appears to be some problems in loading a ProTracker module with lots of extended Exx commands. The song was trashed upon loading, yet ProTracker plays it perfectly. BUT, this is the only module in my collection that has this problem (1 in 178).  Printing Songs ~~~~~~~~~~~~~~  During the course of this review, I had a phone call from a guy having problems using the print option. What he wanted to do was print the score out from the graphics editor. Every time he selected "print", OctaMED came back with File Not Found. I immediately tried it on my system, with no problems. After further questions, he told me that he was booting off the OctaMED disk its self. I was running of my hard drive. I booted off the OctaMED disk, and had the same problems. I suspected that the problem was in the System-Configuration, and half an hour later I proved myself correct. So, if you are using OctaMED off floppies, here is how to install a printer 1) Delete the Demos and Docs drawers on a copy of your OctaMED disk 2) Move the printer driver required to the Devs/printers drawer on the OctaMED disk 3) Put Preferences V1.3 onto this disk as well (it MUST be Preferences V1.3) 4) Reboot with the OctaMED disk 5) Using Preferences, select your printer in the usual way, and save this configuration You should now be able to print using the Print in the graphics editor. I spoke to Kevin at AmigaNuts about this - he is going to alter all the disks so that at least the generic driver works, so if you order OctaMED now, you won't have this problem.  The Bottom Line ~~~~~~~~~~~~~~~  Is OctaMED worth the $85? The answer is a resounding "YES". The learning curve for the program is very steep initially, and takes some getting use to. However, OctaMED is worth every cent. After almost 3 months constant use, it is now my 'Tracker of choice. It compares well with ProTracker, and leaves the other 'Trackers for dead. Probably the only feature missing is something SoundTracker 2.6 has: Track Sequencing. Typically, a song needs only a few different drum patterns, yet due to the block nature of the 'Trackers, you find yourself cutting and pasting a lot. ST2.6 sidesteps this by allowing you to declare a number on each track you create, so if a particular pattern requires a certain drum loop, you simply type in the number of the track required, and SoundTracker does the rest. A very useful feature. In fact, you could have patterns built up from sequenced tracks, and a song built from sequenced patterns! ProTracker 2.2A Beta has a lot going for it - features, stability, better editing etc. In particular, its Chord function is a lot more flexible than OctaMED's. ProTracker2.2A multitasks as well (but who actually multitasks a music creation program, I ask. If I want music while I work, I fire up my CD player, or in a pinch a decent module player. No way a memory hungry 'Tracker or OctaMED). OctaMED still has better features (except for the Chord functions). OctaMED is more intuitive to use after a while that a 'Tracker, primarily because you get some feedback from your mouse clicks. If a gadget doesn't change colour, you can't use that gadget. Simple. If the machine locks, there is a "panic stop" by pressing both mouse buttons for at least 6 seconds (although I haven't been able to test this out yet - it hasn't locked!). The inclusion of a decent sample disk is a welcome bonus, but check out the MegaDisc library for the original ST-xx disks for hundreds of decent samples. The Module disks are a good source of both extra samples and good songs. Your local BBS may have a SoundTracker section in the Amiga area as well, a great place to collect recent modules (however, some recent modules are MASSIVE - the biggest I've seen to date is 750k!). OctaMED Pro 4.0 costs $85, and is available from AmigaNuts United, Fax/phone (076) 33 1172, or from MegaDisc (with 5% subscriber discount). Allow around $6 for postage either way.  || 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||| 33 ||