filterffmpegraspberry-pimpd

How to install MPD filter "ffmpeg" into MPD running on RaspberryPi


I’m using Moode audio player OS on a Raspberry Pi 5 to play audio through two USB devices: headphones (card 3: Device_1) for the full spectrum and a subwoofer (card 0: Device) for low frequencies (20–100Hz) in a meditation lounge setup. The audio source is a NAS on a Mac. My goal is simultaneous playback: headphones in stereo, subwoofer in mono with low-pass filtering. I have configured the mpd.conf file to setup audio ouputs for both devices. Now I need to apply a lowpass filter to the subwoofer device. I tried using MDP's "ffmpeg" as a lowpass filter, but the logs say:

Failed to initialize filter chain for "Subwoofer": No such filter plugin: ffmpeg

So I checked MPD's list of filters using mpd --version and it shows only one filter:

Decoder plugins:
[mpg123] mp3
[mad] mp3 mp2
[vorbis] ogg oga
[oggflac] ogg oga
[flac] flac
[opus] opus ogg oga
[dsdiff] dff
[dsf] dsf
[faad] aac
[wavpack] wv
[adplug] amd d00 hsc laa rad raw sa2
[ffmpeg] 264 265 ...

Filters:
soxr

Tag plugins:
id3tag

...

So it's listed as a Decoder, but not a as a filter. MPD docs says it can be used as a filter: MPD Docs - Filters

So how do I add the ffmpeg to the list of filters?


Solution

  • I've done some research and now understand that the MPD compilation that Moode OS uses does not enable FFmpeg as a filter, but only as a decoder. This is a compile-time option and that decision resides with the developers, and probably for good reason. (likely just not needed)

    I've figured out that Moode OS's interface for CamillaDSP allows me to setup a lowpass filter for the subwoofer, and it was actually straight forward. There's even a guide on how to do this that I found through their forums.