UnderwareDesign
June 28, 2017, 12:19:17 PM *
News: G2D - 2D OpenGL library V007 for PlayBASIC V1.64P - Including Programmable Particles   (Released 22nd,Nov 2014)
   Home    
Pages: [1]
 
Author Topic: How To Import DRUM TAB Into DTAB  (Read 21275 times)
Member
Development Team


WWW
« on: March 26, 2005, 07:52:34 PM »




How to Import Drum Tabs for Play Back into DTAB V1.00j and higher

Document Revision: V0.09 (20th,May,2008)

Note: This document is of out of date,  for the latest version please read the Dtab Documentation.




*-Aim:

Show people,

 * How to Import standard Drum Tabs into DTAB
 * How to Read and Play Drum Tabs.




*-Pre-Amble-*

 DTAB has been intentionally built around a fairly strict definition of Drum Tab.  This definition was derived from the most commonly used tabbing conventions found right across the web.  But sadly, even though a Drum Tab standard is slowly appearing, there are still many individual variations also.  It's these variations that are often the biggest complaint from drummers trying to read/decipher Drum Tab.

 So we all need make an effort to keep everything more consistent, so we can ensure that our drum tabs are not only easily read by other drummers, but can be played back accurately also.

 Thus, the focus of this document is to outline what conventions the DTAB importer expects in order to load and adequately play back your Drum Tabs, be they produced by Dtab, or created by hand.




*-Do I have to use DTAB to make tabs that can be Played Back ?

   No, if you follow the guide lines outlined here, when either creating a drum tab(s) or simply use them  to tweak existing tabs you've made previously for importing. Then you'll most certainly be able to get perfect playback.

  Being the first edition of the importer, It's no magic solution however.  While it does support Time Signatures, Triplets, Single and Multi bar repeats (as well as nested repeats), Alternative Endings, Section Naming and more..

  There are of course variations that are not natively supported by the current DTAB Importer.   In those cases you'll have to edit the tab manually.  




*- Is importing and Play Back available in the DTAB demo ?

   Yes !, demo users can Import, edit and Play Back drum tabs through DTAB freely.   There are some limitations upon saving / export however.  For that, you'll have to register !






*- What Header Declarations Does a Drum Tab Need ?

   While your tab doesn't need any header definitions, it's certainly helpful for the reader and thus the DTAB importer for a tab to have some information about what this tab is.  

  Header Descriptions:

  Song:     (Name of Song)
  Band:     (Name of band)
  Album:     (Name of band)
  Tabbed By:     (Name of tabber/Author of Tab, you can also use "Tabber:")
  Email:     (Email Address of tabber)
  URL:     (Web Site Address of tabber)
  Timing:     (Opening time signature of song.  Song are consider to default to 4/4, if the track isn't 4/4 then notate it)
  Tempo:  (beats per minute in quarter notes)

  If you don't know the tempo of your song, at least try and give some type of estimate.    




*-How should the bars be defined ?

    Bars are made up of rows of staff lines, each staff line starts with a header, a bar opening divider, the note data and the bar closing divider.     Multiple bars can be represented upon a row of staff lines.  

   The lines preceding and following a row of staff lines can either be used to notate the bar counting,  repeat symbols, time signature changes, alternative endings or just comments.

   Just the Facts

 * The DTAB importer expects bar dividers to use the pipe character "|".
 * Rests can be defined as either '-' or as a space " " character.
 * DTAB assumes each tick (rest or note character) across a bar is a 16th note (unless overridden by the users counting.)
 * The Importer assumes bars in are in 4/4 by default. Any time signature changes should be written above the bar (eg 5/4, 7/8 etc) so that their positioned between then Bars start and End (the bar dividers)
 * The bar counting can appear above or bellow the Drum Staff lines. Triplets or variations in the rest duration, should be explicitly counted to ensure the readability and the best playback quality possible.
 * Staff Names (eg "HH", "Tom1" etc can't be longer/indented more than 12 characters)


 Some example bars,  suitable for import.

Example #1      ( a Bar of 4/4)            

Code:
Count:| 1 + 2 + 3 + 4 +  |
    Hh:| x-x-x-x-x-x-x-x- |
   SnD:| ----o-------o--- |
   BD1:| o-------o------- |

 or,

Example #2      ( a Bar of 4/4)            

Code:
  Hh:|x-x-x-x-x-x-x-x-|
  SnD:|----o-------o---|
  BD1:|o-------o-------|


 Example #3 ( a bar of 5/4)

Code:
       5/4
   Hh:| x-x-x-x-x-x-x-x-x-x- |
  SnD:| ----o-------o---o--- |
  BD1:| o-------o--------o-- |
        1 + 2 + 3 + 4 + 5 +  


 Example #4 ( Open staff lines in 5/4 - Staff lines that don't have an openning divider)

Code:
      5/4
   HH: x-x-x-x-x-x-x-x-x-x-|
   SD: ----o-------o---o---|
   BD: o-------o--------o--|
       1 + 2 + 3 + 4 + 5 +  


 Example #5 ( A 5/4 bar in 32nd note resolution)
    
Code:
           5/4
    HH | x---x---x---x---x---x---x---x---x---x--- |
    SD | --------o---------------o--------------- |
    BD | o---------------o-----------o----------- |
 Count | 1   +   2   +   3   +   4   +   5   +    |





*- What Staff Lines does DTAB natively support ?

  DTAB supports various sets of basic staff lines definitions. There are a few variations of each set. The sets are based off the most common staff line definitions.

  During the import process, if DTAB is unable to identify a staff line, rather than guess, it will ask you how it should should remap this line.  

 When creating tabs for import,  It's very important to note that the Capitalization of your Staff Lines matters.  As not every combination is built in to DTAB (at this point), also avoid using a Staff Name that may be commonly used for another instruments.    A good example of this occurs when a tabber might notate, a splash cymbal line using a "S" staff line:  If you look bellow, this line would no doubt be imported incorrectly as a 'Snare"  Since staff line "S" is virtually always the snare line.  
 

Dtab Staff Symbols:
Code:
 Perc1: |-Percussion Line #1--------|
  Perc2: |-Percussion Line #2--------|
    Cym: |-Crash Cymbal--------------|
   Ride: |-Ride Cymbal---------------|
     Hh: |-Hi Hat--------------------|
   Tom1: |-Tom #1--------------------|
   Tom2: |-Tom #2--------------------|
   Tom3: |-Tom #3--------------------|
   Tom4: |-Tom #4--------------------|
    SnD: |-Snare Drum Primary--------|
   SnD2: |-Second Snare Drum---------|
   FlT1: |-Floor Tom #1--------------|
   FlT2: |-Floor Tom #2--------------|
    BD1: |-Bass Drum Primary---------|
HF/Db2: |-HiHat w/Foot,Bass Drum #2-|


Mvk Staff Symbols:
Code:
 P1 |-Percussion Line #1--------|
  P2 |-Percussion Line #2--------|
  C  |-Crash Cymbal--------------|
  Rd |-Ride Cymbal---------------|
  H  |-Hi Hat--------------------|
  T1 |-Tom #1--------------------|
  T2 |-Tom #2--------------------|
  T3 |-Tom #3--------------------|
  T4 |-Tom #4--------------------|
  S  |-Snare Drum Primary--------|
  S2 |-Second Snare Drum---------|
  F  |-Floor Tom #1--------------|
  F2 |-Floor Tom #2--------------|
  BD |-Bass Drum Primary---------|
  Hf |-HiHat w/Foot--------------|


Classic Staff Symbols:
Code:
 C  |-Cymbal----------|
  H  |-Hi-Hat----------|
  Rd |-Ride-Cymbal-----|
  t  |-Small-Tom-------|
  T  |-Medium-Tom------|
  S  |-Snare-Drum------|
  F  |-Floor-Tom-------|
  F2 |-2nd-Floor-Tom---|
  B  |-Bass-Drum-------|
  Hf |-Hi-Hat-w/foot---|


Code:
Other recommended 2 Letter Staff Names
  Ta  |-Tambourine---------- |
  Cb  |-Cow Bell------------- |
  Wb  |-Wood Block--------- |
  Sp  |-Splash Cymbal------- |
  Ch  |-China Cymbal-------- |


Code:
Recommended Verbose Staff Names
   Tamb   |-Tambourine---------- |
   CowB   |-Cow Bell------------ |
   WoodB  |-Wood Block---------- |
   Splash |-Splash Cymbal------- |
   China  |-China Cymbal-------- |







*- What Note Heads are Supported ?

    Dtab styled Drum Tabs support the following Note Heads

   Hihat
     x = cymbal/hihat/ride note
     X = Accented cymbal/hihat/ride note
     X = Ride Bell
     O = Open Hihat
 
    Ride
     x = Ride note
     X = Accented ride (bell)

    Cymbal
     x = Crash Cymbol
     X = Accented crash cymbal
     S = Splash
     C = China

    Percussion
     t = Tambourine
     w = Wood Block
     c = Cow Bell

    Snare/Bass Drums/Toms
     o = Note    
     O = Accented note on snare/tom or bass drum


    General Note Heads  (played on any surface)
     g = Ghost note  
     f = Flam
     d = Double stroke (played as 32nd notes)
     b = Double buzz stroke (played as two 32nd notes )
     r = 4 stroke ruff (played as 32nd notes)




*- Repeat Symbols ?

   The importer exports repeats symbols to appear over the bar.  In a Drum Tab produced with DTAB, repeat symbols used (eg |=== 4x ===|) are inclusive, so a repeat notation of 4x, means to play this bar 4 times in total.   But, the importer also supports 'Repeat' keyword, which is exclusive.   So first you'd play the bar, then you'd repeat this bar the number of notated times.

  i.e.

  Dtab method

Code:
    | ===== 4x ===== |
  Hh:|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|
 BD1:|o-------o-------|

    or
Code:
    | ====Play 4x == |
  Hh:|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|
 BD1:|o-------o-------|


  Repeat Method

Code:
     |=== repeat 3x ==|
   Hh:|x-x-x-x-x-x-x-x-|
  SnD:|----o-------o---|
  BD1:|o-------o-------|


  All three examples equate to playing the bar FOUR times.

  
  NOTE: The importer expects all Repeats to have opening/closing dividers that are perfectly aligned with the bar staff dividers.


  Eg.

   Correct Example

Code:
                     | ===== 4x ===== |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-------|


   Example of badly aligned repeat dividers.

Code:
                  | ===== 4x ===== |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-------|






*- Are Multi Bar Repeats supported ?

   Yes.  The importer expects the opening and closing dividers of a mutli bar repeat to be aligned perfectly with the bars.  You can repeat 2 or more bars on the same row.

   Eg.
Code:
    | ============ 4x =============== |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-o-----|

   or
Code:
    | -----------repeat 3x ---------- |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-o-----|

   In both examples,we 'd play this pair of bars four times


   Also, You can nest Multi Bar and Single Bar repeats like so.

   Eg.
Code:
    | ============ 2x =============== |
                      | ====== 3x ==== |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-o-----|

    This example actually represents an eight bar sequence.  That if notated in linear form, would look like this.

Code:
 Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-o-----|o-------o-o-----|o-------o-o-----|

  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|----o-------o---|----o-------o---|----o-------o---|
 BD1:|o-------o-------|o-------o-o-----|o-------o-o-----|o-------o-o-----|


    Note: The Importer doesn't support nested Multi bar repeats though !




How should Triplets be notated for the Importer/Reader ?

  Triplets representation is perhaps one the most inconsistent things about the Drum Tab format.   In DTAB, triplets are always notated the same way. That being as groups of three 1/16 note triplets.  This is an accepted form!.   Their 16th notes so that they remain consistent with the default 16th note resolution of the bar. (i.e. each "-" equals a 16th note).   So an 8th note tick, is every second tick in the bar.  A Quarter note tick every fourth and so on.

  The  'tl' triplet convention,  comes from TripLet.  Which is often a method taught to drum students.  Anyway, so a bar of 4/4 counting with all 8th note beats as tripled would count like this ie. '1tl+tl2tl+tl3tl+tl4tl+tl'

  Example, Mixed rate, First beat of second measure is a pair of 16note triplets. In that beat, the hihat is playing the 8th note triplets.


Code:

     |1 + 2 + 3 + 4 + |1tl+tl2 + 3 + 4 + |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|------o-------o---|
 BD1:|o-------o-------|o---------o-o-----|


 While the import natively uses the "TL" convention it can also import some other conversions also.  Those being the "ae", "tt", "Trip" & "Tripl" conventions.  At the moment the import only supports those within 8th notes.

 Some examples,

 Triplets using the "tt" form
Code:

     |1 + 2 + 3 + 4 + |1tt+tt2 + 3 + 4 + |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-x-|
 SnD:|----o-------o---|------o-------o---|
 BD1:|o-------o-------|o---------o-o-----|



 Triplets using the "ae" form
Code:

     |1 + 2 + 3 + 4 + |1ae+ae2 + 3 + 4 + |
  Hh:|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-x-|
SnD:|----o-------o---|------o-------o---|
BD1:|o-------o-------|o---------o-o-----|


 Triplets using the "trip" form
Code:
    |1 + 2 + 3 + 4 + |1trip+trip2 + 3 + 4 + |
  Hh:|x-x-x-x-x-x-x-x-|x--x--x---x-x-x-x-x-x-|
 SnD:|----o-------o---|----------o-------o---|
  BD:|o-------o-------|o-------------o-o-----|


 This one is down right confusing. While it only appears in a few tabs (that I've seen anyway), it would seem the 'trip' grouping is malformed, as rather than declaring a clear grouping of 6 sextuplets, it only notates 5 out of the six..erm what?.   To counter this, I've had to remapped the notes a little to make them sort of sound 'ok'.  To confuse the matter, It may well be the authors notation for quintuplets.  So while it does import them, i'd advise you to certainly double check those bars audibly.  
  

 Triplets using the "tripl" form
Code:
    |1 + 2 + 3 + 4 + |1tripl+tripl2 + 3 + 4 + |
  Hh:|x-x-x-x-x-x-x-x-|x---x---x---x-x-x-x-x-x-|
 SnD:|----o-------o---|------------o-------o---|
  BD:|o-------o-------|o---------------o-o-----|

  This one is far more logical as it allows for a nice even spacing.  When used like this, it refers to groups of six 32nd note triplets.  Thus, every second tick is the sextuplet and every fourth is the 8th note triplet.  





Are 32nd Note Triplets Supported ?

yes. Since triplets are always notated as groups of three 1/16th note triplets (in 16th note resolution bars).  This means that when the bar is in 32nd resolution, Then each group a three 16th note triplets, now equals six 32nd note triplets.


Code:

Tempo: 80

     | 1e+tl2 +a3e+ 4e+ | 1 t l + t l 2 t l + t l 3 t l + t l 4 t l + t l |
HH | "I'm a Spammer"'--x-x-"I'm a Spammer"'-x-O- | ------------------------------------------------ |
SD | -----o-------o--- | o---o---ooooo---o---ooooo---o---o---f-------o--- |
BD | o--oo---o--o--o-- | o-----------o-----------o-----------o----------- |




*- Alternative Endings -*  

  Alternative endings allow Drum Tab authors to Tab sequences of bars that share a common beginning, but different endings .     So rather than tabbing every bar in the sequence, they'd only notate the first sequence of bars (the common beginning), then the series of alternative endings that make up this sequence.   Where each ending is assigned a number  from 1. to the number of endings in this sequence.  

 Alter endings are written, well notated in two ways.   Endings can be written on the same row of as the repeated bars or on the  next row following the repeat bar sequence.   So when the Alt endings are written on row of their own, then it's import to understand that you must play the entire previous row of bars as the common beginning, then the appropriate alternative ending bar until the sequence is complete

  Lets look at some examples..


 Example #1 (Alter ending on the same row as the common repeat bar)

Code:
                       ___________________________________
                        | 1.             | 2.             |
   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+
            Bar A              Bar B            Bar C



 This example makes up a four bar sequence. The sequence starts with the one bar common beginning, and has Two different endings.  To make following this example easier, I've assigned each bar a letter (these are not needed in your own tabs! ). So this sequence is actually played as A, B - A, C.

  Played as,
Code:
  HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o-------o-------|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  


Example #2 (Alt ending on the same row as the common repeat bar sequence)

Code:
                                        ___________________________________
                        |======x2======= | 1.             | 2.             |
   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|----------------|
   SD: |----o-------o---|----o-------o---|----o-------ooo-|f-----f-----f---|
   BD: |o-------o-------|o-------o-o-----|o------o -o-----|--o-o---o-o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  1 + 2 + 3 + 4 +
            Bar A              Bar B            Bar C         bar D


This example represents an eight bar sequence. So alphabetically, it'd be played  A,B,B,C - A,B,B,D

 Played as,
Code:
  HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o-------o-o-----|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  

   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|----------------|
   SD: |----o-------o---|----o-------o---|----o-------o---|f-----f-----f---|
   BD: |o-------o-------|o-------o-o-----|o-------o-o-----|--o-o---o-o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  



Example #3 (Alt endings on the same row as the common repeat bar)


Code:
                       ___________________________________
                        | 1.             | 2.  4.         |
   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+
            Bar A              Bar B            Bar C

        ________________
       | 3.             |
   HH: |----------------|
   SD: |f-----f-----f---|
   BD: |--o-o---o-o-----|
           Bar D  


This makes up an 8 bar sequence.  So alphabetically, it's played as A,B - A,C - A,D - A,C

Played as,
Code:
  HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o-------o-------|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  

   HH: |x-x-x-x-x-x-x-x-|----------------|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|f-----f-----f---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|--o-o---o-o-----|o-------o-------|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  


Example #4 (Alt endings on a different row than common repeat sequence)


Code:
                       |======x2======= |
   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|
   SD: |----o-------o---|----o-------o---|
   BD: |o-------o-------|o-------o-o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  
            Bar A              Bar B  

        _________________________________
       | 1.             | 2.             |
   HH: |x-x-x-x-x-x-----|----------------|
   SD: |----o-------ooo-|f-----f-----f---|
   BD: |o------o -o-----|--o-o---o-o-----|
        1 + 2 + 3 + 4e+  1 + 2 + 3 + 4 +
              Bar C         bar D


This example creates an eight bar sequence. So alphabetically, it's played as A,B,B,C - A,B,B,D


 Played as,
Code:
  HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-----|
   SD: |----o-------o---|----o-------o---|----o-------o---|----o-------ooo-|
   BD: |o-------o-------|o-------o-o-----|o-------o-o-----|o------o--o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4e+  

   HH: |x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|x-x-x-x-x-x-x-x-|----------------|
   SD: |----o-------o---|----o-------o---|----o-------o---|f-----f-----f---|
   BD: |o-------o-------|o-------o-o-----|o-------o-o-----|--o-o---o-o-----|
        1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  1 + 2 + 3 + 4 +  





*-THE END -  TIME TO DOWNLOAD DTAB -*

  Well,  thanks for reading, I hope you found this page useful.  If you've never used Drum Tabs before, or even if you have,  make sure you download DTAB to help you create, learn, listen and develop your tab and drumming skills.

  

Logged

Pages: [1]
 
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.13 | SMF © 2006-2009, Simple Machines LLC | Privacy Policy Valid XHTML 1.0! Valid CSS!