Welcome, Guest
Username: Password: Remember me

TOPIC:

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6050

  • greenm01
  • greenm01's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 37
  • Thank you received: 0

I am not looking for automated DRC with the openDRC, but manual corrections from the analysis of multiple measurements.


Maybe the MiniDSP would be more appropriate if you're only looking for parametric equalization.

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6052

  • pos
  • pos's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 364
  • Thank you received: 206
I am most interested in the phase correction capabilities of this particular unit (FIR), to put in front of conventional IIR filters and linearize their phase.
This is what thuneau phase arbitro does, and this is also hypex' approach for their grimm audio LS1 loudspeaker system.
Of course it only works if the IIR system has properly aligned crossovers with symmetrical acoustical slopes (and phase shifts).

you can read more about this approach in the LS1 white paper here: www.grimmaudio.com/whitepapers/speakers.pdf

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6053

  • john.reekie
  • john.reekie's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 3778
  • Thank you received: 1593
The Grimm LS1 doesn't do phase phase correction... just LR4 filters... you should be able to do what's described in that whitepaper with any miniDSP with biquads.

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6055

  • pos
  • pos's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 364
  • Thank you received: 206

The Grimm LS1 doesn't do phase phase correction... just LR4 filters... you should be able to do what's described in that whitepaper with any miniDSP with biquads.

yes it does linearize the phase with a short FIR filter in front of the IIR ones:

from the presentation page :

The concept of the LS1 draws maximum benefit from intelligent application of DSP technology. An IIR crossover imposes exact LR4 acoustic slopes crossing at 1550Hz, and the phase is subsequently corrected using an idealised inverted all-pass filter, resulting in a maximally linear phase response without any pre-echo’s. This removes the “digital loudspeaker sound signature” typical of the more ubiquitous impulse inverted FIR designs.


and from the white paper :

The sum of an ideal LR4 system is a second order all-pass with a Q of 0.7. In order to avoid the problems associated with correcting phase exactly, build an inverse all-pass filter based on the theoretical ideal. This filter will be non-causal so there’s a good reason for using FIR.


I opened a topic on this in the suggestion box section to avoid too much HS here:
www.minidsp.com/forum/3-suggestion-box/6...n-plugin-for-opendrc

Please Log in or Create an account to join the conversation.

Last edit: by pos.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6059

  • kcadam81
  • kcadam81's Avatar
  • Offline
  • New Member
  • New Member
  • Posts: 13
  • Thank you received: 0
Has anyone run PORC in Windows? I'm having troubles getting it to execute.

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6060

  • greenm01
  • greenm01's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 37
  • Thank you received: 0

Has anyone run PORC in Windows? I'm having troubles getting it to execute.


Yes. You need to install the Python dependencies and ensure your PATH is set correctly.

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6061

  • kcadam81
  • kcadam81's Avatar
  • Offline
  • New Member
  • New Member
  • Posts: 13
  • Thank you received: 0
Dependancies are installed

Can you help me with the syntax maybe? I'm just an engineer - my programming skills are quite lacking haha

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6062

  • greenm01
  • greenm01's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 37
  • Thank you received: 0

Can you help me with the syntax maybe? I'm just an engineer - my programming skills are quite lacking haha


Sure. What problems are you having exactly? You can email me if necessary: mason dot green at gmail

I'm also an Engineer, but one who likes to program!

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 6 months ago #6182

  • emak212
  • emak212's Avatar
  • Offline
  • New Member
  • New Member
  • Posts: 10
  • Thank you received: 0
Hi, thanks so much for putting this together for the Open DRC. I would like to try it out but I am having trouble finding the .exe file. I have downloaded the .zip and was wondering where I go from here (I am also using windows). I hope there isn't much programming involved as I'm quite a noob to that :dry:

Please Log in or Create an account to join the conversation.

Last edit: by emak212.

Re: Python Open Room Correction (PORC) 10 years 4 months ago #6509

  • greenm01
  • greenm01's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
  • Posts: 37
  • Thank you received: 0

Has anyone run PORC in Windows? I'm having troubles getting it to execute.


Yes, it works on Windows. What is your particular question?

FYI, a friend and I will be working to create a web based interface for PORC. This will automate the process and not require any installation or user setup other than a java-script enabled web browser.

Please Log in or Create an account to join the conversation.

Last edit: by greenm01. Reason: typo

Re: Python Open Room Correction (PORC) 10 years 3 months ago #6813

  • john.reekie
  • john.reekie's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 3778
  • Thank you received: 1593
For those on a Mac, I found it much easier to use the activestate distributon of Python, rather than MacPorts.

The needed packages can then be installed (as root):

pip install numpy
pip install scipy
pip install matplotlib
pip install scikits.audiolab

You will need a fortran compiler for the scipy step, I got gfortran from MacPorts gcc47 but it might have been easier to get the binary download from here: gcc.gnu.org/wiki/GFortranBinaries

You will need /usr/local/bin to be in your path, set this in your .profile. e.g. a line like:

export PATH=/Users/johnr/Documents/Scripts:/usr/local/bin:/opt/local/bin:/opt/local/sbin:$PATH

With that, I was able to run porc on the demo files: python porc.py -n 6148 data/l48.wav out.wav

Thanks Mason!

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 10 years 3 months ago #6814

  • john.reekie
  • john.reekie's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 3778
  • Thank you received: 1593
As an aside, Python 3.0 on will need parentheses in the lines with the print statements. (ACtiveState is 2.7 but I was earlier trying to use 3.2 and had to make those changes to porc.py)

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 9 years 3 weeks ago #11712

  • pos
  • pos's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 364
  • Thank you received: 206

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 9 years 3 weeks ago #11727

  • pos
  • pos's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • Posts: 364
  • Thank you received: 206
You should ask jlo in the Align2 forum section, or directly in the thread linked above, he should be able to help you with that.

Please Log in or Create an account to join the conversation.

Re: Python Open Room Correction (PORC) 9 years 2 weeks ago #11875

  • hochopeper
  • hochopeper's Avatar
  • Offline
  • Senior Member
  • Senior Member
  • Posts: 41
  • Thank you received: 5

Thanks! :)

Unfortunately it fixes not my Problem... Hopefully somebody is out there who can help me!


As far as I know there isn't a PORC web interface yet. I think it should all run now if you simply download/install Anaconda Python distribution and follow the instructions for using at the command line. The documentation on the github page should have been updated to reflect that? (I helped with a few little tweaks to the code a little while ago).

I don't have a windows system to demonstrate it on though but can hopefully help you through that. I was going to build up some demonstration IPython Notebooks that would provide something like a web interface to the library, but haven't got around to that yet.


Regards,
Chris

Please Log in or Create an account to join the conversation.

Moderators: devteam