Linkwitz-Riley-type crossovers are constructed from cascading Butterworth filters: two 2nd order low-pass filters and two 2nd order highpass filters.

This is easily possible using the Max filtergraph and cascade~ objects.

max_cascade-linkwitz_riley.png

Equally simple is the implmentation in Pure Data using the IEM library implementations of 2nd order Butterworth filters. Please note that using the available 4th order Butterworth variants instead of two cascaded 2nd order ones doesn't result in the same perfect frequency response.

pd_iem-linkwitz_riley.png

An alternative in Max using gen~ is shown in a respective video tutorial.

The gen~ object with filter coefficients generated in a Javascript program is used to achieve the same result.

max_gen-linkwitz_riley.png