home *** CD-ROM | disk | FTP | other *** search
/ Large Pack of OldSkool DOS MOD Trackers / liqdt127.zip / LDSS.DOC < prev    next >
Text File  |  1997-01-11  |  16KB  |  296 lines

  1.  
  2.         The LIQUID DIGITIZED SAMPLE SPECIFICATIONS V1.01 (L.D.S.S)
  3.                           (C) Nir Oren, 1994-96
  4.              ┌──────────────────────────────────────────────┐
  5.              │ A Part Of The Liquid Tracker's Documentation │
  6.              └──────────────────────────────────────────────┘
  7.  
  8.        Format's filename extension: any extension (.LDS suggested)
  9.  
  10.     * All values are decimal, unless noted "h" which means Hexadecimal
  11.  
  12. Offset  0h    4 BYTES  LDSS Magic = 'L','D','S','S'
  13.         4h    1 WORD   LDSS Header version (Currently = 0101h)
  14.         6h   30 CHARS  Full name of sample *
  15.        24h   20 CHARS  Wave generator/ program created the sample *
  16.        38h   20 CHARS  Person created/ recorded the sample *
  17.        4Ch    1 BYTE   Sound board sample recorded with (see below)
  18.        4Dh    1 DWORD  length of sample (only the digitized data)
  19.        51h    1 DWORD  default loop start
  20.        55h    1 DWORD  default loop end  (0=NOT LOOPING)
  21.        59h    1 DWORD  default Hertz speed for C-2 (i.e. 8363 Hz, NTSC)
  22.        5Dh    1 BYTE   default sample volume (0-64)
  23.        5Eh    1 BYTE   Flags: &1 - 16bit   &2 - Stereo   &4 - Signed data
  24.        5Fh    1 BYTE   Default pan setup (0 LEFT -> 32 MID -> 64 RIGHT
  25.                                           66 Surround, 255 No default pan)
  26.        60h    1 BYTE   General Midi Instrument (see below)
  27.        61h    1 BYTE   Default sample global volume (0-64)
  28.        62h    1 BYTE   Chord Type (see below)
  29.        63h    1 WORD   size of LDSS header (usually 90h)
  30.        65h    1 WORD   compression algorithm (0=NONE)
  31.        67h    1 DWORD  32 bits CRC of the digitized data only.
  32.                        method: 32bit counter, initial value 0, which is
  33.                        the sum of all the contents (carry ignored)
  34.                        if the sample size is not doubleword aligned, you
  35.                        should encounter the missing bytes as zero.
  36.                        REMARK: If CRC should be ignored, the value is 0.
  37.        6Bh    1 BYTE   Midi channel to use (1-16 Valid values, -1=not defined)
  38.        6Ch   11 BYTES  Reserved, should be 0
  39.        77h   25 BYTES  Filename of sample (may be: DirName+'\'+FileName)
  40.  
  41.        90h  -  OR ANY OFFSET SPECIFIED IN PARAMETER [63h] -
  42.                ACTUAL DIGITIZED SAMPLE DATA
  43.  
  44.    *   The field is basically ASCIIZ, but it does not necessarily have to
  45.        be null-terminated, when all characters are being used.
  46.  
  47. ************************************************************************
  48.       THE SOUND BOARD THE SAMPLE RECORDED WITH (Parameter [4Ch])
  49. ************************************************************************
  50.  
  51.   (0) SB v1.50        (1) SB v2.00      (2) SBPro       (3) SB 16
  52.   (4) ThunderBrd      (5) PAS           (6) PAS+        (7) PAS 16
  53.   (8) Windows Wave    (9) OS/2 drv.    (10) DAC        (11) GUS
  54.  (12) Aria           (13) Adlib Gold   (14) Windows Sound System
  55.  (15) Sound Galaxy   (16) SB AWE32     (17) Sound Galaxy 16
  56.  (18) Audio Wave Grn (19) GUS MAX      (20) Sound Galaxy Pro
  57.  (21) Turtle Beach
  58.  
  59. (255) Unknown
  60.  
  61.   The value 255 (unknown) should be used when:
  62.  
  63.     -  There is no possibility of knowing the recording source (e.g.
  64.        a program converts raw sample to LDSS), or the programmer does
  65.        not define that field; When value 255 is being used,
  66.        one cannot assume anything about the sound board used.
  67.  
  68. ***************************************************************************
  69.                       The General Midi Instruments List
  70. ***************************************************************************
  71.  
  72.  Parameter [60h] - General Midi Instrument
  73.  
  74. 0   Acoustic Grand Piano   23  Tango Accordion         46  Orchestral Harp
  75. 1   Bright Acoustic Piano  24  Acoustic Nylon Guitar   47  Timpani
  76. 2   Electric Grand Piano   25  Acoustic Steel Guitar   48  String Ensemble 1
  77. 3   Honkey-Tonk Piano      26  Electric Jazz Guitar    49  String Ensemble 2
  78. 4   Rhodes Piano           27  Electric Clean Guitar   50  Synth Strings 1
  79. 5   Chorused Piano         28  Electric Muted Guitar   51  Synth Strings 2
  80. 6   Harpischord            29  Overdriven Guitar       52  Choir Aahs
  81. 7   Clavinet               30  Distortion Guitar       53  Voice Oohs
  82. 8   Celesta                31  Guitar Harmonics        54  Synth Voice
  83. 9   Glokenspiel            32  Acoustic Bass           55  Orchestral Hit
  84. 10  Music Box              33  Electric Bass Fingered  56  Trumpet
  85. 11  Vibraphone             34  Electric Bass Picked    57  Trombone
  86. 12  Marimba                35  Fretless Bass           58  Tuba
  87. 13  Xylophone              36  Slap Bass 1             59  Muted Trumpet
  88. 14  Tubular Bells          37  Slap Bass 2             60  French Horn
  89. 15  Dulcimer               38  Synth Bass 1            61  Brass Section
  90. 16  Hammond Organ          39  Synth Bass 2            62  Synth Brass 1
  91. 17  Percussive Organ       40  Violin                  63  Synth Brass 2
  92. 18  Rock Organ             41  Viola                   64  Soprano Sax
  93. 19  Church Organ           42  Cello                   65  Alto Sax
  94. 20  Reed Organ             43  Contrabass              66  Tenor Sax
  95. 21  Accordion              44  Tremolo Strings         67  Baritone Sax
  96. 22  Harmonica              45  Pizzicato Strings       68  Oboe
  97.  
  98.  
  99. 69  English Horn                        92  Synth Pad 5 Bowed Glass Pad
  100. 70  Bassoon                             93  Synth Pad 6 Metal Pad
  101. 71  Clarinet                            94  Synth Pad 7 Halo Pad
  102. 72  Piccolo                             95  Synth Pad 8 Sweep Pad
  103. 73  Flute                               96  Synth SFX 1 Ice Rain
  104. 74  Recorder                            97  Synth SFX 2 Sound Track
  105. 75  Pan Flute                           98  Synth SFX 3 Crystal
  106. 76  Bottle Blow                         99  Synth SFX 4 Atmosphere
  107. 77  Shakuhachi                          100 Synth SFX 5 Brightness
  108. 78  Whistle                             101 Synth SFX 6 Goblin
  109. 79  Ocarina                             102 Synth SFX 7 Echo Drops
  110. 80  Synth Lead 1 Square Wave Lead       103 Synth SFX 8 Star Theme
  111. 81  Synth Lead 2 Sawtooth Wave Lead     104 Sitar
  112. 82  Synth Lead 3 Caliope Lead           105 Banjo
  113. 83  Synth Lead 4 Chiff Lead             106 Shamisen
  114. 84  Synth Lead 5 Charang                107 Koto
  115. 85  Synth Lead 6 Solo Synth Voice       108 Kalimba
  116. 86  Synth Lead 7 Bright Saw Wave        109 Bagpipe
  117. 87  Synth Lead 8 Brass and Lead         110 Fiddle
  118. 88  Synth Pad 1 Fantasia Pad            111 Shanai
  119. 89  Synth Pad 2 Warm Pad                112 Tinkle Bells
  120. 90  Synth Pad 3 Poly Synth Pad          113 Agogo
  121. 91  Synth Pad 4 Space Voice Pad         114 Steel Drums
  122.  
  123.  
  124. 115 Woodblock                           D45 Low Tom
  125. 116 Taiko Drum                          D46 Open High Hat
  126. 117 Melodic Tom                         D47 Low-Mid Tom
  127. 118 Synth Drum                          D48 High-Mid Tom
  128. 119 Reverse Cymbal                      D49 Crash Cymbal 1
  129. 120 Guitar Fret Noise                   D50 High Tom
  130. 121 Breath Noise                        D51 Ride Cymbal 1
  131. 122 Seashore                            D52 Chinese Cymbal
  132. 123 Bird Tweet                          D53 Ride Bell
  133. 124 Telephone Ring                      D54 Tambourine
  134. 125 Helicopter                          D55 Splash Cymbal
  135. 126 Applause                            D56 Cowbell
  136. 127 Gunshot                             D57 Crash Cymbal 2
  137. D35 Acoustic Bass Drum                  D58 Vibraslap
  138. D36 Bass Drum 1                         D59 Ride Cymbal 2
  139. D37 Side Stick                          D60 High Bongo
  140. D38 Acoustic Snare                      D61 Low Bongo
  141. D39 Hand Clap                           D62 Mute High Conga
  142. D40 Electric Snare                      D63 Open High Conga
  143. D41 Low Floor Tom                       D64 Low Conga
  144. D42 Closed High-Hat                     D65 High Timbale
  145. D43 High Floor Tom                      D66 Low Timbale
  146. D44 Pedal High Hat                      D67 High Agogo
  147.  
  148. D68 Low Agogo                           D75 Claves
  149. D69 Cabasa                              D76 High Wood Block
  150. D70 Maracas                             D77 Low Wood Block
  151. D71 Short Whistle                       D78 Mute Cuica
  152. D72 Long Whistle                        D79 Open Cuica
  153. D73 Short Guiro                         D80 Mute Triangle
  154. D74 Long Guiro                          D81 Open Triangle
  155. 255 UNDEFINED INSTRUMENT
  156.  
  157.   >>>> NOTE: The Dxx means that "xx" is a note number (where 00 is C-0,
  158.              01 is C#0, 12 is C-1, and so on...) which is played in the
  159.              drum channel (default is Chn #16 on General Midi) and not a
  160.              regular MIDI program, which is redundant in such case.
  161.  
  162.  Parameter [62h] - Chord type:
  163.  
  164.                           * Single note *
  165.                          ═════════════════
  166.   │ 0│  single note (not to be used as default (read below))
  167.  
  168.  
  169.                       * Two notes of a chord *
  170.                       ════════════════════════
  171.   │ 1│  notes 1,2    │ 2│  notes 1,3    │ 3│  notes 2,3
  172.  
  173.  
  174.   │4-11│ Reserved
  175.  
  176.                            * Full chord *
  177.                            ══════════════
  178.   │12│  Major        │13│  Minor        │14│  Major(ver2)  │15│  Minor(ver2)
  179.   │16│  Major(ver3)  │17│  Minor(ver3)  │18│  Major(ver4)  │19│  Minor(ver4)
  180.   │20│  7            │21│  6            │22│  Maj7         │23│  Min7
  181.   │24│  Maj6         │25│  Min6         │26│  Dim/0        │27│  Aug/+
  182.   │28│  7 (3 notes)  │29│  7b5/7(-5)    │30│  7#5/7(+5)    │31│  9
  183.   │32│  11           │33│  13           │34│  Dim7/07      │35│  7b9/7(-9)
  184.   │36│  7#9/7(+9)    │37│  Maj7add9     │38│  Min7add9     │39│  9b5/9(-5)
  185.   │40│  9#5/9(+5)    │41│  Aug11        │42│  13b9/13(-9)  │43│  13#9/13(+9)
  186.  
  187.  
  188.           & 64 (Bit 6 ON) = Also played on next octave
  189.          & 128 (Bit 7 ON) = Also played on beyond next octave
  190.  
  191.  
  192. Undefined chord
  193.  
  194.  │255│  UNDEFINED
  195.  
  196. NOTES:   - The 'Undefined' (255) value should be used in all the cases unless
  197.            the user has actually defined the chord type. value 0 MAY NOT
  198.            BE USED AS DEFAULT! for example, if a tracker would like to force
  199.            the users to define all the chords, it will know that 255
  200.            is not-yet defined. However, players or any MultiMedia product
  201.            may interpret '255' as '0' for presentation purposes.
  202.          - If bits 6 and 7 are on, respectively, it means that the current
  203.            note (or chord) is played on more than the current octave,
  204.            it can possibly be played on two octaves or three octaves
  205.            simultaneously (or the first and the 3th octave only)
  206.    VER2  - 'ver2' means that the 1st and the 2nd notes of the chord is in
  207.            the octave above, rather than in the same octave.
  208.            Example: chord C-2 (minor) = notes  G-2  C-3  E-3
  209.    VER3  - 'ver3' means that the 1st note of the chord is in the octave
  210.            above rather than in the same octave.
  211.            Example: chord C-2 (minor)= notes  E-2  G-2  C-3
  212.    VER4  - 'ver4' means that the 1st note of the chord played is also in
  213.            the next octave. Example: chord C-2 = notes  C-2  E-2  G-2  C-3
  214.          - The slash (/) char appears on some of the chords refers to the
  215.            alternative name for the same chord.
  216.  
  217. ****************************************************************************
  218.  
  219.     PROGRAMMERS/DEVELOPERS NOTE:
  220.  
  221.  
  222.   - LDSS is not as huge as it seems. it takes only additional 112 bytes
  223.     for independent sample, and consider the fact that each file always
  224.     takes 4096 bytes (or 2048) on a magnetic storage media.
  225.   - LDSS is also not as complicated as it seems. I aware to the fact that
  226.     most of the programs will not use all the fields anyway, so each field
  227.     has a non-used value (I don't expect all programs to calculate CRC,
  228.     but it should be there)
  229.   - Trackers programmers! remember not to throw-away the LDSS details,
  230.     when loading 'LDSS' samples.
  231.     if you are using your own format, remember to include all the LDSS
  232.     information. it's only 50 (Aprox) additional bytes per sample (some
  233.     of the LDSS values are used anyway!). suggested action is to save it
  234.     directly before dumping each sample, and check for LDSS when loading.
  235.  
  236.  
  237.    THE NEW FEATURES OF THE L.D.S.S FORMAT AND THEIR MEANING:
  238.  
  239.   - LDSS introducing the sample crediting. Now the sample will carry
  240.     the name of it's creator, the program which has been used and the
  241.     sound card used. This can really be good for statistics, and
  242.     people will learn more about the sources of their samples.
  243.     (of course, one who wants can remove the copyright, but why ?)
  244.   - LDSS introduced the 'SAMPLE KIND'. Each sample can be cataloged
  245.     by it's kind, whether it's drum, piano or sound efx, so a tracker
  246.     can easily direct sample to it's directory, or a player could use
  247.     the information for some MultiMedia presentations (imagine yourself
  248.     a player shows how to play a module, and can recognized different
  249.     chords and instruments, i.e. when a guitar playing it shows guitar)
  250.   - Another IMPORTANT feature of LDSS is the extensibility header.
  251.     a program may add any information it wants to the header,
  252.     by setting a new value in offset 63h, and setting an ID stamp in
  253.     offset 90h. and all this while remaining the sample usable to all
  254.     LDSS compatible programs.
  255.  
  256.     COPYRIGHT:
  257.  
  258.   - The LDSS file format was developed by me (Nir Oren) in 1996.
  259.     however, the author donates this file format to the public domain,
  260.     and it may be used freely by any product, provided a proper credits
  261.     will be give in the program's documentation.
  262.     In no event should this document be modified by anyone except the
  263.     author itself. This document may be included in any archive with any
  264.     program. Additional notes about LDSS by different people may be
  265.     included in SEPARATE files.
  266.  
  267.  
  268.   - CONTACTS:
  269.  
  270.     If you have any suggestions or comments you can contact
  271.     the author by
  272.  
  273.  ╓───────────────────────────────= CONTACTS =───────────────────────────────╖
  274.  ║                                                                          ║
  275.  ║  Fear Of The Dark BBS - (972)-3-9690371 - 28k - 24 Hrs                   ║
  276.  ║  Anesthesia (A) BBS   - (972)-7-9971505 - 28k - 24 Hrs                   ║
  277.  ║                         (972)-7-9954490 - 14k - 24 Hrs                   ║                             ║
  278.  ║                                                                _______   ║
  279.  ║                                                               \     \_\  ║
  280.  ║                                                               / \_______\║
  281.  ║   You can cont(r)act the author by:    │      SnailMail:  ||__\       |  ║
  282.  ║                                        │                 (°° ________/   ║
  283.  ║ FidoNET: 97:200/215, 2:403/442         │   Nir Oren                      ║
  284.  ║ -------------------------------------  │   P.O. box 8180                 ║
  285.  ║ InterNET: nir.oren@tbu.excellnet.co.il │   Petah Tikva 49181             ║
  286.  ║                                        │   Israel  <reply guaranteed!>   ║
  287.  ║                                        │   (The SNAIL is (C) !!! ;-)     ║
  288.  ╙──────────────────────────────────────────────────────────────────────────╜
  289.  
  290.  
  291.  
  292.  
  293.  
  294.                   *** End of LDSS specifications text ***
  295.  
  296.