A Perl script that reads WAVEX header information and prints a summary to the terminal. Should work on any platform with Perl installed, thusfar tested on Linux.
$ ./ambinfo.pl test-1sec.wav
AMBINFO 0.5, 2007/10/11 - Copyright (c) 2007 by Michael Chapman.
This is an experimental early release. The output is
verbose and not finely tuned!.
WARNING: This does not look like a B-format file.
It may be, but it does not have the correct id tag.
RIFF | RIFF
Chunk size | 88236
Implicit file size is 88244 bytes.
WAVE | WAVE
fmt | fmt
Chunk size | 16
Format | PCM
Channels | 1
WARNING: Implicitly a zero order file
sole channel is W
sampling at | 44100 blocks/second
data rate | 88200 Bytes/second
data blocks | 2 (size of a block in) Bytes
bps | 16 bits per sample
extension | no bytes of header extension follows:
valid bits | [ not applicable to this format ]
speakers | [ not applicable to this format ]
guid | [ not applicable to this format ]
other strings found in the header include:
RUV _La fff9f dIc
The input file does NOT appear to be WAVEX.
|
44.1 KHz / 16-bit / 1 channel / 86 KB
$ ./ambinfo.pl four.wav
AMBINFO 0.5, 2007/10/11 - Copyright (c) 2007 by Michael Chapman.
This is an experimental early release. The output is
verbose and not finely tuned!.
WARNING: This does not look like a B-format file.
It may be, but it does not have the correct id tag.
RIFF | RIFF
Chunk size | 13230060
Implicit file size is 13230068 bytes.
WAVE | WAVE
fmt | fmt
Chunk size | 40
Format | extensible (see guid below)
Channels | 4
Implicitly a first order file
channels are WXYZ
sampling at | 44100 blocks/second
data rate | 529200 Bytes/second
data blocks | 12 (size of a block in) Bytes
bps | 24 bits per sample
extension | 22 bytes of header extension follows:
valid bits | 24 per sample
speakers | LF RF LB RB
guid | not ambisonic !
other strings found in the header include:
data E6PZ
The input file does appear to be WAVEX.
|
44.1 KHz / 24-bit / 4 channel / 13 MB
$ ./ambinfo.pl four.amb
AMBINFO 0.5, 2007/10/11 - Copyright (c) 2007 by Michael Chapman.
This is an experimental early release. The output is
verbose and not finely tuned!.
RIFF | RIFF
Chunk size | 13230060
Implicit file size is 13230068 bytes.
WAVE | WAVE
fmt | fmt
Chunk size | 40
Format | extensible (see guid below)
Channels | 4
Implicitly a first order file
channels are WXYZ
sampling at | 44100 blocks/second
data rate | 529200 Bytes/second
data blocks | 12 (size of a block in) Bytes
bps | 24 bits per sample
extension | 22 bytes of header extension follows:
valid bits | 24 per sample
speakers | no information (CORRECT for ambisonics B-format)
guid | SUBTYPE_ANBISONIC_B_FORMAT_PCM
other strings found in the header include:
data E6PZ
The input file does appear to be WAVEX.
|
44.1 KHz / 24-bit / 4 channel / 13 MB
(same content as previous example)
[user@mymachine examples]# ambinfo sphere.amb
AMBINFO 0.5, 2007/10/11 - Copyright (c) 2007 by Michael Chapman.
This is an experimental early release. The output is
verbose and not finely tuned!.
RIFF | RIFF
Chunk size | 58320060
Implicit file size is 58320068 bytes.
WAVE | WAVE
fmt | fmt
Chunk size | 40
Format | extensible (see guid below)
Channels | 16
Implicitly a third order file
channels are WXYZRSTUVKLMNOPQ
sampling at | 48000 blocks/second
data rate | 2304000 Bytes/second
data blocks | 48 (size of a block in) Bytes
bps | 24 bits per sample
extension | 22 bytes of header extension follows:
valid bits | 24 per sample
speakers | no information (CORRECT for ambisonics B-format)
guid | SUBTYPE_ANBISONIC_B_FORMAT_PCM
other strings found in the header include:
fact data
The input file does appear to be WAVEX.
|
48 KHz / 24-bit / 16 channel / 56 MB
See also Wave Format Extensible and the .amb suffix orWAVEX and Ambisonics
October 2007.
Copyright © 2007 Michael Chapman.