BitmapSequencer
The BitmapSequencer is a sound synthesis tool that uses bitmap images as audio wave-data.
The sequencer consists of a multichannel stepsequencer (16 beat cycles) in which you can place bitmap bsimages to create sounds. Each image will generate it's own unique sound as the audio is produced directly from the image data. You can control aspects of the sound such as pitch, panning, amplitude, as well as saving and loading tracks. BitmapSequencer was created for lovebytes 2003 and is available on cd rom.
The software may also appear as a download some time in the future.

There a several versions of the application you can use depending on the speed of your computer.
The 'fast-computer' folder contains a 6 track version of the sequencer
The 'slow-computer' folder contains a 3 track version of the sequencer
Both folders have a windowed and fullscreen (-FS) version of the software.
Try out each version until you find one that works best for your machine.

The usage of each part the program is covered in the following sections.

(A) Sequence Grid

This is the main area of the program, you can place bitmaps on this grid to create a sequence of sounds. There are a number of channels that will be played simultaneously. You can drag bitmaps from the palette(B) and modify the sounds using the menu items above(C). You can remove an image by pressing delete while the cell is selected. You can also copy(F5) and paste(F6) cells in this grid.

(B) Bitmap Palette
This is a selection of bsimages available for you to use in the sequencer. You can drag an image from this line and drop it onto the main grid (holding down control allows you to paint with an image). You can load new bsimages into the palette by holding down the right mouse button over a bitmap, this causes a file list to appear from which you can select a new bitmap (any bitmaps on the grid that relate to this image will also be updated). New bitmaps should be stored in a folder called 'userbitmaps', new bsimages must be placed in this folder

(C) Menu Items

Note:
When this item is selected you can alter the note at which an image on the grid is played. You can click and drag the mouse within a grid square (left-right changes notes, up-down changes octave). Or you can use the keyboard (numbers change octaves, the bottom half of the keyboard acts as a piano keyboard.

AmpEnv:
When this item is selected you can alter the amplitude envelope that is used on the image. Click and drag with the mouse to change the envelope.(left-right controls attack time, up-down controls decay time)

PitchEnv:
When this item is selected you can alter the pitch envelope that is used on a grid bitmap. Click and drag with the mouse to change the envelope.(left-right controls pitch envelope time, up-down controls the destination pitch)

Pan:
When this item is selected you can alter the left-right stereo panning for a grid cell. Click and drag with the mouse to change the position (you can also use the keyboard 1-left 5,6-centre 0-right).
Pattern:
When this item is selected you can record a channel pattern into memory. There are 26 channels (A-Z) that can be used to store patterns. To store a pattern highlight the cell save option and press the key corresponding to the memory channel you wish to use. You can load a pattern into a channel by highlighting the load cell and pressing the key for the pattern you wish to recall. By using stored patterns you can re-use sequences and write longer songs.
Load:
When this item is selected you can load a BitmapSequencer saved file. The names of available files is shown to the right. You can step through the available files and press return to load a file.
Save:
When this item is selected you can save a BitmapSequencer file. Type the name of your file (to the right of the menu), you can use delete if you make a mistake. A Save file contains the tempo, the bitmap palette entry list(B), all stored patterns and the song sequence(E)

(D) Playback Control

Song:
This item shows the current beat and bar that the song is playing. You can pause and restart playback by clicking on the icon next to the word 'Song' .
Tempo:
This item shows the current tempo BitmapSequencer is running at (in BPM). You can alter the value by clicking and dragging on the number (holding shift while dragging allows smaller increments, holding control increases the increments)
Mute:
This item allows you to mute the individual channels on the grid above. Just click on a square to mute/unmute the appropriate channel.

(E) Song Structure

In this section you can arrange stored patterns to create a song. The grid of letters represents which pattern should be loaded for the each channel at each bar. You can change the pattern for an entry by highlighting a letter with the mouse and pressing the key that relates to the pattern you require. The patterns are stored previously using the 'pattern' menu item on the toolbar(C). A small arrow above the song grid indicates the current bar being played. If the song is not paused this arrow will move across the song grid, loading in a set of patterns for each bar, when the pointer reaches the end of the song (100 bars) it will reset at bar 1. You can move the pointer about yourself by clicking above the song grid on bar you wish to move to (although patterns will not be loaded until the pointer moves to a new bar). NOTE: is is better to edit and store patterns while the song is paused (otherwise you may lose work as the pointer moves to the next pattern).
Other details
You can add your own bitmaps to the program by using any graphics application. The bsimages must be 24bit .bmp files and be exactly 220*220 pixels (any other size will have unpredctable results), place new bsimages in the 'userbitmaps' folder. You can copy and use existing bmp files in this folder as a basis for new bsimages. Images need not be in greyscale, but at present only the red byte of rgb is used for audio (blue and green will not be synthesized). If you remove bmps from the 'userbitmaps' folder and then load a file that uses these bitmaps the program will report them missing and your patterns will be incomplete or corrupted. You can use the 'Esc' key to exit the program.

The application comes with several demonstration song/pattern files as well as a set of image bmps to get you started. In the case of errors, you can read the debug.txt file in the same directory as the application, this may help to indicate what went wrong.

The application can be quite cpu hungry, it is reccomended that you use a fast machine to run it. You must also have a recent version of DirectX (8 or higher) installed and some sort of audio output!


< back