NetBSD/usr.bin/file/magdir/audio

245 lines
8.1 KiB
Plaintext

#------------------------------------------------------------------------------
# audio: file(1) magic for sound formats (see also "iff")
#
# Jan Nicolai Langfeldt (janl@ifi.uio.no), Dan Quinlan (quinlan@yggdrasil.com),
# and others
#
# Sun/NeXT audio data
0 string .snd Sun/NeXT audio data:
>12 belong 1 8-bit ISDN u-law,
>12 belong 2 8-bit linear PCM [REF-PCM],
>12 belong 3 16-bit linear PCM,
>12 belong 4 24-bit linear PCM,
>12 belong 5 32-bit linear PCM,
>12 belong 6 32-bit IEEE floating point,
>12 belong 7 64-bit IEEE floating point,
>12 belong 23 8-bit ISDN u-law compressed (CCITT G.721 ADPCM voice data encoding),
>12 belong 24 compressed (8-bit G.722 ADPCM)
>12 belong 25 compressed (3-bit G.723 ADPCM),
>12 belong 26 compressed (5-bit G.723 ADPCM),
>12 belong 27 8-bit A-law,
>20 belong 1 mono,
>20 belong 2 stereo,
>20 belong 4 quad,
>16 belong >0 %d Hz
# DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
# that uses little-endian encoding and has a different magic number
0 lelong 0x0064732E DEC audio data:
>12 lelong 1 8-bit ISDN u-law,
>12 lelong 2 8-bit linear PCM [REF-PCM],
>12 lelong 3 16-bit linear PCM,
>12 lelong 4 24-bit linear PCM,
>12 lelong 5 32-bit linear PCM,
>12 lelong 6 32-bit IEEE floating point,
>12 lelong 7 64-bit IEEE floating point,
>12 lelong 23 8-bit ISDN u-law compressed (CCITT G.721 ADPCM voice data encoding),
>20 lelong 1 mono,
>20 lelong 2 stereo,
>20 lelong 4 quad,
>16 lelong >0 %d Hz
# Creative Labs AUDIO stuff
0 string MThd Standard MIDI data
>9 byte >0 (format %d)
>11 byte >1 using %d tracks
0 string CTMF Creative Music (CMF) data
0 string SBI SoundBlaster instrument data
0 string Creative\ Voice\ File Creative Labs voice data
# is this next line right? it came this way...
>19 byte 0x1A
>23 byte >0 - version %d
>22 byte >0 \b.%d
# first entry is also the string "NTRK"
0 belong 0x4e54524b MultiTrack sound data
>4 belong x - version %ld
# Extended MOD format (*.emd) (Greg Roelofs, newt@uchicago.edu); NOT TESTED
# [based on posting 940824 by "Dirk/Elastik", husberg@lehtori.cc.tut.fi]
0 string EMOD Extended MOD sound data,
>4 byte&0xf0 x version %d
>4 byte&0x0f x \b.%d,
>45 byte x %d instruments
>83 byte 0 (module)
>83 byte 1 (song)
# Real Audio (Magic .ra\0375)
0 belong 0x2e7261fd realaudio sound file
# MTM/669/FAR/S3M/ULT/XM format checking [Aaron Eppert, aeppert@dialin.ind.net]
# Oct 31, 1995
0 string MTM MultiTracker Module sound file
0 string if Composer 669 Module sound data
0 string FAR Module sound data
0 string MAS_U ULT(imate) Module sound data
0x2c string SCRM ScreamTracker III Module sound data
0 string Extended Module Extended Module sound data
# Gravis UltraSound patches
# From <ache@nagual.ru>
0 string GF1PATCH110\0ID#000002\0 GUS patch
0 string GF1PATCH100\0ID#000002\0 Old GUS patch
#
# Taken from loader code from mikmod version 2.14
# by Steve McIntyre (stevem@chiark.greenend.org.uk)
0 string JN extended 669 module data
0 string MAS_UTrack_V00
>14 string >/0 ultratracker V1.%.1s module sound data
0 string UN05 MikMod UNI format module sound data
0 string Extended\ Module: Fasttracker II module sound data
21 string !SCREAM! Screamtracker 2 module sound data
1080 string M.K. 4-channel Protracker module sound data
1080 string M!K! 4-channel Protracker module sound data
1080 string FLT4 4-channel Startracker module sound data
1080 string 4CHN 4-channel Fasttracker module sound data
1080 string 6CHN 6-channel Fasttracker module sound data
1080 string 8CHN 8-channel Fasttracker module sound data
1080 string CD81 8-channel Oktalyzer module sound data
1080 string OKTA 8-channel Oktalyzer module sound data
1082 string CH
>1080 string >/0 %.2s-channel Fasttracker "oktalyzer" module sound data
1080 string 16CN 16-channel Taketracker module sound data
1080 string 32CN 32-channel Taketracker module sound data
# TOC sound files -Trevor Johnson <trevor@jpj.net>
#
0 string TOC TOC sound file
# Show MPEG level, layer, kbit/s, hz, stereo/mono for an MPG audio file.
# This section is lengthy because the kbit/s rate depends on the
# level and layer, and file(1) doesn't allow math on the values.
# From <ckane@best.com>
#
####### MPEG begins with three hex 'f' nibbles.
0 beshort&0xfff0 0xfff0 MPEG
####### Level 2
>1 byte&0x08 0x00 2.0
>>1 byte&0x06 0x00 Layer Unknown,
####### Level 2, Layers I, II, and III
>>1 byte&0x06 0x02 Layer III,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 8 kbit/s,
>>>2 byte&0xf0 0x20 16 kbit/s,
>>>2 byte&0xf0 0x30 24 kbit/s,
>>>2 byte&0xf0 0x40 32 kbit/s,
>>>2 byte&0xf0 0x50 40 kbit/s,
>>>2 byte&0xf0 0x60 48 kbit/s,
>>>2 byte&0xf0 0x70 56 kbit/s,
>>>2 byte&0xf0 0x80 64 kbit/s,
>>>2 byte&0xf0 0x90 80 kbit/s,
>>>2 byte&0xf0 0xa0 96 kbit/s,
>>>2 byte&0xf0 0xb0 112 kbit/s,
>>>2 byte&0xf0 0xc0 128 kbit/s,
>>>2 byte&0xf0 0xd0 144 kbit/s,
>>>2 byte&0xf0 0xe0 160 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
>>1 byte&0x06 0x04 Layer II,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 8 kbit/s,
>>>2 byte&0xf0 0x20 16 kbit/s,
>>>2 byte&0xf0 0x30 24 kbit/s,
>>>2 byte&0xf0 0x40 32 kbit/s,
>>>2 byte&0xf0 0x50 40 kbit/s,
>>>2 byte&0xf0 0x60 48 kbit/s,
>>>2 byte&0xf0 0x70 56 kbit/s,
>>>2 byte&0xf0 0x80 64 kbit/s,
>>>2 byte&0xf0 0x90 80 kbit/s,
>>>2 byte&0xf0 0xa0 96 kbit/s,
>>>2 byte&0xf0 0xb0 112 kbit/s,
>>>2 byte&0xf0 0xc0 128 kbit/s,
>>>2 byte&0xf0 0xd0 144 kbit/s,
>>>2 byte&0xf0 0xe0 160 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
>>1 byte&0x06 0x06 Layer I,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 32 kbit/s,
>>>2 byte&0xf0 0x20 48 kbit/s,
>>>2 byte&0xf0 0x30 56 kbit/s,
>>>2 byte&0xf0 0x40 64 kbit/s,
>>>2 byte&0xf0 0x50 80 kbit/s,
>>>2 byte&0xf0 0x60 96 kbit/s,
>>>2 byte&0xf0 0x70 112 kbit/s,
>>>2 byte&0xf0 0x80 128 kbit/s,
>>>2 byte&0xf0 0x90 144 kbit/s,
>>>2 byte&0xf0 0xa0 160 kbit/s,
>>>2 byte&0xf0 0xb0 176 kbit/s,
>>>2 byte&0xf0 0xc0 192 kbit/s,
>>>2 byte&0xf0 0xd0 224 kbit/s,
>>>2 byte&0xf0 0xe0 256 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
####### Level 2, Hz
>>2 byte&0x0c 0x00 22050 Hz
>>2 byte&0x0c 0x04 24000 Hz
>>2 byte&0x0c 0x08 16000 Hz
>>2 byte&0x0c 0x0c ? Hz
####### Level 1 decoding
>1 byte&0x08 0x08 1.0
>>1 byte&0x06 0x00 Layer Unknown.
####### Level 1, Layers I, II, and III
>>1 byte&0x06 0x02 Layer III,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 32 kbit/s,
>>>2 byte&0xf0 0x20 40 kbit/s,
>>>2 byte&0xf0 0x30 48 kbit/s,
>>>2 byte&0xf0 0x40 56 kbit/s,
>>>2 byte&0xf0 0x50 64 kbit/s,
>>>2 byte&0xf0 0x60 80 kbit/s,
>>>2 byte&0xf0 0x70 96 kbit/s,
>>>2 byte&0xf0 0x80 112 kbit/s,
>>>2 byte&0xf0 0x90 128 kbit/s,
>>>2 byte&0xf0 0xa0 160 kbit/s,
>>>2 byte&0xf0 0xb0 192 kbit/s,
>>>2 byte&0xf0 0xc0 224 kbit/s,
>>>2 byte&0xf0 0xd0 256 kbit/s,
>>>2 byte&0xf0 0xe0 320 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
>>1 byte&0x06 0x04 Layer II,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 32 kbit/s,
>>>2 byte&0xf0 0x20 48 kbit/s,
>>>2 byte&0xf0 0x30 56 kbit/s,
>>>2 byte&0xf0 0x40 64 kbit/s,
>>>2 byte&0xf0 0x50 80 kbit/s,
>>>2 byte&0xf0 0x60 96 kbit/s,
>>>2 byte&0xf0 0x70 112 kbit/s,
>>>2 byte&0xf0 0x80 128 kbit/s,
>>>2 byte&0xf0 0x90 160 kbit/s,
>>>2 byte&0xf0 0xa0 192 kbit/s,
>>>2 byte&0xf0 0xb0 224 kbit/s,
>>>2 byte&0xf0 0xc0 256 kbit/s,
>>>2 byte&0xf0 0xd0 320 kbit/s,
>>>2 byte&0xf0 0xe0 384 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
>>1 byte&0x06 0x06 Layer I,
>>>2 byte&0xf0 0x00 0 kbit/s,
>>>2 byte&0xf0 0x10 32 kbit/s,
>>>2 byte&0xf0 0x20 64 kbit/s,
>>>2 byte&0xf0 0x30 96 kbit/s,
>>>2 byte&0xf0 0x40 128 kbit/s,
>>>2 byte&0xf0 0x50 160 kbit/s,
>>>2 byte&0xf0 0x60 192 kbit/s,
>>>2 byte&0xf0 0x70 224 kbit/s,
>>>2 byte&0xf0 0x80 256 kbit/s,
>>>2 byte&0xf0 0x90 288 kbit/s,
>>>2 byte&0xf0 0xa0 320 kbit/s,
>>>2 byte&0xf0 0xb0 352 kbit/s,
>>>2 byte&0xf0 0xc0 384 kbit/s,
>>>2 byte&0xf0 0xd0 416 kbit/s,
>>>2 byte&0xf0 0xe0 448 kbit/s,
>>>2 byte&0xf0 0xf0 ? kbit/s,
####### Level 2, Hz
>>2 byte&0x0c 0x00 44100 Hz
>>2 byte&0x0c 0x04 48000 Hz
>>2 byte&0x0c 0x08 32000 Hz
>>2 byte&0x0c 0x0c ? Hz
####### Stereo or Mono
>3 byte&0xc0 0x00 stereo
>3 byte&0xc0 0x40 joint-stereo
>3 byte&0xc0 0x80 dual-channel
>3 byte&0xc0 0xc0 mono