[pulseaudio-discuss] Pulseaudio + BruteFIR-convolver howto
Rene Bartsch
ml at bartschnet.de
Fri Sep 18 04:21:27 PDT 2015
For all who want Pulseaudio with convolving/digital-room-correction:
Pulseaudio -> BruteFIR -> ALSA (BruteFIR needs to be the last
manipulation in the audio-stream chain)
/etc/pulse/default.pa:
-------------------------------------------------------------------------------
load-module module-null-sink sink_name=default
sink_properties="device.description='Default'" channels=8
channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
set-default-sink default
-------------------------------------------------------------------------------
BruteFIR I/O-configuration:
-------------------------------------------------------------------------------
input 0,1,2,3,4,5,6,7 {
device: "file" { path: "/dev/stdin"; }; # Use STDIN
sample: "S32_LE"; # Best sample format
supported by soundcard
channels: 8;
};
output 0,1,2,3,4,5,6,7 {
device: "alsa" { device: "hw:<name>,0"; ignore_xrun: true; }; #
Direct ALSA hardware access ("hw:"), ignore ALSA I/O-underruns
sample: "S32_LE"; # best sample format supported by soundcard
channels: 8; # number of open channels / which to use
};
------------------------------------------------------------------------------------
Command-line/start-script:
-------------------------------------------------------------------------------------------
pacat --record --device=default --volume=65536 --rate=48000
--format=s32le --channels=8
--channel-map=front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
\
| sudo /usr/bin/brutefir -nodefault <path to BruteFIR
configuration-file>
-------------------------------------------------------------------------------------------
"--rate=" has to match "sampling_rate" in the global configuration of
BruteFIR.
"--format=" has to match "sample" and "--channels=" has to match
"channels" in the input-configuration of BruteFIR.
"--channel-map" defines how to map channels to the input channels (0 -
7).
If you're having trouble with ALSA I/O-underruns, try other values for
"filter_length" in the BruteFIR global configuration (e.g. 512,128
instead of 65536).
Using "module-pipe-sink" instead of "module-null-sink" + "pacat" causes
ALSA I/O-underruns, too
--
Best regards,
Renne
More information about the pulseaudio-discuss
mailing list