wireplumber: Add equalizer for Beyerdynamic DT1990 with balanced pads
Parametric Equalizer configuration was generated by running the below command. ```bash python -m autoeq --input-file="measurements/oratory1990/data/over-ear/Beyerdynamic DT 1990 (balanced earpads).csv" --output-dir="dt1990-results" --target="targets/Diffuse field 5128.csv" --parametric-eq --fs=44100,48000 ```
This commit is contained in:
parent
c64cb0ad1b
commit
e8bccb5bbc
2 changed files with 116 additions and 0 deletions
|
@ -3,6 +3,10 @@ wireplumber.components = [
|
|||
name = equalizer/dt770.lua, type = script/lua
|
||||
provides = equalizer.dt770
|
||||
}
|
||||
{
|
||||
name = equalizer/dt1990-balanced-diffuse.lua, type = script/lua
|
||||
provides = equalizer.dt1990-bd
|
||||
}
|
||||
{
|
||||
name = equalizer/input-denoise.lua, type = script/lua
|
||||
provides = equalizer.input-denoise
|
||||
|
@ -16,6 +20,7 @@ wireplumber.components = [
|
|||
wireplumber.profiles = {
|
||||
main = {
|
||||
equalizer.dt770 = required
|
||||
equalizer.dt1990-bd = required
|
||||
equalizer.input-denoise = required
|
||||
equalizer.zero2 = required
|
||||
}
|
||||
|
|
|
@ -0,0 +1,111 @@
|
|||
-- Generated by EQ'ing DT1990 (balanced pads) frequency response to the
|
||||
-- Diffuse Field target curve using AutoEq.
|
||||
-- luacheck: ignore 111 113
|
||||
local args = {
|
||||
["node.description"] = "DT1990 (Balanced) Diffuse Field",
|
||||
["media.name"] = "DT1990 (Balanced) Diffuse Field",
|
||||
["audio.position"] = Json.Array { "FL", "FR" },
|
||||
["audio.channels"] = 2,
|
||||
}
|
||||
|
||||
args["filter.graph"] = Json.Object {
|
||||
nodes = Json.Array {
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_1",
|
||||
label = "bq_highshelf",
|
||||
control = Json.Object { Freq = 0, Gain = -6.1, Q = 1.0 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_2",
|
||||
label = "bq_lowshelf",
|
||||
control = Json.Object { Freq = 105, Gain = -5.2, Q = 0.7 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_3",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 206, Gain = -5.3, Q = 0.51 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_4",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 4532, Gain = 5.5, Q = 0.41 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_5",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 791, Gain = 2.0, Q = 1.43 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_6",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 6829, Gain = -3.8, Q = 2.04 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_7",
|
||||
label = "bq_highshelf",
|
||||
control = Json.Object { Freq = 10000, Gain = 3.1, Q = 0.70 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_8",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 8944, Gain = -1.4, Q = 2.88 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_9",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 3751, Gain = -1.6, Q = 5.97 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_10",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 4458, Gain = 1.5, Q = 6.00 },
|
||||
},
|
||||
Json.Object {
|
||||
type = "builtin",
|
||||
name = "eq_band_11",
|
||||
label = "bq_peaking",
|
||||
control = Json.Object { Freq = 39, Gain = -0.2, Q = 1.88 },
|
||||
},
|
||||
},
|
||||
links = Json.Array {
|
||||
Json.Object { output = "eq_band_1:Out" , input = "eq_band_2:In" },
|
||||
Json.Object { output = "eq_band_2:Out" , input = "eq_band_3:In" },
|
||||
Json.Object { output = "eq_band_3:Out" , input = "eq_band_4:In" },
|
||||
Json.Object { output = "eq_band_4:Out" , input = "eq_band_5:In" },
|
||||
Json.Object { output = "eq_band_5:Out" , input = "eq_band_6:In" },
|
||||
Json.Object { output = "eq_band_6:Out" , input = "eq_band_7:In" },
|
||||
Json.Object { output = "eq_band_7:Out" , input = "eq_band_8:In" },
|
||||
Json.Object { output = "eq_band_8:Out" , input = "eq_band_9:In" },
|
||||
Json.Object { output = "eq_band_9:Out" , input = "eq_band_10:In" },
|
||||
Json.Object { output = "eq_band_10:Out", input = "eq_band_11:In" },
|
||||
},
|
||||
}
|
||||
|
||||
args["capture.props"] = Json.Object {
|
||||
["node.name"] = "dt1990_balanced_diffuse_effect_input.eq11",
|
||||
["media.class"] = "Audio/Sink",
|
||||
}
|
||||
|
||||
args["playback.props"] = Json.Object {
|
||||
["node.name"] = "dt1990_balanced_diffuse_effect_output.eq11",
|
||||
["node.passive"] = true,
|
||||
}
|
||||
|
||||
local args_json = Json.Object(args)
|
||||
local args_string = args_json:get_data()
|
||||
local properties = {}
|
||||
|
||||
print("Loading DT1990 Diffuse Field Equalizer Sink with arguments = ")
|
||||
print(args_string)
|
||||
|
||||
filter_chain = LocalModule("libpipewire-module-filter-chain", args_string, properties)
|
Loading…
Reference in a new issue