Import/export Audyssey MultEQ XT measurements?

renne

New Member
Thread Starter
Joined
Apr 3, 2021
Messages
4
More  
Preamp, Processor or Receiver
Denon AVR-X2300W
Main Amp
Denon AVR-X2300W
Additional Amp
Monacor IMG Stageline STA-200D
Front Speakers
Visaton Petit Orgue without passive crossovers
Center Channel Speaker
Tangband W3-871SC open-baffle
Surround Speakers
Tangband W3-871SC omni-directional
Subwoofers
Visaton Petit Orgue without passive crossovers
Hi,

I'm using the Audyssey MultEQ-Android-app with a Denon AVR-X2300W to do room-correction.
Is there any way to import the measurement-file of the the app into REW, edit the frequency response and export it back into an app-compliant file-format?

Thanx for any hint! :)
 

renne

New Member
Thread Starter
Joined
Apr 3, 2021
Messages
4
More  
Preamp, Processor or Receiver
Denon AVR-X2300W
Main Amp
Denon AVR-X2300W
Additional Amp
Monacor IMG Stageline STA-200D
Front Speakers
Visaton Petit Orgue without passive crossovers
Center Channel Speaker
Tangband W3-871SC open-baffle
Surround Speakers
Tangband W3-871SC omni-directional
Subwoofers
Visaton Petit Orgue without passive crossovers
Python:
in_file = sys.argv[1]
in_json = json.load(open(in_file, 'r'))
channels = dict((item['commandId'], item) for item in in_json['detectedChannels'])
for speaker, channel in channels.items():
    for measurement, data in channel['responseData'].items():
        impulse_response = [int(float(val) * 32767) for val in data]
        array('i', impulse_response).tofile(open('impulse_response_%s_%s.pcm' % (speaker, measurement), 'wb'))

It would be great to implement an import filter in REW to visualize MultXT measurement files (*.ady).
Ratbuddyssey on Github can manipulate the MultXT target curve and options.
It would be great to have this in REW, too.
 

armagedon

Registered
Joined
Jan 29, 2023
Messages
1
thank you it was exacly what I'm looking for.
I made some update that I share with you :

from array import ArrayType import json import sys header = [] with open(r'header.txt', 'r') as header_file: for line in header_file: # remove linebreak from a current name # linebreak is the last character of each line x = line[:-1] # add current item to the list header.append(x) in_file = sys.argv[1] in_json = json.load(open(in_file, 'r')) channels = dict((item['commandId'], item) for item in in_json['detectedChannels']) for speaker, channel in channels.items(): for measurement, data in channel['responseData'].items(): # print(impulse_response) with open('impulse_response_%s_%s.txt' % (speaker, measurement), 'w') as fp: fp.write('\n'.join(header)) fp.write('\n'.join(data))

the header file content :

* Impulse Response data saved by REW 0 0 16384 // Response length 2.0833333333333333E-5 // Sample interval (seconds) -1 * Data start
 
Top Bottom