The song editor (part 2)

This section discusses the general operations behind constructing and editing a song, from defining sections, putting them in order and working with the bars that they contain.

Sections and structure

As discussed earlier, Doggiebox permits you to construct songs out of building blocks called sections. Each section can contain any number of bars, with distinct tempo markings, time signatures and so on. By arranging sections in the playlist, you put these blocks in order to describe the structure of the song. A song will always contain at least one section.

[screen shot]
The section list controls

The section list

The section list is a repository of the various building blocks (groups of bars) which you can re-use to create the song.

To create a new section, click the + button above the list, or choose Add Section... from the Song menu. You may also option-drag, or copy and paste, to duplicate an existing section (or several), even between different song files.

To permanently delete one or more selected sections, click the - button or choose Clear from the Edit menu. If any of them currently appears in the playlist, you will be given a chance to cancel the operation.

The section list sports the following columns:

The order of sections in the list does not matter, though you are free to re-arrange them (by dragging) in order to suit your taste.

[screen shot]
The playlist controls

The playlist

The playlist is where you manipulate the structure (or running order) of the song. Sections shown in the playlist are really just aliases to the actual sections found in the section list.

To add a section to the playlist, click the + button above the list, or choose Add to Playlist from the Song menu. A new entry will be created. You may then click on the section pop-up to choose which section it represents. Alternatively, you can simply drag a section from the section list to the playlist, and it will be inserted automatically where you would like it.

To remove the selected section(s), click the - button, or choose Clear from the Edit menu. Doing so will delete them from the playlist, but not actually dispose of the sections entirely (they will still remain in the section list).

The following columns are shown in the playlist:

To change the sequence in which sections play, simply drag them within the playlist to change their order.

There is also a button labeled All, which is a shortcut for selecting the entire contents of the playlist. This is an effective way to view and play back the song as a whole, which you will ultimately want to do.

Using the pattern editor

[screen shot]
Three bars in the pattern editor

The pattern editor displays the bars of whichever section(s) are currently selected in either the section list or playlist.

Rather than provide a separate row for every possible drum that might be used in a song, Doggiebox uses an ingenious condensed approach with only five rows covering the entire kit. Each percussive instrument is grouped into one of five general categories, like so (from top to bottom):

  1. accessory cymbals (crashes and other);
  2. rhythmic cymbals (hi hat and rides);
  3. secondary drums (tom-toms);
  4. principal drums (snare drum);
  5. foot-operated drums (kick drum).

By default, patterns are presented in one horizontally scrolling row. However, you may elect to have the patterns wrap to new rows at a regular interval (e.g. every 16 bars), or at the visible window width. This behaviour may be specified in the editing & playback preferences.

Inserting new bars

Chose Insert Bars... from the Song menu to add new bars to the song at the current insertion point. Doing so will raise a sheet asking you to specify bar characteristics.

[screenshot]
The insert patterns dialog

You must specify the number of bars to insert, as well as the time signature and tempo marking to use. The default values will be those most recently used the last time you chose Insert Bars.

Specify a time signature by both the top and bottom numbers. Doggiebox is intelligent enough to parse common types of compound time automatically, and will automatically choose a tempo basis best suited to the time signature. If you enter invalid values, a descriptive error message will be shown.

If after inserting some new bars you wish to insert some more, you can use the Insert Bars Again command (by holding the Option key), which will repeat the operation without first asking you to confirm the paramaters.

Working with drums

As you track the mouse over bars shown in the pattern editor, the mouse cursor will change to the icon representing the current drum variant as selected in the drum kit list. Click within a beat subdivision to add the drum to the bar; click again to remove it. Drag to paint the drum across many beats in one operation.

If you hold the command key while tracking over a pattern, the mouse cursor will dynamically change to the most recently selected drum variant for the drum group over which the mouse is hovering. For example, notice what happens as you move the mouse up and down over the region where kick drum and snare drum appear. This feature is designed to save time for experienced users, eliminating the need to make repeated trips with the mouse to the drum kit list when entering common drum patterns involving several drums.

You can also press letter- and number-keys on the keyboard to switch directly to specific drums. See the discussion in the drum kit editor on how to customize the bindings.

If you hold the option key while tracking over a pattern, the cursor will change into a pencil-eraser representing the drum erase tool. By clicking or dragging, any drums beneath the mouse will be immediately erased.

Selecting and manipulating patterns

To perform general editing operations (e.g. cut, copy, or change tempo) on whole bars or groups of bars, they can be selected much like text can be in a word processor. Selected bars display a highlighted backfill in their header areas.

Click in the header area of a bar to select it. Shift-click to extend the current selection, and command-click to toggle the selection of individual bars.

When there is no selection, the insertion point appears as a blinking red vertical marker. The insertion point indicates where new patterns will be put if they are pasted from the clipboard, or new ones are inserted. You can move the insertion point either by clicking in the header area between bars (on a bar line), or using the cursor keys on the keyboard.

You can adjust the visible horizontal resolution, by clicking the zoom buttons or by using the Expand and Collapse commands in the Song menu. By zooming in, you can expose smaller subdivisions of the beat. Beat which contain events that are hidden at the current zoom level are displayed with a light brown backfill.

Adjusting tempo and time signature

To modify the tempo or change the time signature for an existing bar (or group of bars), first select them in the pattern editor then choose Modify Tempo/Time... from the Song menu. You can also double-click in the header area of any of the patterns for the same result.

[screenshot]
The modify patterns sheet

Doggiebox will present you with a dialog sheet similar to that for inserting bars. The default values will match those of the selected bar(s), or will appear blank if there are several different values amongst the selected bars. Leaving a value blank will cause that attribute not to be changed. (For example, you may wish to change the tempo for a group of several bars that do not share the same time signature.)