blob: 061eae96cff2be0a298f443cedf1aa3c8357848e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
wireplumber.profiles = {
policy = {
agl.filter.equalizer-sink = required
}
}
wireplumber.components = [
{
name = libpipewire-module-filter-chain, type = pw-module
arguments = {
node.description = "Equalizer Sink"
media.name = "Equalizer Sink"
filter.graph = {
nodes = [
{
type = builtin
name = bass
label = bq_lowshelf
# the cut off freq of the bass filter can be adjusted here.
control = { "Freq" = 250.0 "Q" = 1.0 "Gain" = 0.0 }
}
{
type = builtin
name = treble
label = bq_peaking
# the cut off freq of the treble filter can be adjusted here.
control = { "Freq" = 6000.0 "Q" = 1.0 "Gain" = 0.0 }
}
]
links = [
{ output = "bass:Out" input = "treble:In" }
]
}
audio.channels = 2
audio.position = [ FL FR ]
capture.props = {
node.name = "eq-sink"
# this is a sink filter, so it will appear as a sink in wpctl/pactl/etc,
# it will target a sink and can be chained with other sink smart filters
media.class = Audio/Sink
# treat this as a smart filter
filter.smart = true
# the unique name of the filter
filter.smart.name = "agl.filter.equalizer-sink"
## set this to always link the filter to a particular sink
## or leave it unset in order to follow the default sink
#filter.smart.target = { node.name = "alsa_output.pci-0000_00_01.0.analog-stereo" }
## here you can specify filter dependencies, using their names
## (filter.smart.name) if you set up many of them to be linked in a chain
#filter.smart.before = []
#filter.smart.after = []
}
playback.props = {
node.name = "eq-output-stream"
# This must be set to ensure that the real audio sink is suspended
# when there is no active client stream linked
node.passive = true
# Set this to avoid linking the filter to role-based sinks when
# role-based sinks are defined and node.stream.default-media-role is
# configured in the settings
media.role = "DSP"
}
}
provides = agl.filter.equalizer-sink
requires = [ pw.node-factory.adapter ]
after = [ support.standard-event-source ]
}
]
|