Remove trailing whitespace.
[dragonfly.git] / contrib / file-4 / magic / Magdir / audio
1
2 #------------------------------------------------------------------------------
3 # audio:  file(1) magic for sound formats (see also "iff")
4 #
5 # Jan Nicolai Langfeldt (janl@ifi.uio.no), Dan Quinlan (quinlan@yggdrasil.com),
6 # and others
7 #
8
9 # Sun/NeXT audio data
10 0       string          .snd            Sun/NeXT audio data:
11 >12     belong          1               8-bit ISDN mu-law,
12 >12     belong          2               8-bit linear PCM [REF-PCM],
13 >12     belong          3               16-bit linear PCM,
14 >12     belong          4               24-bit linear PCM,
15 >12     belong          5               32-bit linear PCM,
16 >12     belong          6               32-bit IEEE floating point,
17 >12     belong          7               64-bit IEEE floating point,
18 >12     belong          8               Fragmented sample data,
19 >12     belong          10              DSP program,
20 >12     belong          11              8-bit fixed point,
21 >12     belong          12              16-bit fixed point,
22 >12     belong          13              24-bit fixed point,
23 >12     belong          14              32-bit fixed point,
24 >12     belong          18              16-bit linear with emphasis,
25 >12     belong          19              16-bit linear compressed,
26 >12     belong          20              16-bit linear with emphasis and compression,
27 >12     belong          21              Music kit DSP commands,
28 >12     belong          23              8-bit ISDN mu-law compressed (CCITT G.721 ADPCM voice data encoding),
29 >12     belong          24              compressed (8-bit CCITT G.722 ADPCM)
30 >12     belong          25              compressed (3-bit CCITT G.723.3 ADPCM),
31 >12     belong          26              compressed (5-bit CCITT G.723.5 ADPCM),
32 >12     belong          27              8-bit A-law (CCITT G.711),
33 >20     belong          1               mono,
34 >20     belong          2               stereo,
35 >20     belong          4               quad,
36 >16     belong          >0              %d Hz
37
38 # DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
39 # that uses little-endian encoding and has a different magic number
40 0       lelong          0x0064732E      DEC audio data:
41 >12     lelong          1               8-bit ISDN mu-law,
42 >12     lelong          2               8-bit linear PCM [REF-PCM],
43 >12     lelong          3               16-bit linear PCM,
44 >12     lelong          4               24-bit linear PCM,
45 >12     lelong          5               32-bit linear PCM,
46 >12     lelong          6               32-bit IEEE floating point,
47 >12     lelong          7               64-bit IEEE floating point,
48 >12     belong          8               Fragmented sample data,
49 >12     belong          10              DSP program,
50 >12     belong          11              8-bit fixed point,
51 >12     belong          12              16-bit fixed point,
52 >12     belong          13              24-bit fixed point,
53 >12     belong          14              32-bit fixed point,
54 >12     belong          18              16-bit linear with emphasis,
55 >12     belong          19              16-bit linear compressed,
56 >12     belong          20              16-bit linear with emphasis and compression,
57 >12     belong          21              Music kit DSP commands,
58 >12     lelong          23              8-bit ISDN mu-law compressed (CCITT G.721 ADPCM voice data encoding),
59 >12     belong          24              compressed (8-bit CCITT G.722 ADPCM)
60 >12     belong          25              compressed (3-bit CCITT G.723.3 ADPCM),
61 >12     belong          26              compressed (5-bit CCITT G.723.5 ADPCM),
62 >12     belong          27              8-bit A-law (CCITT G.711),
63 >20     lelong          1               mono,
64 >20     lelong          2               stereo,
65 >20     lelong          4               quad,
66 >16     lelong          >0              %d Hz
67
68 # Creative Labs AUDIO stuff
69 0       string  MThd                    Standard MIDI data
70 >8      beshort x                       (format %d)
71 >10     beshort x                       using %d track
72 >10     beshort         >1              \bs
73 >12     beshort&0x7fff  x               at 1/%d
74 >12     beshort&0x8000  >0              SMPTE
75
76 0       string  CTMF                    Creative Music (CMF) data
77 0       string  SBI                     SoundBlaster instrument data
78 0       string  Creative\ Voice\ File   Creative Labs voice data
79 # is this next line right?  it came this way...
80 >19     byte    0x1A
81 >23     byte    >0                      - version %d
82 >22     byte    >0                      \b.%d
83
84 # first entry is also the string "NTRK"
85 0       belong          0x4e54524b      MultiTrack sound data
86 >4      belong          x               - version %ld
87
88 # Extended MOD format (*.emd) (Greg Roelofs, newt@uchicago.edu); NOT TESTED
89 # [based on posting 940824 by "Dirk/Elastik", husberg@lehtori.cc.tut.fi]
90 0       string          EMOD            Extended MOD sound data,
91 >4      byte&0xf0       x               version %d
92 >4      byte&0x0f       x               \b.%d,
93 >45     byte            x               %d instruments
94 >83     byte            0               (module)
95 >83     byte            1               (song)
96
97 # Real Audio (Magic .ra\0375)
98 0       belong          0x2e7261fd      RealAudio sound file
99 0       string          .RMF            RealMedia file
100
101 # MTM/669/FAR/S3M/ULT/XM format checking [Aaron Eppert, aeppert@dialin.ind.net]
102 # Oct 31, 1995
103 # fixed by <doj@cubic.org> 2003-06-24
104 # Too short...
105 #0      string          MTM             MultiTracker Module sound file
106 #0      string          if              Composer 669 Module sound data
107 #0      string          JN              Composer 669 Module sound data (extended format)
108 0       string          MAS_U           ULT(imate) Module sound data
109
110 #0      string          FAR             Module sound data
111 #>4     string          >\15            Title: "%s"
112
113 0x2c    string          SCRM            ScreamTracker III Module sound data
114 >0      string          >\0             Title: "%s"
115
116 # Gravis UltraSound patches
117 # From <ache@nagual.ru>
118
119 0       string          GF1PATCH110\0ID#000002\0        GUS patch
120 0       string          GF1PATCH100\0ID#000002\0        Old GUS patch
121
122 #
123 # Taken from loader code from mikmod version 2.14
124 # by Steve McIntyre (stevem@chiark.greenend.org.uk)
125 # <doj@cubic.org> added title printing on 2003-06-24
126 0       string  MAS_UTrack_V00
127 >14     string  >/0             ultratracker V1.%.1s module sound data
128
129 0       string  UN05            MikMod UNI format module sound data
130
131 0       string  Extended\ Module: Fasttracker II module sound data
132 >17     string  >\0             Title: "%s"
133
134 21      string/c        =!SCREAM!       Screamtracker 2 module sound data
135 21      string  BMOD2STM        Screamtracker 2 module sound data
136 1080    string  M.K.            4-channel Protracker module sound data
137 >0      string  >\0             Title: "%s"
138 1080    string  M!K!            4-channel Protracker module sound data
139 >0      string  >\0             Title: "%s"
140 1080    string  FLT4            4-channel Startracker module sound data
141 >0      string  >\0             Title: "%s"
142 1080    string  FLT8            8-channel Startracker module sound data
143 >0      string  >\0             Title: "%s"
144 1080    string  4CHN            4-channel Fasttracker module sound data
145 >0      string  >\0             Title: "%s"
146 1080    string  6CHN            6-channel Fasttracker module sound data
147 >0      string  >\0             Title: "%s"
148 1080    string  8CHN            8-channel Fasttracker module sound data
149 >0      string  >\0             Title: "%s"
150 1080    string  CD81            8-channel Octalyser module sound data
151 >0      string  >\0             Title: "%s"
152 1080    string  OKTA            8-channel Oktalyzer module sound data
153 >0      string  >\0             Title: "%s"
154 # Not good enough.
155 #1082   string  CH
156 #>1080  string  >/0             %.2s-channel Fasttracker "oktalyzer" module sound data
157 1080    string  16CN            16-channel Taketracker module sound data
158 >0      string  >\0             Title: "%s"
159 1080    string  32CN            32-channel Taketracker module sound data
160 >0      string  >\0             Title: "%s"
161
162 # TOC sound files -Trevor Johnson <trevor@jpj.net>
163 #
164 0       string          TOC             TOC sound file
165
166 # sidfiles <pooka@iki.fi>
167 # added name,author,(c) and new RSID type by <doj@cubic.org> 2003-06-24
168 0       string          SIDPLAY\ INFOFILE       Sidplay info file
169
170 0       string          PSID                    PlaySID v2.2+ (AMIGA) sidtune
171 >4      beshort         >0                      w/ header v%d,
172 >14     beshort         =1                      single song,
173 >14     beshort         >1                      %d songs,
174 >16     beshort         >0                      default song: %d
175 >0x16   string          >\0                     name: "%s"
176 >0x36   string          >\0                     author: "%s"
177 >0x56   string          >\0                     copyright: "%s"
178
179 0       string          RSID                    RSID sidtune PlaySID compatible
180 >4      beshort         >0                      w/ header v%d,
181 >14     beshort         =1                      single song,
182 >14     beshort         >1                      %d songs,
183 >16     beshort         >0                      default song: %d
184 >0x16   string          >\0                     name: "%s"
185 >0x36   string          >\0                     author: "%s"
186 >0x56   string          >\0                     copyright: "%s"
187
188 # IRCAM <mpruett@sgi.com>
189 # VAX and MIPS files are little-endian; Sun and NeXT are big-endian
190 0       belong          0x64a30100              IRCAM file (VAX)
191 0       belong          0x64a30200              IRCAM file (Sun)
192 0       belong          0x64a30300              IRCAM file (MIPS little-endian)
193 0       belong          0x64a30400              IRCAM file (NeXT)
194
195 # NIST SPHERE <mpruett@sgi.com>
196 0       string          NIST_1A\n\ \ \ 1024\n   NIST SPHERE file
197
198 # Sample Vision <mpruett@sgi.com>
199 0       string          SOUND\ SAMPLE\ DATA\    Sample Vision file
200
201 # Audio Visual Research <tonigonenstein@users.sourceforge.net>
202 0       string          2BIT                    Audio Visual Research file,
203 >12     beshort         =0                      mono,
204 >12     beshort         =-1                     stereo,
205 >14     beshort         x                       %d bits
206 >16     beshort         =0                      unsigned,
207 >16     beshort         =-1                     signed,
208 >22     belong&0x00ffffff       x               %d Hz,
209 >18     beshort         =0                      no loop,
210 >18     beshort         =-1                     loop,
211 >21     ubyte           <=127                   note %d,
212 >22     byte            =0                      replay 5.485 KHz
213 >22     byte            =1                      replay 8.084 KHz
214 >22     byte            =2                      replay 10.971 Khz
215 >22     byte            =3                      replay 16.168 Khz
216 >22     byte            =4                      replay 21.942 KHz
217 >22     byte            =5                      replay 32.336 KHz
218 >22     byte            =6                      replay 43.885 KHz
219 >22     byte            =7                      replay 47.261 KHz
220
221 # SGI SoundTrack <mpruett@sgi.com>
222 0       string          _SGI_SoundTrack         SGI SoundTrack project file
223 # ID3 version 2 tags <waschk@informatik.uni-rostock.de>
224 0       string          ID3     MP3 file with ID3 version 2.
225 >3      ubyte   <0xff   \b%d.
226 >4      ubyte   <0xff   \b%d tag
227
228 # NSF (NES sound file) magic
229 0       string          NESM\x1a        NES Sound File
230 >14     string          >\0             ("%s" by
231 >46     string          >\0             %s, copyright
232 >78     string          >\0             %s),
233 >5      byte            x               version %d,
234 >6      byte            x               %d tracks,
235 >122    byte&0x2        =1              dual PAL/NTSC
236 >122    byte&0x1        =1              PAL
237 >122    byte&0x1        =0              NTSC
238
239 # Impuse tracker module (audio/x-it)
240 0       string          IMPM            Impulse Tracker module sound data -
241 >4      string          >\0             "%s"
242 >40     leshort         !0              compatible w/ITv%x
243 >42     leshort         !0              created w/ITv%x
244
245 # Imago Orpheus module (audio/x-imf)
246 60      string          IM10            Imago Orpheus module sound data -
247 >0      string          >\0             "%s"
248
249 # From <collver1@attbi.com>
250 # These are the /etc/magic entries to decode modules, instruments, and
251 # samples in Impulse Tracker's native format.
252
253 0       string          IMPS            Impulse Tracker Sample
254 >18     byte            &2              16 bit
255 >18     byte            ^2              8 bit
256 >18     byte            &4              stereo
257 >18     byte            ^4              mono
258 0       string          IMPI            Impulse Tracker Instrument
259 >28     leshort         !0              ITv%x
260 >30     byte            !0              %d samples
261
262 # Yamaha TX Wave:  file(1) magic for Yamaha TX Wave audio files
263 # From <collver1@attbi.com>
264 0       string          LM8953          Yamaha TX Wave
265 >22     byte            0x49            looped
266 >22     byte            0xC9            non-looped
267 >23     byte            1               33kHz
268 >23     byte            2               50kHz
269 >23     byte            3               16kHz
270
271 # scream tracker:  file(1) magic for Scream Tracker sample files
272 #
273 # From <collver1@attbi.com>
274 76      string          SCRS            Scream Tracker Sample
275 >0      byte            1               sample
276 >0      byte            2               adlib melody
277 >0      byte            >2              adlib drum
278 >31     byte            &2              stereo
279 >31     byte            ^2              mono
280 >31     byte            &4              16bit little endian
281 >31     byte            ^4              8bit
282 >30     byte            0               unpacked
283 >30     byte            1               packed
284
285 # audio
286 # From: Cory Dikkers <cdikkers@swbell.net>
287 0       string          MMD0            MED music file, version 0
288 0       string          MMD1            OctaMED Pro music file, version 1
289 0       string          MMD3            OctaMED Soundstudio music file, version 3
290 0       string          OctaMEDCmpr     OctaMED Soundstudio compressed file
291 0       string          MED             MED_Song
292 0       string          SymM            Symphonie SymMOD music file
293 #
294 0       string          THX             AHX version
295 >3      byte            =0              1 module data
296 >3      byte            =1              2 module data
297 #
298 0       string          OKTASONG        Oktalyzer module data
299 #
300 0       string          DIGI\ Booster\ module\0 %s
301 >20     byte            >0              %c
302 >>21    byte            >0              \b%c
303 >>>22   byte            >0              \b%c
304 >>>>23  byte            >0              \b%c
305 >610    string          >\0             \b, "%s"
306 #
307 0       string          DBM0            DIGI Booster Pro Module
308 >4      byte            >0              V%X.
309 >>5     byte            x               \b%02X
310 >16     string          >\0             \b, "%s"
311 #
312 0       string          FTMN            FaceTheMusic module
313 >16     string          >\0d            \b, "%s"
314
315 # From: <doj@cubic.org> 2003-06-24
316 0       string          AMShdr\32       Velvet Studio AMS Module v2.2
317 0       string          Extreme         Extreme Tracker AMS Module v1.3
318 0       string          DDMF            Xtracker DMF Module
319 >4      byte            x               v%i
320 >0xD    string          >\0             Title: "%s"
321 >0x2B   string          >\0             Composer: "%s"
322 0       string          DSM\32          Dynamic Studio Module DSM
323 0       string          SONG            DigiTrekker DTM Module
324 0       string          DMDL            DigiTrakker MDL Module
325 0       string          PSM\32          Protracker Studio PSM Module
326 44      string          PTMF            Poly Tracker PTM Module
327 >0      string          >\32            Title: "%s"
328 0       string          MT20            MadTracker 2.0 Module MT2
329 0       string          RAD\40by\40REALiTY!! RAD Adlib Tracker Module RAD
330 0       string          RTMM            RTM Module
331 0x426   string          MaDoKaN96       XMS Adlib Module
332 >0      string          >\0             Composer: "%s"
333 0       string          AMF             AMF Module
334 >4      string          >\0             Title: "%s"
335 0       string          MODINFO1        Open Cubic Player Module Inforation MDZ
336 0       string          Extended\40Instrument: Fast Tracker II Instrument
337
338 # From: Takeshi Hamasaki <hma@syd.odn.ne.jp>
339 # NOA Nancy Codec file
340 0       string          \210NOA\015\012\032     NOA Nancy Codec Movie file
341 # Yamaha SMAF format
342 0       string          MMMD            Yamaha SMAF file
343 # Sharp Jisaku Melody format for PDC
344 0       string          \001Sharp\040JisakuMelody       SHARP Cell-Phone ringing Melody
345 >20     string          Ver01.00        Ver. 1.00
346 >>32    byte            x               , %d tracks
347
348 # Free lossless audio codec <http://flac.sourceforge.net>
349 # From: Przemyslaw Augustyniak <silvathraec@rpg.pl>
350 0       string                  fLaC            FLAC audio bitstream data
351 >4      byte&0x7f               >0              \b, unknown version
352 >4      byte&0x7f               0               \b
353 # some common bits/sample values
354 >>20    beshort&0x1f0           0x030           \b, 4 bit
355 >>20    beshort&0x1f0           0x050           \b, 6 bit
356 >>20    beshort&0x1f0           0x070           \b, 8 bit
357 >>20    beshort&0x1f0           0x0b0           \b, 12 bit
358 >>20    beshort&0x1f0           0x0f0           \b, 16 bit
359 >>20    beshort&0x1f0           0x170           \b, 24 bit
360 >>20    byte&0xe                0x0             \b, mono
361 >>20    byte&0xe                0x2             \b, stereo
362 >>20    byte&0xe                0x4             \b, 3 channels
363 >>20    byte&0xe                0x6             \b, 4 channels
364 >>20    byte&0xe                0x8             \b, 5 channels
365 >>20    byte&0xe                0xa             \b, 6 channels
366 >>20    byte&0xe                0xc             \b, 7 channels
367 >>20    byte&0xe                0xe             \b, 8 channels
368 # some common sample rates
369 >>17    belong&0xfffff0         0x0ac440        \b, 44.1 kHz
370 >>17    belong&0xfffff0         0x0bb800        \b, 48 kHz
371 >>17    belong&0xfffff0         0x07d000        \b, 32 kHz
372 >>17    belong&0xfffff0         0x056220        \b, 22.05 kHz
373 >>17    belong&0xfffff0         0x05dc00        \b, 24 kHz
374 >>17    belong&0xfffff0         0x03e800        \b, 16 kHz
375 >>17    belong&0xfffff0         0x02b110        \b, 11.025 kHz
376 >>17    belong&0xfffff0         0x02ee00        \b, 12 kHz
377 >>17    belong&0xfffff0         0x01f400        \b, 8 kHz
378 >>17    belong&0xfffff0         0x177000        \b, 96 kHz
379 >>17    belong&0xfffff0         0x0fa000        \b, 64 kHz
380 >>21    byte&0xf                >0              \b, >4G samples
381 >>21    byte&0xf                0               \b
382 >>>22   belong                  >0              \b, %u samples
383 >>>22   belong                  0               \b, length unknown
384
385 # (ISDN) VBOX voice message file (Wolfram Kleff)
386 0       string          VBOX            VBOX voice message data
387
388 # ReBorn Song Files (.rbs)
389 # David J. Singer <doc@deadvirgins.org.uk>
390 8       string          RB40             RBS Song file
391 >29     string          ReBorn           created by ReBorn
392 >37     string          Propellerhead    created by ReBirth
393
394 # Synthesizer Generator and Kimwitu share their file format
395 0       string          A#S#C#S#S#L#V#3     Synthesizer Generator or Kimwitu data
396 # Kimwitu++ uses a slightly different magic
397 0       string          A#S#C#S#S#L#HUB     Kimwitu++ data
398
399 # From "Simon Hosie
400 0       string  TFMX-SONG       TFMX module sound data
401
402 # From danny.milo@gmx.net (Danny Milosavljevic)
403 # monkeysaudio for magic.mime
404 0       string  MAC\    X/Monkey audio,
405 >4      leshort >0      version %d,
406 >6      leshort >0      compression level %d,
407 >8      leshort >0      flags %x,
408 >10     leshort >0      channels %d,
409 >12     lelong  >0      samplerate %d,
410 >24     lelong  >0      frames %d
411
412 # adlib sound files
413 # From Gürkan Sengün <gurkan@linuks.mine.nu>, http://www.linuks.mine.nu
414 0       string          RAWADATA        RdosPlay RAW
415
416 1068    string          RoR             AMUSIC Adlib Tracker
417
418 0       string          JCH             EdLib
419
420 0       string          mpu401tr        MPU-401 Trakker
421
422 0       string          SAdT            Surprise! Adlib Tracker
423 >4      byte            x               Version %d
424
425 0       string          XAD!            eXotic ADlib
426
427 0       string          ofTAZ!          eXtra Simple Music