• These commercial threads are for private transactions. diyAudio.com provides these forums for the convenience of our members, but makes no warranty nor assumes any responsibility. We do not vet any members, use of this facility is at your own risk. Customers can post any issues in those threads as long as it is done in a civil manner. All diyAudio rules about conduct apply and will be enforced.

FIR/IIR/LinearizedIIR software crossover is released

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hello, all!

Few days ago I released my new software audio crossover - dePhonica version3 (windows only yet).
I hope, its easy to use and configurable in minutes (basic configutation) - from installation to music listening.
Fully functional preview version of crossover is available for free and I hope its will be user-friendly enough to evaluate crossover potential.

Video example of installation and setup here: https://youtu.be/1jK7sJr9i7M

Here list of features available in current version:
  • Built-in ASIO Sink driver for transparent stream input from audio and video players
  • Different input sample formats: 16 bit integer, 24 bit integer and 32 bit floating point
  • 2 input channels and up to 8 output channels
  • Output to DirectSound, ASIO and Kernel Streaming audio devices
  • Processing completely in 64 bit floating point precission
  • Built-in crossover`s frequency response analyzer with overview amplitude graph, single channel graphs (amplitude response, phase response, group delay for each channel) and response addition graph
  • Filtering by FIR filters, IIR filters or by IIR filters with automatically designed phase correction FIR filter
  • Can create FIR phase correction (all pass) filter for external hardware crossover
  • Two FIR convolvers available: FFT convolver with Overlap-Add algorythm and linear convolver (Straight FIR) without usage of FFT
  • Any of two convolvers can be used with one or more IIR filters in each processing channel
  • Up to 128 000 taps per channel with FFT FIR convolver
  • IIR filters and frequency response envelopes available: Linkwitz-Riley, Butterworth, Chebyshev
  • Parametric synthesis of amplitude and phase responses for filter types: Low Pass, High Pass, Band Pass, Band Stop, Low Shelf, High Shelf
  • Band pass and Band stop filter responses can be optionally defined via lower and higher cutoff frequencies or by a definition of central frequency and bandwidth
  • Amplitude and phase equalizers for arbitrary amplitude and phase response correction with data import features (from text file or from impulse response in WAV format)
  • Any combination of FIR and IIR filters in each processing channel
  • Full-featured pre-processing channel for input stream with its own filter set
  • Automatic biasing feature for gain response in a separate channels or in a group of channels
  • Input and output gain adjustment in each channel
  • Adjustable delay in each channel with optional sub-sample resolution

You can download installation package on official site: dePhonica sound labs.

I will appreciate you for feedback and will review all your suggestions to improve future releases.

Cheers,
Max.
 
Last edited:
watched the video and looks very good.
Thank you for support :)

1. Can actual measured driver frequency responses be loaded?
2. Can acoustic targets be specified and filters optimized towards that?

In next few days I will record videos about basic use cases of the crossover.
I'we planned next topics:

1. FIR and IIR filters - overview and setup
2. Usage of linearized IIR filters
3. EQ and Phase EQ corrections and "version3 Correction" utility
4. Pre-processing channel setup

And your question will be reviewed in third video.
In two words - yes, you can use EQ (and phase EQ) processing filter to load correction data ("inversed" measured data) from text file. Format of text file:
[frequency] [gain]
in each line.

Example:
Code:
0   -100
42  -100
45  0
110 0
115 -100
20000   0

EQ filter for driver correction can be located in pre-processing channel.
Also, crossover's installation contains "version3 Correction" utility - simple program, which helps to convert ("inverse") measured data (WAV file) into correction data in text format.

And small animation, illustrating loading of EQ data from text file:
An externally hosted image should be here but it was not working when we last tested it.
 
Dear Max,

The video looks impressive indeed.

The answer to jojips questions, however, is not entirely clear to me. What I would like to see on screen is:
(and this what most x/o optimizer programms Leap, Lspcad, Soundeasy, Calsod show) is a clear set of overlays as below:
( colors are random)

Measured raw driver drivers response in e.g. green
Target acoustic output in e.g red.
Filter+ Driver combi to be optimized to target in e.g in blue

Kind regards,

Eelco
 
Eelco, thank you for your interest.

What I would like to see on screen is:
(and this what most x/o optimizer programms Leap, Lspcad, Soundeasy, Calsod show) is a clear set of overlays as below: ( colors are random)
Measured raw driver drivers response in e.g. green
Target acoustic output in e.g red.
Filter+ Driver combi to be optimized to target in e.g in blue
Brief answers on your questions:
1. Yes, dePhonica crossover's package contains correction utility for rough amplitude correction with such set of graphs: driver(s) response / correction response / target response.
2. But for precice correction I prefer to use Arta (by ARTALABS) to measure my acoustics response and save result (frequency response) to CSV file. Then I use Excel (or OpenOffice Calc) to invert response and save result again to CSV file. This CSV can be loaded into channel EQ to correct single band driver or into pre-processing channel EQ to correct full band.
 
Dear Max,

Thank you. I do understand your CSV inversion procedure, but would like to do that by hand, in order to be able to avoid "over-correction". For that, overlays are essential.

Does the free trial version also have these overlay features?

Thanx a lot,

Eelco
 
Thanks Max.

I agree with Eelco. The inverse response feature is great, but the loaded overlays gives a very visual control of the process and people also appear more familiar with the method.
Would be great if it is a simple enhancement for this tool.

Also since this is an early version, is there an upgrade path for early adopters? If a full version is purchased are future upgrades free?
 
Eelco,

I do understand your CSV inversion procedure, but would like to do that by hand, in order to be able to avoid "over-correction". For that, overlays are essential.
I'm not an expert in measurements, but I think that with FIR filters (which used in my crossover for correction purposes) "under-correction" must be more common case than "over-correction".
But I undestand your point. I'm trying to develop crossover dynamically so, I hope that I have time in near future to implement this feature in crossover configuration UI itself, not in stand-alone utility.

Does the free trial version also have these overlay features?
Yes, preview version have no limitations except time limit (core must be restarted every 30 minutes) and limited processing channels (max 6 channels instead of 8 in full version).
 
Also since this is an early version, is there an upgrade path for early adopters?
At this moment I send notification email with download link inside after major upgrades. In future builds I will add "Check for updates" item into crossover's menu.

If a full version is purchased are future upgrades free?
Yes, upgrades inside single development branch (i.e. version numbers 3.x.x) are free. With current progress of version numbering (3.0.1 - april 2015 => 3.3.x - january 2016) it's more than one year of free updates.

Max.
 
Max, this is a very interesting piece of software. I have a couple of questions:

1- Any facility to play Windows sound (desktop, web) through the crossover? In other words, any plans for a WDM driver?

2- I have imported a FIR convolution file created in rePhase. It contains both frequency and phase correction. Does the crossover require setup of two processing stages, one for EQ and one for phase, with the same convolution file loaded in each?

3- Related to above, I notice that I am getting much reduced fidelity (apparent in the graph window) when I import the convolution file into the crossover. I am exporting/importing a 32-bit float file with 65K taps. I have matched taps between rePhase and the crossover. Whereas in rePhase I see a floor down below -200 dB in the crossover I see a floor in the range of -80 dB and odd ripples at 5KHz and above. I have attached screen shots. Is there a way to improve?

Many thanks,
-mf
 

Attachments

  • rePhase.jpg
    rePhase.jpg
    88.7 KB · Views: 521
  • freq_deP.jpg
    freq_deP.jpg
    59.3 KB · Views: 503
Max, this is a very interesting piece of software.
Michael, thank you :)

1- Any facility to play Windows sound (desktop, web) through the crossover? In other words, any plans for a WDM driver?
At this moment no, I'm not planing to include WDM driver into crossover's distribution. The main reason - I have no resources yet to support such piece of low level code. And Win7+ requires drivers signed by certificate, validated with known CA - I have no such certificate yet too.

2- I have imported a FIR convolution file created in rePhase. It contains both frequency and phase correction. Does the crossover require setup of two processing stages, one for EQ and one for phase, with the same convolution file loaded in each?
Yes, amplitude envelope can be loaded into EQ component and phase envelope (if required) - into Phase EQ component.
But inside DSP only one FIR filter per channel would be created, regardless of channel configuration in UI.

3- Related to above, I notice that I am getting much reduced fidelity (apparent in the graph window) when I import the convolution file into the crossover. I am exporting/importing a 32-bit float file with 65K taps. I have matched taps between rePhase and the crossover. Whereas in rePhase I see a floor down below -200 dB in the crossover I see a floor in the range of -80 dB and odd ripples at 5KHz and above. I have attached screen shots. Is there a way to improve?
I really appreciate you for this reply!
It was a little bug in measurement core. And I already fixed it.
You can download new version of preview build with this fix.

Cheers,
Max.
 
Max, great piece of software, exactly what I've been looking for. I've tried getting Crossvolver to work, and got nowhere with it. The demo already works quite well on this.

I'd like to use it for video, is there an easy way to calculate the time lag necessary if I'm using FIR filters?
 
Max, great piece of software, exactly what I've been looking for. I've tried getting Crossvolver to work, and got nowhere with it. The demo already works quite well on this.
Poshy, thank you for your reply!

I'd like to use it for video, is there an easy way to calculate the time lag necessary if I'm using FIR filters?
In a next few updates I will serially improve video sync capabitilies.
And when this work will be done, crossover latency value will be displayed in "Core Status" window.

Best regards,
Max.
 
Michael, thank you :)


At this moment no, I'm not planing to include WDM driver into crossover's distribution. The main reason - I have no resources yet to support such piece of low level code. And Win7+ requires drivers signed by certificate, validated with known CA - I have no such certificate yet too.


Yes, amplitude envelope can be loaded into EQ component and phase envelope (if required) - into Phase EQ component.
But inside DSP only one FIR filter per channel would be created, regardless of channel configuration in UI.


I really appreciate you for this reply!
It was a little bug in measurement core. And I already fixed it.
You can download new version of preview build with this fix.

Cheers,
Max.



In you video https://www.youtube.com/watch?v=2dBozhhflyA
"IIR filters with FIR linearization", the band-pass filter has only -40dB attenuation in the stop-band.

Why is this happening?.
 
Last edited:
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.