I recently switched from macOS to Ubuntu, and there's only one thing I miss: It's the Boom3D application, which allows you to apply effects on music, especially the "Spatial Audio" effect that I like a lot.

After some research, it seems to me that the exact term is HRTF (Head-related transfer function), I also heard about SOFA files.

How to get this on Linux? Here is a video demonstration of the kind of audio effects I want to get: HRTF Demo - Steam Audio

Whether it's a music player, an ffmpeg script, or a system-wide solution, I'm interested!

  • 1
    ffmpeg has the sofalizer filter: "SOFAlizer uses head-related transfer functions (HRTFs) to create virtual loudspeakers around the user for binaural listening via headphones"
    – llogan
    May 7, 2021 at 18:10

1 Answer 1


I managed to get a system-wide solution!

Several steps:

  1. Create a sink
pacmd load-module module-null-sink \
sink_name=SantaClaus \
  1. Set it as default (can be done using pavucontrol)
pacmd set-default-sink SantaClaus
  1. ffmpeg (see the doc to output to pulseaudio)
ffmpeg \
-loglevel error \
-f pulse \
-i SantaClaus.monitor \
-af "sofalizer=sofa=/path/ClubFritz9.sofa" \
-f pulse \
-name "3D Audio" \
"3D Audio"
  1. Use pavucontrol to select the output of ffmpeg (named 3D Audio), choose your headphones or speakers


Here is a problem I encountered specific to version 0.6 of libmysofa

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.