Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MS-plus ZIR format #83

Open
mungewell opened this issue Sep 15, 2024 · 4 comments
Open

MS-plus ZIR format #83

mungewell opened this issue Sep 15, 2024 · 4 comments

Comments

@mungewell
Copy link
Owner

figure out what we can about the 'ZIR' files

@mungewell
Copy link
Owner Author

Well, these ones are completely empty....

$ hexdump -C IR000.ZIR | head
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00002000

$ hexdump -C IR001.ZIR | head
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00002000

The others don't appear to show any specific structure, ie.

$ hexdump -C AC370_1U.ZIR | head
00000000  3b 6c 94 3c 6e 38 9d 3c  9b 09 a0 3c 24 04 9d 3c  |;l.<n8.<...<$..<|
00000010  c6 3e 92 3c 5e 84 80 3c  5e ad 51 3c f3 e4 1c 3c  |.>.<^..<^.Q<...<|
00000020  4a ad d2 3b 80 dc 7a 3b  b6 35 16 3b 73 d4 28 3b  |J..;..z;.5.;s.(;|
00000030  06 cf 8d 3b 89 72 f4 3b  8e ab 3e 3c 66 98 7b 3c  |...;.r.;..><f.{<|
00000040  06 6b 96 3c 29 dd a7 3c  89 e3 b1 3c 99 bd b8 3c  |.k.<)..<...<...<|
00000050  92 76 b7 3c 90 0b b6 3c  28 74 b0 3c c3 ba a6 3c  |.v.<...<(t.<...<|
00000060  a4 2d a0 3c ff d1 9a 3c  26 a7 9b 3c 86 db a0 3c  |.-.<...<&..<...<|
00000070  12 bc a4 3c a7 f1 a9 3c  6d 52 af 3c af de b1 3c  |...<...<mR.<...<|
00000080  b2 3b b2 3c 75 11 b2 3c  4b e6 ad 3c 84 60 a1 3c  |.;.<u..<K..<.`.<|
00000090  6f 0c 8e 3c f9 ef 69 3c  8a 10 37 3c ba 72 0c 3c  |o..<..i<..7<.r.<|

@mungewell
Copy link
Owner Author

@mungewell
Copy link
Owner Author

So abusing Sox/Audacity, it looks like the ZIR is just a bunch of float values

$ sox -r 48k -e float -b 32 -c 1 --endian little temp.raw temp.wav

ZIR_as_WAV

Looks like freq plot repeated 3 times. 1536 samples = 512 samples each....

@mungewell
Copy link
Owner Author

quick way to generate with Construct

$ python3
Python 3.11.4 (main, Dec  7 2023, 15:43:41) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from construct import *
>>> ZIR = Array(1536, Float32l)
>>> data = ZIR.build([0.0] * 1536)
>>> outfile = open("FLAT.ZIR", "wb")
>>> outfile.write(data)
6144
>>> outfile.close()
>>> quit()

$ ls -la FLAT.ZIR 
-rw-rw-r-- 1 simon simon 6144 Sep 22 12:02 FLAT.ZIR

If you actually wanted a 'real' ZIR, I guess you'd need to read in a '.WAV' (or three), perform an 512-point FFT and write out the individual gains.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant