How to Set the Subwoofer Crossover Frequency?

Hello, I’m Jooyoung Kim, an engineer and music producer.

In my previous post, I mentioned that I had written a paper on subwoofers, right? On August 12, my paper, Group Delay-Driven Crossover Optimization for Subwoofer Satellite Systems at Listening Position, was officially published.

I had planned to write about it as soon as the paper was out, but time has been tight lately… ^^;;

This post is about how to set the crossover frequency for subwoofers.

The motivation behind this was pretty straightforward. Not only studios but also many individual users incorporate subwoofers into their setups. However, there’s surprisingly little guidance out there on how to properly set the crossover frequency.

I myself use two subwoofers!

From a perceptual perspective, there are papers suggesting that humans don’t easily perceive directionality below a certain frequency (say, a few Hz), so the crossover should be set below that threshold. But when it comes to numerical analysis, the only paper I could find was Dr. Bharitkar’s Automatic Crossover Frequency Selection for Multichannel Home-Theater Applications.

In that paper, the claim was that a flatter frequency response in the low-frequency range is ideal. However, dips in very narrow frequency bands often don’t show up clearly in numerical calculations of variance.

I was convinced there had to be a better approach. So last summer, I bought a measurement microphone and started taking measurements without a clear plan.

By experimenting with different crossover frequencies, I collected a ton of data and made an initial discovery: there’s a correlation between Group Delay (or Excess Group Delay) and the frequency response.

After trying various configurations, I found that Excess Group Delay wasn’t as strongly correlated, but peaks in the Group Delay (whether positive or negative) corresponded to dips in the frequency response. Moreover, the smaller the absolute value of the Group Delay, the less pronounced those dips became.

I conducted experiments in a university classroom and my own workspace, using a Finite Element (FE) model to demonstrate this correlation. My conclusion was that the crossover frequency should be chosen to minimize the maximum absolute value of the Group Delay in the low-frequency range.

Here’s the mathematical expression for it:

Looks a bit daunting, doesn’t it? ^^ Let me break down the terms:

  1. ω_oc: The optimal crossover frequency (frequency is typically denoted by ω).
  2. ω_LC: The lower bound of the crossover frequency (Low Crossover).
  3. ω_HC: The upper bound of the crossover frequency (High Crossover).
  4. GD(ω_i): The Group Delay value at frequency ω_i.
  5. α, β: Correction factors for the low-frequency range.

I included α and β because I noticed that Group Delay can vary significantly outside the adjustable crossover frequency range. These correction factors help account for that.

Setting the crossover frequency this way not only benefits phase response (since Group Delay is the rate of change of phase) but also improves the frequency response. (For those diving deeper: this is trivial in minimum-phase systems, but real-world systems aren’t always minimum-phase, which makes this approach meaningful.)

Additionally, I applied 4th-order Linkwitz-Riley filters to both the satellite speakers (the main speakers in a subwoofer-satellite system are often called “satellite speakers”) and the subwoofer, while carefully aligning timing and phase. These conditions are critical for the approach to work.

I was working on a tool to automatically measure and output audio based on this method, but analyzing the data to select the optimal crossover frequency turned out to be quite time-consuming. With other papers and projects piling up, I’ve had to put it on hold for now.

If I get some free time, I’d love to revisit it. It’d be amazing if a company like Genelec saw this and added it as a feature… haha. And if they wanted to sponsor me, that’d be even better… ^^;;

I tried to explain this in a straightforward way, but the topic itself isn’t exactly simple, so I hope I got the point across clearly! 😅

If you’re curious about the detailed setup or experimental process, feel free to check out the paper or reach out to me directly.

Until next time! 😊

I wrote a SCIE level paper!

Hello! This is Jooyoung Kim, a mixing engineer and music producer.

I’ve finally completed my personal challenge: getting a SCIE-level paper accepted before earning my master’s degree. Despite several rejections, it took me five and a half months to receive acceptance.

The paper has been accepted by Acta Acustica, a journal published by the European Acoustics Association (EAA), though it’s not officially published yet.

However you can see the prototype of the paper at “Forthcoming” page.

So, Acta Acustica, published out of France, feels like a journal with some solid history and tradition. But, maybe because it’s changed names a few times, it seems to have slipped a bit in the journal rankings.

Honestly, when it comes to music and acoustics journals, Impact Factor (IF) is practically useless for judging quality. It’s like they’re in their own little world! The top dogs, like the journals from the Acoustical Society of America (ASA) and the Audio Engineering Society (AES), are ranked Q2 and Q3 in JCR’s Acoustics category. Q3 for AES? That’s just absurd, right? 😅

Anyway, Acta Acustica is a notch below those two, sitting at Q3. Still, for music and acoustics research, there aren’t many other suitable journals out there besides these three. I was genuinely worried about getting rejected, so making it through feels like a huge relief.

Oh, and get this—acceptance doesn’t mean it’s published right away. There’s this final polishing phase handled elsewhere, and when I looked over my manuscript again, I spotted some typos… I’m planning to fix everything before submitting the final version.

Also, you might’ve noticed from the author list—I wrote this paper as the sole author! It’s on the same topic as my master’s thesis, but I did everything on my own: no funding whatsoever, not even for the research itself. I used three subwoofers for the experiments—two were mine, and just one was borrowed from my professor’s personal stash. Even the measurement microphone was my own. I designed all the research methods from scratch, and I figured I should be the one handling revisions and post-publication queries as the corresponding author. I talked it over with my professor, who was super kindly lent me that one subwoofer. Huge thanks to him! 😄

The journey wasn’t easy—two rejections and some brutal feedback later, I had to tweak a lot of the research methods compared to my thesis. The conclusion ended up similar, but the paper itself feels like a different beast now.

Oh, and here’s the kicker: I had no money, and my university doesn’t cover publication fees or open access costs, so I was stressing out big time. But then, Acta Acustica turned out to be a Diamond Open Access journal—free for everyone to read and free for authors to publish!

I actually tried building an application based on this current work using Python, but there were way too many features to cram in, so I’ve put it on hold for now… haha.

And also I’m already thinking about my next research topic, and if it goes as planned, I might even turn it into a plugin.

Looking at how I barely touch social media like Instagram and stick to blogging, I guess writing’s just my thing. So, until my next post—catch you later!

Life Update (07.12.25)

Hello, I’m Jooyoung Kim, a sound engineer and music producer.

My last life update was all about programming, wasn’t it? This time, it’s about my thesis and research.

First off, my dissertation has been printed and bound! It’s about how to set subwoofer crossover frequencies, which required a ton of measurements—let’s just say, a lot of gritty work.

The dissertation itself wasn’t too tough, but submitting a related paper to an international journal was a real challenge. I got rejected twice, and by the third submission, I had to overhaul it multiple times. While the core methodology stayed the same, the journal paper became more refined with way more measurements. Including the ones that didn’t make the cut, I probably did about 300 measurements for the dissertation and 1,500 for the journal submission. 😅

Recently, I got a “Minor Revision” decision from Acta Acustica, an SCIE-level journal from the European Acoustics Association. After seeing “Reject” so many times, spotting “Minor Revision” almost brought tears to my eyes! 😄 This journal became Diamond Open Access this year, meaning no publication fees for authors and no subscription fees for readers. As someone with no funding and no institutional support for publication costs, getting rejected by major journals like the Audio Engineering Society or the Acoustical Society of America was tough, and I was really stressing about where to submit next. This feels like a huge relief.

Here’s hoping it gets accepted without further revisions! I need to finalize publication by next Thursday to apply for a school scholarship, but timing is always tricky… 😢 If I get the scholarship, I’m eyeing some outboard gear or a stereo mic pair… hehe.

Once the paper is officially published, I’ll dive into the details here.

On another note, I recently participated in a songwriting contest called Soniccon, hosted by Sonicwire, a company under Crypton Future Media (famous for Vocaloid). I submitted a song in Japanese that I wrote and performed myself.

I made it to the final round, ranking in the top 18! 😊 My dream has always been to work across songwriting, sound engineering, practical work, and academia, and it feels like things are finally starting to come together.

But, of course, whenever I say that, something goes wrong… 😅 My second international paper, submitted to IEEE Transactions on Consumer Electronics, got desk-rejected in just four days. The rejection letter said:

“Your manuscript has been denied publication in the Transactions on Consumer Electronics as this paper is identified as more appropriate for publication in other reputable journals.”

Even with a rejection, getting reviewer feedback helps pinpoint what to fix, but a desk rejection like this leaves me a bit lost. The topic leans toward circuits and electronics, but I don’t know any conferences or journals in that field, and I don’t have any electrical engineering friends or professors to ask for advice.

Looking at how music and research are often funded, I guess I’m destined to chase grants. 😄 But honestly, I’ve been funding all this myself—my subwoofer research used my own music gear or borrowed subwoofers from my professor, though the Earthworks M30 measurement mic was a painful purchase… 😢

The second paper cost about 250,000 KRW (~$180 USD) for materials, which is relatively cheap. Add in KCI journal publication fees, conference memberships, CDs, and music purchases, and I’ve probably spent around 800,000 KRW (~$580 USD) out of pocket. If I’d refined it more and aimed for an international journal, I could’ve saved about 600,000 KRW in fees, but I didn’t know the process back then. I’m chalking it up to tuition for learning the ropes.

I’d love to tackle bigger, time-intensive projects like Dolby multichannel, binaural audio, or deep learning, but those require serious funding. Binaural and Dolby Atmos setups need completely different gear, and the costs add up fast. 😅 Even for smaller projects, just covering material costs or extra page fees for open-access journals would be a huge help. Research support for master’s graduates is practically nonexistent, which makes things tough.

That’s the rough update for now!
See you in the next post! 😊

Life Update (May 27, 2025)

Hey there! I’m Jooyoung Kim, a mixing engineer, music producer, and computer music researcher.

Lately, I’ve been living like a hermit… haha.

A while back, I think I mentioned grumbling about an “Editor Invited” status dragging on for over a month. Well, good news—it’s finally moved to “Under Review”! I’m keeping my fingers crossed because I really need this to wrap up soon so I can secure some thesis funding from my university to keep things afloat. The timeline’s tight, so I’m a bit on edge.

Oh, and I believe I once mentioned working on digitally recreating the SA-2A on this blog.

Here’s how that went down:

  1. Analog recording grind (plus building a recording program from scratch… ugh). That recording program UI still gives me nightmares. I built it with Qt Creator, and… let’s just say it was a few days of pure torment.
  2. Training with deep learning using CNN and RNN (LSTM) methods (which meant coding up some PyTorch for the training process…).
  3. Implementing the compressor with that training data (cue JUCE and Python code-building…).

And, well, it spectacularly flopped. 😭

Just looking at the spectrogram tells you all you need to know, right?

I built a recording program in C++, slogged through endless recording sessions, spent ages training the model, and then tried real-time processing with JUCE—only to realize real-time processing wasn’t happening, so I switched to Python. After pouring over a month into this, it feels like such a letdown.

The RNN (LSTM) approach might still have some potential with more time, but CNN? Total dead end. My original idea would take way too long to execute, so I’ve shelved it for now. That said, the program set itself isn’t half bad, so I’m planning to polish it up and eventually share it on GitHub.

Meanwhile, I’ve pivoted to experimenting with a new topic. For this, I’ve been measuring THD, crosstalk, and frequency response, and I wrote a Python program to store the data and generate graphs.

This one actually turned out pretty well! I’m thinking of sharing some of the code and distributing the program around the time I submit my next paper. It might need a bit more refinement before I consider selling it, though.

https://github.com/JYKlabs

Oops, this is starting to sound like a GitHub channel plug, isn’t it?

The first half of this year has been consumed by experiments and coding for my thesis, leaving me with barely any time to work on my own music. 😢 But I’ve got something in the works, and I’m determined to release at least one track next month. I really need to get into a groove and churn stuff out consistently instead of these sporadic bursts… sigh.

I’ve always been drawn to niche things—studying physics as a kid, making music, diving into audio engineering, and now coding for obscure projects. Guess I’m just wired to love the less mainstream stuff, haha.

Anyway, that’s what I’ve been up to lately. With grad school graduation looming, I’m feeling a bit lost and anxious about what’s next. But I’m choosing to believe things will work out and keep pushing forward.

Catch you in the next post! 😊