mirror of
https://github.com/tiyn/dotfiles.git
synced 2025-10-18 07:21:14 +02:00
Compare commits
122 Commits
7e576a888e
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
9734aa56ad | ||
|
4cc268f424 | ||
|
7a66057608 | ||
50b033c772 | |||
d7a25d0ed2 | |||
|
875803b1fb | ||
|
fd6934ecbc | ||
|
3aafdd54f7 | ||
|
2c6f888ed7 | ||
|
a005ba35db | ||
|
cfe8c6d703 | ||
|
c889d019aa | ||
|
a92906b244 | ||
|
466f023fca | ||
|
632dccff14 | ||
|
2cbd28a429 | ||
31616d0604 | |||
|
2d0fb5ecf8 | ||
|
170020a287 | ||
|
45bfcbf68e | ||
|
e8901032db | ||
|
b74a23af1d | ||
|
d2bfc89ef2 | ||
|
3cfd34313e | ||
|
001187545c | ||
|
0a21e161a4 | ||
|
8a71bd65af | ||
|
5eac363783 | ||
|
fad6eed865 | ||
|
dd24dbd0d7 | ||
|
3843dd8da7 | ||
|
aa9b0a14a9 | ||
|
837307c21e | ||
|
ead803572f | ||
|
faa081d019 | ||
|
9894e74d5f | ||
|
3446c0fc74 | ||
|
3ec55d1bfe | ||
|
473423929c | ||
|
320d84e302 | ||
|
dc5325c1d5 | ||
|
9c2d1ddbe6 | ||
|
fa224c4deb | ||
|
d05f39b991 | ||
|
bac7f7fa66 | ||
|
243a7148a8 | ||
|
a153341f6b | ||
|
a6547fe26c | ||
|
35a698dd20 | ||
|
73168a2db4 | ||
|
d447b87ac1 | ||
|
5429c908c8 | ||
|
fb1f2e6c3b | ||
|
c9c719765f | ||
|
2581b3ad44 | ||
01558bad76 | |||
d7716496e6 | |||
e9f2d8fea7 | |||
c7e33b6162 | |||
7322a068c2 | |||
|
ec50c1347b | ||
e7db336362 | |||
7751bab6fe | |||
423d1731b0 | |||
266b4a253a | |||
da9fdab952 | |||
198144476c | |||
2fe2ae52b3 | |||
8a9f728f58 | |||
ce74787e96 | |||
921daaf1f4 | |||
7a4fa27014 | |||
764dc17b31 | |||
46996ed60b | |||
0c7d6bd176 | |||
895c286f16 | |||
f938294076 | |||
4876fb0dac | |||
c728195147 | |||
4b0d01690a | |||
5fc8425b97 | |||
e2b6d06d97 | |||
c7cce0c882 | |||
d4a1d0622c | |||
|
5541ec87b9 | ||
a67a1f306d | |||
c7567311f3 | |||
3870aa1afc | |||
708be20f37 | |||
83efe0aa39 | |||
e9c7aae871 | |||
c7f1aaa72d | |||
e9a3c08d86 | |||
7c1874b96e | |||
a947ad21ff | |||
0c81536011 | |||
|
97e54e74c5 | ||
c6b9ffcc69 | |||
d0ef41d968 | |||
0ef1b10781 | |||
f662768a04 | |||
b25a478cfa | |||
10d48f2a73 | |||
f757afb4df | |||
982d2266ce | |||
1c0902842a | |||
716fcd2983 | |||
747643ed88 | |||
52b0422f36 | |||
d3e8f76fa3 | |||
2497e93c88 | |||
4d86b5c465 | |||
0c03f9a1c2 | |||
61ffcf7558 | |||
26a7f8daff | |||
924acd6dae | |||
db44c7c365 | |||
7e7f1713ae | |||
e63be081b6 | |||
c908dfa478 | |||
0be7f199ae | |||
3835cc8ffc |
@@ -7,6 +7,9 @@ background() { for ((i=2;i<=$#;i++)); do; ${@[1]} ${@[$i]} &> /dev/null &| ; don
|
||||
alias ":wq"="exit"
|
||||
alias ":q"="exit"
|
||||
|
||||
# cat
|
||||
alias cat="bat"
|
||||
|
||||
# cd
|
||||
alias ".."="cd .."
|
||||
alias "..."="cd ../.."
|
||||
@@ -72,10 +75,10 @@ alias contacts="khard"
|
||||
alias paint="kolourpaint"
|
||||
|
||||
# ls(d)
|
||||
alias l="eza --group-directories-first"
|
||||
alias la="eza -la --group-directories-first"
|
||||
alias ll="eza -l --group-directories-first"
|
||||
alias tree="eza --tree --group-directories-first"
|
||||
alias l="exa --group-directories-first"
|
||||
alias la="exa -la --group-directories-first"
|
||||
alias ll="exa -l --group-directories-first"
|
||||
alias tree="exa --tree --group-directories-first"
|
||||
|
||||
# mkdir
|
||||
alias mkdir="mkdir -p"
|
||||
@@ -127,18 +130,20 @@ alias svim="sudo nvim"
|
||||
alias svi="sudo nvim"
|
||||
command -v nvim >/dev/null && alias vim="nvim" vimdiff="nvim -d"
|
||||
command -v nvim >/dev/null && alias vi="nvim" vidiff="nvim -d"
|
||||
alias renamer="nvim +Renamer"
|
||||
|
||||
# weather
|
||||
alias weather="curl wttr.in"
|
||||
|
||||
# wget
|
||||
alias wget="wget --hsts-file=$XDG_CACHE_HOME/wget-hsts"
|
||||
alias wget2c="aria2c"
|
||||
|
||||
# yay
|
||||
alias yay="yay --sudoloop --noredownload --norebuild --combinedupgrade"
|
||||
|
||||
# youtube-dl
|
||||
alias yta="yt-dlp -f 'bestaudio[ext=m4a]'"
|
||||
alias ytv="yt-dlp -f 'bestvide[ext=mp4]+bestaudio[ext=m4a]'"
|
||||
alias yta2c="yt-dlp --external-downloader aria2c --external-downloader-args '-j 16 -x 16 -s 16 -k 2M' -f 'bestaudio/best'"
|
||||
alias ytv2c="yt-dlp --external-downloader aria2c --external-downloader-args '-j 16 -x 16 -s 16 -k 2M' -f 'bestvideo[height>=720]+bestaudio/best'"
|
||||
alias ytv="yt-dlp -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]'"
|
||||
alias yta2c="yt-dlp --external-downloader aria2c --external-downloader-args '-j 16 -x 16 -s 16 -k 2M' -f 'bestaudio[ext=m4a]/best'"
|
||||
alias ytv2c="yt-dlp --external-downloader aria2c --external-downloader-args '-j 16 -x 16 -s 16 -k 2M' -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best'"
|
||||
|
6
.config/discord/settings.json
Normal file
6
.config/discord/settings.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"chromiumSwitches": {},
|
||||
"IS_MAXIMIZED": false,
|
||||
"IS_MINIMIZED": false,
|
||||
"SKIP_HOST_UPDATE": true
|
||||
}
|
294
.config/easyeffects/input/Fifine K688 - Chat.json
Normal file
294
.config/easyeffects/input/Fifine K688 - Chat.json
Normal file
@@ -0,0 +1,294 @@
|
||||
{
|
||||
"input": {
|
||||
"blocklist": [],
|
||||
"compressor#0": {
|
||||
"attack": 10.0,
|
||||
"boost-amount": 6.0,
|
||||
"boost-threshold": -72.0,
|
||||
"bypass": false,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"input-gain": 0.0,
|
||||
"knee": -6.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"mode": "Downward",
|
||||
"output-gain": 0.0,
|
||||
"ratio": 4.0,
|
||||
"release": 100.0,
|
||||
"release-threshold": -100.0,
|
||||
"sidechain": {
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle",
|
||||
"stereo-split-source": "Left/Right",
|
||||
"type": "Feed-forward"
|
||||
},
|
||||
"stereo-split": false,
|
||||
"threshold": -35.0,
|
||||
"wet": 0.0
|
||||
},
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -3.0,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 50.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass",
|
||||
"width": 12.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 120.0,
|
||||
"gain": -2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 189.58627573536728,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.49999999999999933,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 320.0,
|
||||
"gain": -1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 5000.0,
|
||||
"gain": -3.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.2499999999999993,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 1.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 7,
|
||||
"output-gain": 3.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 50.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass",
|
||||
"width": 12.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 120.0,
|
||||
"gain": -2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 189.58627573536728,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.49999999999999933,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 320.0,
|
||||
"gain": -1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 5000.0,
|
||||
"gain": -3.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.2499999999999993,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 1.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"gate#0": {
|
||||
"attack": 1.0,
|
||||
"bypass": false,
|
||||
"curve-threshold": -60.0,
|
||||
"curve-zone": -5.0,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"hysteresis": false,
|
||||
"hysteresis-threshold": -12.0,
|
||||
"hysteresis-zone": -6.0,
|
||||
"input-gain": 0.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"output-gain": 0.0,
|
||||
"reduction": -20.0,
|
||||
"release": 280.0,
|
||||
"sidechain": {
|
||||
"input": "Internal",
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle",
|
||||
"stereo-split-source": "Left/Right"
|
||||
},
|
||||
"stereo-split": false,
|
||||
"wet": 0.0
|
||||
},
|
||||
"limiter#0": {
|
||||
"alr": false,
|
||||
"alr-attack": 5.0,
|
||||
"alr-knee": 0.0,
|
||||
"alr-release": 50.0,
|
||||
"attack": 5.0,
|
||||
"bypass": false,
|
||||
"dithering": "None",
|
||||
"external-sidechain": false,
|
||||
"gain-boost": true,
|
||||
"input-gain": 0.0,
|
||||
"lookahead": 5.0,
|
||||
"mode": "Herm Thin",
|
||||
"output-gain": 0.0,
|
||||
"oversampling": "None",
|
||||
"release": 1.0,
|
||||
"sidechain-preamp": 0.0,
|
||||
"stereo-link": 100.0,
|
||||
"threshold": -10.0
|
||||
},
|
||||
"plugins_order": [
|
||||
"stereo_tools#0",
|
||||
"rnnoise#0",
|
||||
"gate#0",
|
||||
"equalizer#0",
|
||||
"compressor#0",
|
||||
"limiter#0"
|
||||
],
|
||||
"rnnoise#0": {
|
||||
"bypass": false,
|
||||
"enable-vad": true,
|
||||
"input-gain": 0.0,
|
||||
"model-path": "",
|
||||
"output-gain": 0.0,
|
||||
"release": 5.0,
|
||||
"vad-thres": 55.0,
|
||||
"wet": 0.0
|
||||
},
|
||||
"stereo_tools#0": {
|
||||
"balance-in": 0.22000000000000006,
|
||||
"balance-out": 0.0,
|
||||
"bypass": false,
|
||||
"delay": 0.0,
|
||||
"input-gain": -5.0,
|
||||
"middle-level": 0.0,
|
||||
"middle-panorama": 0.0,
|
||||
"mode": "LR > MS (Stereo to Mid-Side)",
|
||||
"mutel": false,
|
||||
"muter": false,
|
||||
"output-gain": 0.0,
|
||||
"phasel": false,
|
||||
"phaser": false,
|
||||
"sc-level": 1.0,
|
||||
"side-balance": 0.0,
|
||||
"side-level": 0.0,
|
||||
"softclip": false,
|
||||
"stereo-base": 0.0,
|
||||
"stereo-phase": 0.0
|
||||
}
|
||||
}
|
||||
}
|
283
.config/easyeffects/input/Fifine K688 - Voice.json
Normal file
283
.config/easyeffects/input/Fifine K688 - Voice.json
Normal file
@@ -0,0 +1,283 @@
|
||||
{
|
||||
"input": {
|
||||
"blocklist": [],
|
||||
"compressor#0": {
|
||||
"attack": 10.0,
|
||||
"boost-amount": 6.0,
|
||||
"boost-threshold": -72.0,
|
||||
"bypass": false,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"input-gain": 0.0,
|
||||
"knee": -6.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"mode": "Downward",
|
||||
"output-gain": 0.0,
|
||||
"ratio": 4.0,
|
||||
"release": 100.0,
|
||||
"release-threshold": -100.0,
|
||||
"sidechain": {
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle",
|
||||
"stereo-split-source": "Left/Right",
|
||||
"type": "Feed-forward"
|
||||
},
|
||||
"stereo-split": false,
|
||||
"threshold": -35.0,
|
||||
"wet": 0.0
|
||||
},
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -3.0,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 50.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass",
|
||||
"width": 12.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 120.0,
|
||||
"gain": -2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 189.58627573536728,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.49999999999999933,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 320.0,
|
||||
"gain": -1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 5000.0,
|
||||
"gain": -3.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.2499999999999993,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 1.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 7,
|
||||
"output-gain": 3.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 50.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass",
|
||||
"width": 12.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 120.0,
|
||||
"gain": -2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 189.58627573536728,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.49999999999999933,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 320.0,
|
||||
"gain": -1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 0.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 5000.0,
|
||||
"gain": -3.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.2499999999999993,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 1.5,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"gate#0": {
|
||||
"attack": 1.0,
|
||||
"bypass": false,
|
||||
"curve-threshold": -60.0,
|
||||
"curve-zone": -5.0,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"hysteresis": false,
|
||||
"hysteresis-threshold": -12.0,
|
||||
"hysteresis-zone": -6.0,
|
||||
"input-gain": 0.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"output-gain": 0.0,
|
||||
"reduction": -20.0,
|
||||
"release": 280.0,
|
||||
"sidechain": {
|
||||
"input": "Internal",
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle",
|
||||
"stereo-split-source": "Left/Right"
|
||||
},
|
||||
"stereo-split": false,
|
||||
"wet": 0.0
|
||||
},
|
||||
"limiter#0": {
|
||||
"alr": false,
|
||||
"alr-attack": 5.0,
|
||||
"alr-knee": 0.0,
|
||||
"alr-release": 50.0,
|
||||
"attack": 5.0,
|
||||
"bypass": false,
|
||||
"dithering": "None",
|
||||
"external-sidechain": false,
|
||||
"gain-boost": true,
|
||||
"input-gain": 0.0,
|
||||
"lookahead": 5.0,
|
||||
"mode": "Herm Thin",
|
||||
"output-gain": 0.0,
|
||||
"oversampling": "None",
|
||||
"release": 1.0,
|
||||
"sidechain-preamp": 0.0,
|
||||
"stereo-link": 100.0,
|
||||
"threshold": -10.0
|
||||
},
|
||||
"plugins_order": [
|
||||
"stereo_tools#0",
|
||||
"gate#0",
|
||||
"equalizer#0",
|
||||
"compressor#0",
|
||||
"limiter#0"
|
||||
],
|
||||
"stereo_tools#0": {
|
||||
"balance-in": 0.22000000000000006,
|
||||
"balance-out": 0.0,
|
||||
"bypass": false,
|
||||
"delay": 0.0,
|
||||
"input-gain": -5.0,
|
||||
"middle-level": 0.0,
|
||||
"middle-panorama": 0.0,
|
||||
"mode": "LR > MS (Stereo to Mid-Side)",
|
||||
"mutel": false,
|
||||
"muter": false,
|
||||
"output-gain": 0.0,
|
||||
"phasel": false,
|
||||
"phaser": false,
|
||||
"sc-level": 1.0,
|
||||
"side-balance": 0.0,
|
||||
"side-level": 0.0,
|
||||
"softclip": false,
|
||||
"stereo-base": 0.0,
|
||||
"stereo-phase": 0.0
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,219 +0,0 @@
|
||||
{
|
||||
"input": {
|
||||
"blocklist": [],
|
||||
"compressor#0": {
|
||||
"attack": 20.0,
|
||||
"boost-amount": 6.0,
|
||||
"boost-threshold": -72.0,
|
||||
"bypass": false,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"input-gain": 0.0,
|
||||
"knee": -6.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"mode": "Downward",
|
||||
"output-gain": 0.0,
|
||||
"ratio": 4.0,
|
||||
"release": 100.0,
|
||||
"release-threshold": -100.0,
|
||||
"sidechain": {
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle",
|
||||
"type": "Feed-forward"
|
||||
},
|
||||
"threshold": -12.0,
|
||||
"wet": 0.0
|
||||
},
|
||||
"deesser#0": {
|
||||
"bypass": false,
|
||||
"detection": "RMS",
|
||||
"f1-freq": 6000.0,
|
||||
"f1-level": 0.0,
|
||||
"f2-freq": 4500.0,
|
||||
"f2-level": 12.0,
|
||||
"f2-q": 1.0,
|
||||
"input-gain": 0.0,
|
||||
"laxity": 15,
|
||||
"makeup": 0.0,
|
||||
"mode": "Wide",
|
||||
"output-gain": 0.0,
|
||||
"ratio": 3.0,
|
||||
"sc-listen": false,
|
||||
"threshold": -18.0
|
||||
},
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": 0.0,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 135.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass"
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 17000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-pass"
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 2,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 135.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-pass"
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 17000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.23,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-pass"
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"filter#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"frequency": 80.0,
|
||||
"gain": 0.0,
|
||||
"input-gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"output-gain": 0.0,
|
||||
"quality": 0.0,
|
||||
"slope": "x1",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"gate#0": {
|
||||
"attack": 5.0,
|
||||
"bypass": false,
|
||||
"curve-threshold": -24.0,
|
||||
"curve-zone": -6.0,
|
||||
"dry": -100.0,
|
||||
"hpf-frequency": 10.0,
|
||||
"hpf-mode": "off",
|
||||
"hysteresis": false,
|
||||
"hysteresis-threshold": -12.0,
|
||||
"hysteresis-zone": -6.0,
|
||||
"input-gain": 0.0,
|
||||
"lpf-frequency": 20000.0,
|
||||
"lpf-mode": "off",
|
||||
"makeup": 0.0,
|
||||
"output-gain": 0.0,
|
||||
"reduction": -12.0,
|
||||
"release": 100.0,
|
||||
"sidechain": {
|
||||
"input": "Internal",
|
||||
"lookahead": 0.0,
|
||||
"mode": "RMS",
|
||||
"preamp": 0.0,
|
||||
"reactivity": 10.0,
|
||||
"source": "Middle"
|
||||
},
|
||||
"wet": 0.0
|
||||
},
|
||||
"limiter#0": {
|
||||
"alr": false,
|
||||
"alr-attack": 5.0,
|
||||
"alr-knee": 0.0,
|
||||
"alr-release": 50.0,
|
||||
"attack": 5.0,
|
||||
"bypass": false,
|
||||
"dithering": "None",
|
||||
"external-sidechain": false,
|
||||
"gain-boost": true,
|
||||
"input-gain": 0.0,
|
||||
"lookahead": 5.0,
|
||||
"mode": "Herm Thin",
|
||||
"output-gain": 0.0,
|
||||
"oversampling": "None",
|
||||
"release": 5.0,
|
||||
"sidechain-preamp": 0.0,
|
||||
"stereo-link": 100.0,
|
||||
"threshold": -1.0
|
||||
},
|
||||
"loudness#0": {
|
||||
"bypass": false,
|
||||
"clipping": false,
|
||||
"clipping-range": 0.0,
|
||||
"fft": "2048",
|
||||
"input-gain": 0.0,
|
||||
"output-gain": 17.0,
|
||||
"std": "Flat",
|
||||
"volume": -6.0
|
||||
},
|
||||
"plugins_order": [
|
||||
"stereo_tools#0",
|
||||
"equalizer#0",
|
||||
"compressor#0",
|
||||
"deesser#0",
|
||||
"filter#0",
|
||||
"gate#0",
|
||||
"rnnoise#0",
|
||||
"limiter#0",
|
||||
"loudness#0"
|
||||
],
|
||||
"rnnoise#0": {
|
||||
"bypass": false,
|
||||
"enable-vad": true,
|
||||
"input-gain": 0.0,
|
||||
"model-path": "",
|
||||
"output-gain": 0.0,
|
||||
"release": 5.0,
|
||||
"vad-thres": 5.0,
|
||||
"wet": 0.0
|
||||
},
|
||||
"stereo_tools#0": {
|
||||
"balance-in": 0.22000000000000006,
|
||||
"balance-out": 0.0,
|
||||
"bypass": false,
|
||||
"delay": 0.0,
|
||||
"input-gain": 0.0,
|
||||
"middle-level": 0.0,
|
||||
"middle-panorama": 0.0,
|
||||
"mode": "LR > MS (Stereo to Mid-Side)",
|
||||
"mutel": false,
|
||||
"muter": false,
|
||||
"output-gain": 0.0,
|
||||
"phasel": false,
|
||||
"phaser": false,
|
||||
"sc-level": 1.0,
|
||||
"side-balance": 0.0,
|
||||
"side-level": 0.0,
|
||||
"softclip": false,
|
||||
"stereo-base": 0.0,
|
||||
"stereo-phase": 0.0
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,479 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -6.2,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 54.0,
|
||||
"gain": -6.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.78,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 143.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.79,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 199.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 947.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2361.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.42,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3557.0,
|
||||
"gain": 4.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.88,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5073.0,
|
||||
"gain": -3.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.57,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6891.0,
|
||||
"gain": -3.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.19,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -4.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 54.0,
|
||||
"gain": -6.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.78,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 143.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.79,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 199.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 947.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2361.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.42,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3557.0,
|
||||
"gain": 4.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.88,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5073.0,
|
||||
"gain": -3.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.57,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6891.0,
|
||||
"gain": -3.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.19,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -4.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"equalizer#1": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -4.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0",
|
||||
"equalizer#1"
|
||||
]
|
||||
}
|
||||
}
|
243
.config/easyeffects/output/Beyerdynamic DT 770 Pro (80 Ohm).json
Normal file
243
.config/easyeffects/output/Beyerdynamic DT 770 Pro (80 Ohm).json
Normal file
@@ -0,0 +1,243 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -6.2,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 54.0,
|
||||
"gain": -6.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.78,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 143.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.79,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 199.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 947.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2361.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.42,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3557.0,
|
||||
"gain": 4.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.88,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5073.0,
|
||||
"gain": -3.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.57,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6891.0,
|
||||
"gain": -3.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.19,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -4.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 54.0,
|
||||
"gain": -6.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.78,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 143.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.79,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 199.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 947.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.5,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2361.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.42,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3557.0,
|
||||
"gain": 4.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.88,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5073.0,
|
||||
"gain": -3.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.57,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6891.0,
|
||||
"gain": -3.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.19,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -4.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0"
|
||||
]
|
||||
}
|
||||
}
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -217,11 +239,11 @@
|
||||
"equalizer#1": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.5,
|
||||
"input-gain": -4.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 5.5,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -232,7 +254,7 @@
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 4.1,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -243,7 +265,7 @@
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 3.6,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -254,7 +276,7 @@
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": 2.2,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -265,7 +287,7 @@
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": 1.2,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -287,7 +309,7 @@
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -298,7 +320,7 @@
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -309,7 +331,7 @@
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -320,7 +342,7 @@
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -338,7 +360,7 @@
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 5.5,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -349,7 +371,7 @@
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 4.1,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -360,7 +382,7 @@
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 3.6,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -371,7 +393,7 @@
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": 2.2,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -382,7 +404,7 @@
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": 1.2,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -404,7 +426,7 @@
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -415,7 +437,7 @@
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -426,7 +448,7 @@
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -437,7 +459,7 @@
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
243
.config/easyeffects/output/Beyerdynamic DT1770 Pro (Velour).json
Normal file
243
.config/easyeffects/output/Beyerdynamic DT1770 Pro (Velour).json
Normal file
@@ -0,0 +1,243 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 68.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 136.0,
|
||||
"gain": -5.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.87,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 242.0,
|
||||
"gain": 5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.04,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 677.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.32,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2039.0,
|
||||
"gain": 3.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3208.0,
|
||||
"gain": 1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4202.0,
|
||||
"gain": 5.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 8596.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0"
|
||||
]
|
||||
}
|
||||
}
|
@@ -4,102 +4,113 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -6.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 6.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 126.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 127.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 405.0,
|
||||
"gain": 0.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 673.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 1914.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3374.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.62,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 5356.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 2.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6996.0,
|
||||
"gain": -1.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 5.96,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,105 +118,116 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 6.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 126.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 2.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 127.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"q": 0.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"frequency": 405.0,
|
||||
"gain": 0.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"frequency": 673.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"frequency": 1914.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"frequency": 3374.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.62,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"frequency": 5356.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 2.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6996.0,
|
||||
"gain": -1.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 5.96,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -217,11 +239,11 @@
|
||||
"equalizer#1": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": 0.0,
|
||||
"input-gain": -4.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 0.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -232,7 +254,7 @@
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -254,7 +276,7 @@
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -265,7 +287,7 @@
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -287,7 +309,7 @@
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -1.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -298,7 +320,7 @@
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -2.2,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -309,7 +331,7 @@
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -320,7 +342,7 @@
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -338,7 +360,7 @@
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 0.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -349,7 +371,7 @@
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -371,7 +393,7 @@
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -382,7 +404,7 @@
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": 0.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
@@ -404,7 +426,7 @@
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -1.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -415,7 +437,7 @@
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -2.2,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -426,7 +448,7 @@
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
@@ -437,7 +459,7 @@
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 0.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
243
.config/easyeffects/output/HIFIMAN HE400se (stealth magnet).json
Normal file
243
.config/easyeffects/output/HIFIMAN HE400se (stealth magnet).json
Normal file
@@ -0,0 +1,243 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -6.2,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 6.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 126.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 127.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 405.0,
|
||||
"gain": 0.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 673.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1914.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3374.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.62,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5356.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6996.0,
|
||||
"gain": -1.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 5.96,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 6.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 126.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 127.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 405.0,
|
||||
"gain": 0.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 673.0,
|
||||
"gain": -0.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.74,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1914.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 3374.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.62,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 5356.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 6996.0,
|
||||
"gain": -1.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 5.96,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.4,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0"
|
||||
]
|
||||
}
|
||||
}
|
479
.config/easyeffects/output/TANGZU Wan'er S.G + W-Shape.json
Normal file
479
.config/easyeffects/output/TANGZU Wan'er S.G + W-Shape.json
Normal file
@@ -0,0 +1,479 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 153.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 784.0,
|
||||
"gain": 1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1404.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.28,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2121.0,
|
||||
"gain": -2.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.1,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 3370.0,
|
||||
"gain": 0.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 4987.0,
|
||||
"gain": -1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 6301.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.21,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 9404.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 153.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 784.0,
|
||||
"gain": 1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1404.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.28,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2121.0,
|
||||
"gain": -2.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.1,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 3370.0,
|
||||
"gain": 0.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 4987.0,
|
||||
"gain": -1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 6301.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.21,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 9404.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"equalizer#1": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -4.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 31.0,
|
||||
"gain": 4.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 64.0,
|
||||
"gain": 2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 125.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 250.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 500.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 2000.0,
|
||||
"gain": -2.2,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 4000.0,
|
||||
"gain": -1.7,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 16000.0,
|
||||
"gain": 2.6,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0",
|
||||
"equalizer#1"
|
||||
]
|
||||
}
|
||||
}
|
243
.config/easyeffects/output/TANGZU Wan'er S.G.json
Normal file
243
.config/easyeffects/output/TANGZU Wan'er S.G.json
Normal file
@@ -0,0 +1,243 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.6,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 153.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 784.0,
|
||||
"gain": 1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1404.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.28,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2121.0,
|
||||
"gain": -2.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.1,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 3370.0,
|
||||
"gain": 0.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 4987.0,
|
||||
"gain": -1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 6301.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.21,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 9404.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 2.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 153.0,
|
||||
"gain": -2.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 784.0,
|
||||
"gain": 1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.72,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1404.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.28,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 2121.0,
|
||||
"gain": -2.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.1,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 3370.0,
|
||||
"gain": 0.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.24,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 4987.0,
|
||||
"gain": -1.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.43,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 6301.0,
|
||||
"gain": 5.8,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.21,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 9404.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.8,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0"
|
||||
]
|
||||
}
|
||||
}
|
@@ -4,33 +4,77 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -3.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 150.0,
|
||||
"gain": -2.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 263.0,
|
||||
"gain": -0.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 598.0,
|
||||
"gain": 0.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 622.0,
|
||||
"gain": 0.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 850.0,
|
||||
"gain": 1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.46,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 1470.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
@@ -39,67 +83,34 @@
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"band7": {
|
||||
"frequency": 3122.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.61,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6329.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,36 +118,80 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 150.0,
|
||||
"gain": -2.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"frequency": 263.0,
|
||||
"gain": -0.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 598.0,
|
||||
"gain": 0.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 622.0,
|
||||
"gain": 0.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 850.0,
|
||||
"gain": 1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.46,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 1470.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
@@ -145,67 +200,34 @@
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"band7": {
|
||||
"frequency": 3122.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.61,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6329.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -4,33 +4,77 @@
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"input-gain": -3.9,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 150.0,
|
||||
"gain": -2.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 263.0,
|
||||
"gain": -0.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"band3": {
|
||||
"frequency": 598.0,
|
||||
"gain": 0.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 622.0,
|
||||
"gain": 0.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 850.0,
|
||||
"gain": 1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.46,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 1470.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
@@ -39,67 +83,34 @@
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"band7": {
|
||||
"frequency": 3122.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.61,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6329.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
@@ -107,36 +118,80 @@
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"num-bands": 10,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"gain": 3.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"frequency": 150.0,
|
||||
"gain": -2.9,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 263.0,
|
||||
"gain": -0.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"band3": {
|
||||
"frequency": 598.0,
|
||||
"gain": 0.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.2,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 622.0,
|
||||
"gain": 0.6,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.58,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 850.0,
|
||||
"gain": 1.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.46,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 1470.0,
|
||||
"gain": -2.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
@@ -145,67 +200,34 @@
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"band7": {
|
||||
"frequency": 3122.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"q": 1.61,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"frequency": 6329.0,
|
||||
"gain": 1.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"q": 6.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -0.7,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.7,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
@@ -1,523 +0,0 @@
|
||||
{
|
||||
"output": {
|
||||
"blocklist": [],
|
||||
"equalizer#0": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -5.1,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 9,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 105.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Lo-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 135.0,
|
||||
"gain": -5.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.9,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 240.0,
|
||||
"gain": 5.1,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 2.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 1100.0,
|
||||
"gain": -1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.4,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 1500.0,
|
||||
"gain": 4.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 2700.0,
|
||||
"gain": -1.2,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 4.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 6000.0,
|
||||
"gain": -2.3,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 8100.0,
|
||||
"gain": -6.5,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 3.0,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 10000.0,
|
||||
"gain": -2.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 0.71,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Hi-shelf",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"equalizer#1": {
|
||||
"balance": 0.0,
|
||||
"bypass": false,
|
||||
"input-gain": -4.0,
|
||||
"left": {
|
||||
"band0": {
|
||||
"frequency": 20.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 30.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band10": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band11": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 3.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band12": {
|
||||
"frequency": 20000.0,
|
||||
"gain": 4.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 50.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 100.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 200.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 300.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 500.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 3000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"mode": "IIR",
|
||||
"num-bands": 13,
|
||||
"output-gain": 0.0,
|
||||
"pitch-left": 0.0,
|
||||
"pitch-right": 0.0,
|
||||
"right": {
|
||||
"band0": {
|
||||
"frequency": 20.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band1": {
|
||||
"frequency": 30.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band10": {
|
||||
"frequency": 5000.0,
|
||||
"gain": 2.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band11": {
|
||||
"frequency": 10000.0,
|
||||
"gain": 3.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band12": {
|
||||
"frequency": 20000.0,
|
||||
"gain": 4.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band2": {
|
||||
"frequency": 50.0,
|
||||
"gain": 1.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band3": {
|
||||
"frequency": 100.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band4": {
|
||||
"frequency": 200.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band5": {
|
||||
"frequency": 300.0,
|
||||
"gain": 0.0,
|
||||
"mode": "APO (DR)",
|
||||
"mute": false,
|
||||
"q": 1.409999966621399,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band6": {
|
||||
"frequency": 500.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band7": {
|
||||
"frequency": 1000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band8": {
|
||||
"frequency": 2000.0,
|
||||
"gain": 0.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
},
|
||||
"band9": {
|
||||
"frequency": 3000.0,
|
||||
"gain": 1.0,
|
||||
"mode": "RLC (BT)",
|
||||
"mute": false,
|
||||
"q": 1.41,
|
||||
"slope": "x1",
|
||||
"solo": false,
|
||||
"type": "Bell",
|
||||
"width": 4.0
|
||||
}
|
||||
},
|
||||
"split-channels": false
|
||||
},
|
||||
"plugins_order": [
|
||||
"equalizer#0",
|
||||
"equalizer#1"
|
||||
]
|
||||
}
|
||||
}
|
@@ -1,19 +1,2 @@
|
||||
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||
|
||||
include "/home/tiynger/.gtkrc-2.0.mine"
|
||||
gtk-theme-name="Arc-Gruvbox"
|
||||
gtk-icon-theme-name="Adwaita"
|
||||
gtk-font-name="IBM Plex Mono 12"
|
||||
gtk-cursor-theme-name="Adwaita"
|
||||
gtk-cursor-theme-size=0
|
||||
gtk-toolbar-style=GTK_TOOLBAR_TEXT
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=0
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=1
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle="hintslight"
|
||||
gtk-xft-rgba="rgb"
|
||||
gtk-theme-name="AdwaitaDark"
|
||||
gtk-font-name="Sans 12"
|
||||
|
@@ -1,16 +1,4 @@
|
||||
[Settings]
|
||||
gtk-theme-name=Arc-Gruvbox
|
||||
gtk-icon-theme-name=Adwaita
|
||||
gtk-font-name=IBM Plex Mono 12
|
||||
gtk-cursor-theme-size=0
|
||||
gtk-toolbar-style=GTK_TOOLBAR_TEXT
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=0
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=1
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintslight
|
||||
gtk-xft-rgba=rgb
|
||||
gtk-cursor-theme-name=Adwaita
|
||||
gtk-application-prefer-dark-theme = true
|
||||
gtk-icon-theme-name = Adwaita
|
||||
gtk-font-name = Sans 12
|
||||
|
4
.config/gtk-4.0/settings.ini
Normal file
4
.config/gtk-4.0/settings.ini
Normal file
@@ -0,0 +1,4 @@
|
||||
[Settings]
|
||||
gtk-application-prefer-dark-theme = true
|
||||
gtk-icon-theme-name = Adwaita
|
||||
gtk-font-name = Sans 12
|
@@ -22,3 +22,11 @@ x-scheme-handler/mailto=mail.desktop
|
||||
x-scheme-handler/mid=mail.desktop
|
||||
message/rfc822=mail.desktop
|
||||
x-scheme-handler/msteams=teams.desktop
|
||||
x-scheme-handler/tonsite=org.telegram.desktop.desktop
|
||||
inode/directory=file-browser.desktop
|
||||
x-scheme-handler/betterdiscord=discord.desktop
|
||||
|
||||
[Added Associations]
|
||||
application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop;
|
||||
x-scheme-handler/tonsite=org.telegram.desktop.desktop;
|
||||
text/calendar=org.mozilla.Thunderbird.desktop;
|
||||
|
@@ -197,3 +197,4 @@ h seek -5
|
||||
j seek -60
|
||||
k seek 60
|
||||
S cycle sub
|
||||
MBTN_LEFT no-osd cycle pause
|
||||
|
@@ -1 +1,4 @@
|
||||
fs=yes
|
||||
# for using thumbnail previews the following setting is needed
|
||||
# reference: https://github.com/TheAMM/mpv_thumbnail_script
|
||||
osc=no
|
||||
|
3
.config/mpv/script-opts/mpv_thumbnail_script.conf
Normal file
3
.config/mpv/script-opts/mpv_thumbnail_script.conf
Normal file
@@ -0,0 +1,3 @@
|
||||
autogenerate=yes
|
||||
autogenerate_max_duration=14400
|
||||
mpv_no_sub=yes
|
3886
.config/mpv/scripts/mpv_thumbnail_script_client_osc.lua
Normal file
3886
.config/mpv/scripts/mpv_thumbnail_script_client_osc.lua
Normal file
File diff suppressed because it is too large
Load Diff
736
.config/mpv/scripts/mpv_thumbnail_script_server-1.lua
Normal file
736
.config/mpv/scripts/mpv_thumbnail_script_server-1.lua
Normal file
@@ -0,0 +1,736 @@
|
||||
--[[
|
||||
Copyright (C) 2017 AMM
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
]]--
|
||||
--[[
|
||||
mpv_thumbnail_script.lua 0.4.2 - commit 682becf (branch master)
|
||||
https://github.com/TheAMM/mpv_thumbnail_script
|
||||
Built on 2024-04-06 15:30:02
|
||||
]]--
|
||||
local assdraw = require 'mp.assdraw'
|
||||
local msg = require 'mp.msg'
|
||||
local opt = require 'mp.options'
|
||||
local utils = require 'mp.utils'
|
||||
|
||||
-- Determine platform --
|
||||
ON_WINDOWS = (package.config:sub(1,1) ~= '/')
|
||||
|
||||
-- Some helper functions needed to parse the options --
|
||||
function isempty(v) return (v == false) or (v == nil) or (v == "") or (v == 0) or (type(v) == "table" and next(v) == nil) end
|
||||
|
||||
function divmod (a, b)
|
||||
return math.floor(a / b), a % b
|
||||
end
|
||||
|
||||
-- Better modulo
|
||||
function bmod( i, N )
|
||||
return (i % N + N) % N
|
||||
end
|
||||
|
||||
function join_paths(...)
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local result = "";
|
||||
for i, p in pairs({...}) do
|
||||
if p ~= "" then
|
||||
if is_absolute_path(p) then
|
||||
result = p
|
||||
else
|
||||
result = (result ~= "") and (result:gsub("[\\"..sep.."]*$", "") .. sep .. p) or p
|
||||
end
|
||||
end
|
||||
end
|
||||
return result:gsub("[\\"..sep.."]*$", "")
|
||||
end
|
||||
|
||||
-- /some/path/file.ext -> /some/path, file.ext
|
||||
function split_path( path )
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local first_index, last_index = path:find('^.*' .. sep)
|
||||
|
||||
if last_index == nil then
|
||||
return "", path
|
||||
else
|
||||
local dir = path:sub(0, last_index-1)
|
||||
local file = path:sub(last_index+1, -1)
|
||||
|
||||
return dir, file
|
||||
end
|
||||
end
|
||||
|
||||
function is_absolute_path( path )
|
||||
local tmp, is_win = path:gsub("^[A-Z]:\\", "")
|
||||
local tmp, is_unix = path:gsub("^/", "")
|
||||
return (is_win > 0) or (is_unix > 0)
|
||||
end
|
||||
|
||||
function Set(source)
|
||||
local set = {}
|
||||
for _, l in ipairs(source) do set[l] = true end
|
||||
return set
|
||||
end
|
||||
|
||||
---------------------------
|
||||
-- More helper functions --
|
||||
---------------------------
|
||||
|
||||
-- Removes all keys from a table, without destroying the reference to it
|
||||
function clear_table(target)
|
||||
for key, value in pairs(target) do
|
||||
target[key] = nil
|
||||
end
|
||||
end
|
||||
function shallow_copy(target)
|
||||
local copy = {}
|
||||
for k, v in pairs(target) do
|
||||
copy[k] = v
|
||||
end
|
||||
return copy
|
||||
end
|
||||
|
||||
-- Rounds to given decimals. eg. round_dec(3.145, 0) => 3
|
||||
function round_dec(num, idp)
|
||||
local mult = 10^(idp or 0)
|
||||
return math.floor(num * mult + 0.5) / mult
|
||||
end
|
||||
|
||||
function file_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
local ok, err, code = f:read(1)
|
||||
io.close(f)
|
||||
return code == nil
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function path_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
io.close(f)
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function create_directories(path)
|
||||
local cmd
|
||||
if ON_WINDOWS then
|
||||
cmd = { args = {"cmd", "/c", "mkdir", path} }
|
||||
else
|
||||
cmd = { args = {"mkdir", "-p", path} }
|
||||
end
|
||||
utils.subprocess(cmd)
|
||||
end
|
||||
|
||||
-- Find an executable in PATH or CWD with the given name
|
||||
function find_executable(name)
|
||||
local delim = ON_WINDOWS and ";" or ":"
|
||||
|
||||
local pwd = os.getenv("PWD") or utils.getcwd()
|
||||
local path = os.getenv("PATH")
|
||||
|
||||
local env_path = pwd .. delim .. path -- Check CWD first
|
||||
|
||||
local result, filename
|
||||
for path_dir in env_path:gmatch("[^"..delim.."]+") do
|
||||
filename = join_paths(path_dir, name)
|
||||
if file_exists(filename) then
|
||||
result = filename
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
return result
|
||||
end
|
||||
|
||||
local ExecutableFinder = { path_cache = {} }
|
||||
-- Searches for an executable and caches the result if any
|
||||
function ExecutableFinder:get_executable_path( name, raw_name )
|
||||
name = ON_WINDOWS and not raw_name and (name .. ".exe") or name
|
||||
|
||||
if self.path_cache[name] == nil then
|
||||
self.path_cache[name] = find_executable(name) or false
|
||||
end
|
||||
return self.path_cache[name]
|
||||
end
|
||||
|
||||
-- Format seconds to HH.MM.SS.sss
|
||||
function format_time(seconds, sep, decimals)
|
||||
decimals = decimals == nil and 3 or decimals
|
||||
sep = sep and sep or "."
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
local second_format = string.format("%%0%d.%df", 2+(decimals > 0 and decimals+1 or 0), decimals)
|
||||
|
||||
return string.format("%02d"..sep.."%02d"..sep..second_format, h, m, s)
|
||||
end
|
||||
|
||||
-- Format seconds to 1h 2m 3.4s
|
||||
function format_time_hms(seconds, sep, decimals, force_full)
|
||||
decimals = decimals == nil and 1 or decimals
|
||||
sep = sep ~= nil and sep or " "
|
||||
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
if force_full or h > 0 then
|
||||
return string.format("%dh"..sep.."%dm"..sep.."%." .. tostring(decimals) .. "fs", h, m, s)
|
||||
elseif m > 0 then
|
||||
return string.format("%dm"..sep.."%." .. tostring(decimals) .. "fs", m, s)
|
||||
else
|
||||
return string.format("%." .. tostring(decimals) .. "fs", s)
|
||||
end
|
||||
end
|
||||
|
||||
-- Writes text on OSD and console
|
||||
function log_info(txt, timeout)
|
||||
timeout = timeout or 1.5
|
||||
msg.info(txt)
|
||||
mp.osd_message(txt, timeout)
|
||||
end
|
||||
|
||||
-- Join table items, ala ({"a", "b", "c"}, "=", "-", ", ") => "=a-, =b-, =c-"
|
||||
function join_table(source, before, after, sep)
|
||||
before = before or ""
|
||||
after = after or ""
|
||||
sep = sep or ", "
|
||||
local result = ""
|
||||
for i, v in pairs(source) do
|
||||
if not isempty(v) then
|
||||
local part = before .. v .. after
|
||||
if i == 1 then
|
||||
result = part
|
||||
else
|
||||
result = result .. sep .. part
|
||||
end
|
||||
end
|
||||
end
|
||||
return result
|
||||
end
|
||||
|
||||
function wrap(s, char)
|
||||
char = char or "'"
|
||||
return char .. s .. char
|
||||
end
|
||||
-- Wraps given string into 'string' and escapes any 's in it
|
||||
function escape_and_wrap(s, char, replacement)
|
||||
char = char or "'"
|
||||
replacement = replacement or "\\" .. char
|
||||
return wrap(string.gsub(s, char, replacement), char)
|
||||
end
|
||||
-- Escapes single quotes in a string and wraps the input in single quotes
|
||||
function escape_single_bash(s)
|
||||
return escape_and_wrap(s, "'", "'\\''")
|
||||
end
|
||||
|
||||
-- Returns (a .. b) if b is not empty or nil
|
||||
function joined_or_nil(a, b)
|
||||
return not isempty(b) and (a .. b) or nil
|
||||
end
|
||||
|
||||
-- Put items from one table into another
|
||||
function extend_table(target, source)
|
||||
for i, v in pairs(source) do
|
||||
table.insert(target, v)
|
||||
end
|
||||
end
|
||||
|
||||
-- Creates a handle and filename for a temporary random file (in current directory)
|
||||
function create_temporary_file(base, mode, suffix)
|
||||
local handle, filename
|
||||
suffix = suffix or ""
|
||||
while true do
|
||||
filename = base .. tostring(math.random(1, 5000)) .. suffix
|
||||
handle = io.open(filename, "r")
|
||||
if not handle then
|
||||
handle = io.open(filename, mode)
|
||||
break
|
||||
end
|
||||
io.close(handle)
|
||||
end
|
||||
return handle, filename
|
||||
end
|
||||
|
||||
|
||||
function get_processor_count()
|
||||
local proc_count
|
||||
|
||||
if ON_WINDOWS then
|
||||
proc_count = tonumber(os.getenv("NUMBER_OF_PROCESSORS"))
|
||||
else
|
||||
local cpuinfo_handle = io.open("/proc/cpuinfo")
|
||||
if cpuinfo_handle ~= nil then
|
||||
local cpuinfo_contents = cpuinfo_handle:read("*a")
|
||||
local _, replace_count = cpuinfo_contents:gsub('processor', '')
|
||||
proc_count = replace_count
|
||||
end
|
||||
end
|
||||
|
||||
if proc_count and proc_count > 0 then
|
||||
return proc_count
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
function substitute_values(string, values)
|
||||
local substitutor = function(match)
|
||||
if match == "%" then
|
||||
return "%"
|
||||
else
|
||||
-- nil is discarded by gsub
|
||||
return values[match]
|
||||
end
|
||||
end
|
||||
|
||||
local substituted = string:gsub('%%(.)', substitutor)
|
||||
return substituted
|
||||
end
|
||||
|
||||
-- ASS HELPERS --
|
||||
function round_rect_top( ass, x0, y0, x1, y1, r )
|
||||
local c = 0.551915024494 * r -- circle approximation
|
||||
ass:move_to(x0 + r, y0)
|
||||
ass:line_to(x1 - r, y0) -- top line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x1 - r + c, y0, x1, y0 + r - c, x1, y0 + r) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1) -- right line
|
||||
ass:line_to(x0, y1) -- bottom line
|
||||
ass:line_to(x0, y0 + r) -- left line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x0, y0 + r - c, x0 + r - c, y0, x0 + r, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
|
||||
function round_rect(ass, x0, y0, x1, y1, rtl, rtr, rbr, rbl)
|
||||
local c = 0.551915024494
|
||||
ass:move_to(x0 + rtl, y0)
|
||||
ass:line_to(x1 - rtr, y0) -- top line
|
||||
if rtr > 0 then
|
||||
ass:bezier_curve(x1 - rtr + rtr*c, y0, x1, y0 + rtr - rtr*c, x1, y0 + rtr) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1 - rbr) -- right line
|
||||
if rbr > 0 then
|
||||
ass:bezier_curve(x1, y1 - rbr + rbr*c, x1 - rbr + rbr*c, y1, x1 - rbr, y1) -- bottom right corner
|
||||
end
|
||||
ass:line_to(x0 + rbl, y1) -- bottom line
|
||||
if rbl > 0 then
|
||||
ass:bezier_curve(x0 + rbl - rbl*c, y1, x0, y1 - rbl + rbl*c, x0, y1 - rbl) -- bottom left corner
|
||||
end
|
||||
ass:line_to(x0, y0 + rtl) -- left line
|
||||
if rtl > 0 then
|
||||
ass:bezier_curve(x0, y0 + rtl - rtl*c, x0 + rtl - rtl*c, y0, x0 + rtl, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
local SCRIPT_NAME = "mpv_thumbnail_script"
|
||||
|
||||
local default_cache_base = ON_WINDOWS and os.getenv("TEMP") or "/tmp/"
|
||||
|
||||
local thumbnailer_options = {
|
||||
-- The thumbnail directory
|
||||
cache_directory = join_paths(default_cache_base, "mpv_thumbs_cache"),
|
||||
|
||||
------------------------
|
||||
-- Generation options --
|
||||
------------------------
|
||||
|
||||
-- Automatically generate the thumbnails on video load, without a keypress
|
||||
autogenerate = true,
|
||||
|
||||
-- Only automatically thumbnail videos shorter than this (seconds)
|
||||
autogenerate_max_duration = 3600, -- 1 hour
|
||||
|
||||
-- SHA1-sum filenames over this length
|
||||
-- It's nice to know what files the thumbnails are (hence directory names)
|
||||
-- but long URLs may approach filesystem limits.
|
||||
hash_filename_length = 128,
|
||||
|
||||
-- Use mpv to generate thumbnail even if ffmpeg is found in PATH
|
||||
-- ffmpeg does not handle ordered chapters (MKVs which rely on other MKVs)!
|
||||
-- mpv is a bit slower, but has better support overall (eg. subtitles in the previews)
|
||||
prefer_mpv = true,
|
||||
|
||||
-- Explicitly disable subtitles on the mpv sub-calls
|
||||
mpv_no_sub = false,
|
||||
-- Add a "--no-config" to the mpv sub-call arguments
|
||||
mpv_no_config = false,
|
||||
-- Add a "--profile=<mpv_profile>" to the mpv sub-call arguments
|
||||
-- Use "" to disable
|
||||
mpv_profile = "",
|
||||
-- Output debug logs to <thumbnail_path>.log, ala <cache_directory>/<video_filename>/000000.bgra.log
|
||||
-- The logs are removed after successful encodes, unless you set mpv_keep_logs below
|
||||
mpv_logs = true,
|
||||
-- Keep all mpv logs, even the succesfull ones
|
||||
mpv_keep_logs = false,
|
||||
|
||||
-- Disable the built-in keybind ("T") to add your own
|
||||
disable_keybinds = false,
|
||||
|
||||
---------------------
|
||||
-- Display options --
|
||||
---------------------
|
||||
|
||||
-- Move the thumbnail up or down
|
||||
-- For example:
|
||||
-- topbar/bottombar: 24
|
||||
-- rest: 0
|
||||
vertical_offset = 24,
|
||||
|
||||
-- Adjust background padding
|
||||
-- Examples:
|
||||
-- topbar: 0, 10, 10, 10
|
||||
-- bottombar: 10, 0, 10, 10
|
||||
-- slimbox/box: 10, 10, 10, 10
|
||||
pad_top = 10,
|
||||
pad_bot = 0,
|
||||
pad_left = 10,
|
||||
pad_right = 10,
|
||||
|
||||
-- If true, pad values are screen-pixels. If false, video-pixels.
|
||||
pad_in_screenspace = true,
|
||||
-- Calculate pad into the offset
|
||||
offset_by_pad = true,
|
||||
|
||||
-- Background color in BBGGRR
|
||||
background_color = "000000",
|
||||
-- Alpha: 0 - fully opaque, 255 - transparent
|
||||
background_alpha = 80,
|
||||
|
||||
-- Keep thumbnail on the screen near left or right side
|
||||
constrain_to_screen = true,
|
||||
|
||||
-- Do not display the thumbnailing progress
|
||||
hide_progress = false,
|
||||
|
||||
-----------------------
|
||||
-- Thumbnail options --
|
||||
-----------------------
|
||||
|
||||
-- The maximum dimensions of the thumbnails (pixels)
|
||||
thumbnail_width = 200,
|
||||
thumbnail_height = 200,
|
||||
|
||||
-- The thumbnail count target
|
||||
-- (This will result in a thumbnail every ~10 seconds for a 25 minute video)
|
||||
thumbnail_count = 150,
|
||||
|
||||
-- The above target count will be adjusted by the minimum and
|
||||
-- maximum time difference between thumbnails.
|
||||
-- The thumbnail_count will be used to calculate a target separation,
|
||||
-- and min/max_delta will be used to constrict it.
|
||||
|
||||
-- In other words, thumbnails will be:
|
||||
-- at least min_delta seconds apart (limiting the amount)
|
||||
-- at most max_delta seconds apart (raising the amount if needed)
|
||||
min_delta = 5,
|
||||
-- 120 seconds aka 2 minutes will add more thumbnails when the video is over 5 hours!
|
||||
max_delta = 90,
|
||||
|
||||
|
||||
-- Overrides for remote urls (you generally want less thumbnails!)
|
||||
-- Thumbnailing network paths will be done with mpv
|
||||
|
||||
-- Allow thumbnailing network paths (naive check for "://")
|
||||
thumbnail_network = false,
|
||||
-- Override thumbnail count, min/max delta
|
||||
remote_thumbnail_count = 60,
|
||||
remote_min_delta = 15,
|
||||
remote_max_delta = 120,
|
||||
|
||||
-- Try to grab the raw stream and disable ytdl for the mpv subcalls
|
||||
-- Much faster than passing the url to ytdl again, but may cause problems with some sites
|
||||
remote_direct_stream = true,
|
||||
}
|
||||
|
||||
read_options(thumbnailer_options, SCRIPT_NAME)
|
||||
function skip_nil(tbl)
|
||||
local n = {}
|
||||
for k, v in pairs(tbl) do
|
||||
table.insert(n, v)
|
||||
end
|
||||
return n
|
||||
end
|
||||
|
||||
function create_thumbnail_mpv(file_path, timestamp, size, output_path, options)
|
||||
options = options or {}
|
||||
|
||||
local ytdl_disabled = not options.enable_ytdl and (mp.get_property_native("ytdl") == false
|
||||
or thumbnailer_options.remote_direct_stream)
|
||||
|
||||
local header_fields_arg = nil
|
||||
local header_fields = mp.get_property_native("http-header-fields")
|
||||
if #header_fields > 0 then
|
||||
-- We can't escape the headers, mpv won't parse "--http-header-fields='Name: value'" properly
|
||||
header_fields_arg = "--http-header-fields=" .. table.concat(header_fields, ",")
|
||||
end
|
||||
|
||||
local profile_arg = nil
|
||||
if thumbnailer_options.mpv_profile ~= "" then
|
||||
profile_arg = "--profile=" .. thumbnailer_options.mpv_profile
|
||||
end
|
||||
|
||||
local log_arg = "--log-file=" .. output_path .. ".log"
|
||||
|
||||
local mpv_command = skip_nil({
|
||||
"mpv",
|
||||
-- Hide console output
|
||||
"--msg-level=all=no",
|
||||
|
||||
-- Disable ytdl
|
||||
(ytdl_disabled and "--no-ytdl" or nil),
|
||||
-- Pass HTTP headers from current instance
|
||||
header_fields_arg,
|
||||
-- Pass User-Agent and Referer - should do no harm even with ytdl active
|
||||
"--user-agent=" .. mp.get_property_native("user-agent"),
|
||||
"--referrer=" .. mp.get_property_native("referrer"),
|
||||
-- Disable hardware decoding
|
||||
"--hwdec=no",
|
||||
|
||||
-- Insert --no-config, --profile=... and --log-file if enabled
|
||||
(thumbnailer_options.mpv_no_config and "--no-config" or nil),
|
||||
profile_arg,
|
||||
(thumbnailer_options.mpv_logs and log_arg or nil),
|
||||
|
||||
file_path,
|
||||
|
||||
"--start=" .. tostring(timestamp),
|
||||
"--frames=1",
|
||||
"--hr-seek=yes",
|
||||
"--no-audio",
|
||||
-- Optionally disable subtitles
|
||||
(thumbnailer_options.mpv_no_sub and "--no-sub" or nil),
|
||||
|
||||
("--vf=scale=%d:%d"):format(size.w, size.h),
|
||||
"--vf-add=format=bgra",
|
||||
"--of=rawvideo",
|
||||
"--ovc=rawvideo",
|
||||
"--o=" .. output_path
|
||||
})
|
||||
return utils.subprocess({args=mpv_command})
|
||||
end
|
||||
|
||||
|
||||
function create_thumbnail_ffmpeg(file_path, timestamp, size, output_path)
|
||||
local ffmpeg_command = {
|
||||
"ffmpeg",
|
||||
"-loglevel", "quiet",
|
||||
"-noaccurate_seek",
|
||||
"-ss", format_time(timestamp, ":"),
|
||||
"-i", file_path,
|
||||
|
||||
"-frames:v", "1",
|
||||
"-an",
|
||||
|
||||
"-vf", ("scale=%d:%d"):format(size.w, size.h),
|
||||
"-c:v", "rawvideo",
|
||||
"-pix_fmt", "bgra",
|
||||
"-f", "rawvideo",
|
||||
|
||||
"-y", output_path
|
||||
}
|
||||
return utils.subprocess({args=ffmpeg_command})
|
||||
end
|
||||
|
||||
|
||||
function check_output(ret, output_path, is_mpv)
|
||||
local log_path = output_path .. ".log"
|
||||
local success = true
|
||||
|
||||
if ret.killed_by_us then
|
||||
return nil
|
||||
else
|
||||
if ret.error or ret.status ~= 0 then
|
||||
msg.error("Thumbnailing command failed!")
|
||||
msg.error("mpv process error:", ret.error)
|
||||
msg.error("Process stdout:", ret.stdout)
|
||||
if is_mpv then
|
||||
msg.error("Debug log:", log_path)
|
||||
end
|
||||
|
||||
success = false
|
||||
end
|
||||
|
||||
if not file_exists(output_path) then
|
||||
msg.error("Output file missing!", output_path)
|
||||
success = false
|
||||
end
|
||||
end
|
||||
|
||||
if is_mpv and not thumbnailer_options.mpv_keep_logs then
|
||||
-- Remove successful debug logs
|
||||
if success and file_exists(log_path) then
|
||||
os.remove(log_path)
|
||||
end
|
||||
end
|
||||
|
||||
return success
|
||||
end
|
||||
|
||||
|
||||
function do_worker_job(state_json_string, frames_json_string)
|
||||
msg.debug("Handling given job")
|
||||
local thumb_state, err = utils.parse_json(state_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse state JSON")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_indexes, err = utils.parse_json(frames_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse thumbnail frame indexes")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_func = create_thumbnail_mpv
|
||||
if not thumbnailer_options.prefer_mpv then
|
||||
if ExecutableFinder:get_executable_path("ffmpeg") then
|
||||
thumbnail_func = create_thumbnail_ffmpeg
|
||||
else
|
||||
msg.warn("Could not find ffmpeg in PATH! Falling back on mpv.")
|
||||
end
|
||||
end
|
||||
|
||||
local file_duration = mp.get_property_native("duration")
|
||||
local file_path = thumb_state.worker_input_path
|
||||
|
||||
if thumb_state.is_remote then
|
||||
if (thumbnail_func == create_thumbnail_ffmpeg) then
|
||||
msg.warn("Thumbnailing remote path, falling back on mpv.")
|
||||
end
|
||||
thumbnail_func = create_thumbnail_mpv
|
||||
end
|
||||
|
||||
local generate_thumbnail_for_index = function(thumbnail_index)
|
||||
-- Given a 1-based thumbnail index, generate a thumbnail for it based on the thumbnailer state
|
||||
local thumb_idx = thumbnail_index - 1
|
||||
msg.debug("Starting work on thumbnail", thumb_idx)
|
||||
|
||||
local thumbnail_path = thumb_state.thumbnail_template:format(thumb_idx)
|
||||
-- Grab the "middle" of the thumbnail duration instead of the very start, and leave some margin in the end
|
||||
local timestamp = math.min(file_duration - 0.25, (thumb_idx + 0.5) * thumb_state.thumbnail_delta)
|
||||
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-progress", tostring(thumbnail_index))
|
||||
|
||||
-- The expected size (raw BGRA image)
|
||||
local thumbnail_raw_size = (thumb_state.thumbnail_size.w * thumb_state.thumbnail_size.h * 4)
|
||||
|
||||
local need_thumbnail_generation = false
|
||||
|
||||
-- Check if the thumbnail already exists and is the correct size
|
||||
local thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
if thumbnail_file == nil then
|
||||
need_thumbnail_generation = true
|
||||
else
|
||||
local existing_thumbnail_filesize = thumbnail_file:seek("end")
|
||||
if existing_thumbnail_filesize ~= thumbnail_raw_size then
|
||||
-- Size doesn't match, so (re)generate
|
||||
msg.warn("Thumbnail", thumb_idx, "did not match expected size, regenerating")
|
||||
need_thumbnail_generation = true
|
||||
end
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
if need_thumbnail_generation then
|
||||
local ret = thumbnail_func(file_path, timestamp, thumb_state.thumbnail_size, thumbnail_path, thumb_state.worker_extra)
|
||||
local success = check_output(ret, thumbnail_path, thumbnail_func == create_thumbnail_mpv)
|
||||
|
||||
if success == nil then
|
||||
-- Killed by us, changing files, ignore
|
||||
msg.debug("Changing files, subprocess killed")
|
||||
return true
|
||||
elseif not success then
|
||||
-- Real failure
|
||||
mp.osd_message("Thumbnailing failed, check console for details", 3.5)
|
||||
return true
|
||||
end
|
||||
else
|
||||
msg.debug("Thumbnail", thumb_idx, "already done!")
|
||||
end
|
||||
|
||||
-- Verify thumbnail size
|
||||
-- Sometimes ffmpeg will output an empty file when seeking to a "bad" section (usually the end)
|
||||
thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
|
||||
-- Bail if we can't read the file (it should really exist by now, we checked this in check_output!)
|
||||
if thumbnail_file == nil then
|
||||
msg.error("Thumbnail suddenly disappeared!")
|
||||
return true
|
||||
end
|
||||
|
||||
-- Check the size of the generated file
|
||||
local thumbnail_file_size = thumbnail_file:seek("end")
|
||||
thumbnail_file:close()
|
||||
|
||||
-- Check if the file is big enough
|
||||
local missing_bytes = math.max(0, thumbnail_raw_size - thumbnail_file_size)
|
||||
if missing_bytes > 0 then
|
||||
msg.warn(("Thumbnail missing %d bytes (expected %d, had %d), padding %s"):format(
|
||||
missing_bytes, thumbnail_raw_size, thumbnail_file_size, thumbnail_path
|
||||
))
|
||||
-- Pad the file if it's missing content (eg. ffmpeg seek to file end)
|
||||
thumbnail_file = io.open(thumbnail_path, "ab")
|
||||
thumbnail_file:write(string.rep(string.char(0), missing_bytes))
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
msg.debug("Finished work on thumbnail", thumb_idx)
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-ready", tostring(thumbnail_index), thumbnail_path)
|
||||
end
|
||||
|
||||
msg.debug(("Generating %d thumbnails @ %dx%d for %q"):format(
|
||||
#thumbnail_indexes,
|
||||
thumb_state.thumbnail_size.w,
|
||||
thumb_state.thumbnail_size.h,
|
||||
file_path))
|
||||
|
||||
for i, thumbnail_index in ipairs(thumbnail_indexes) do
|
||||
local bail = generate_thumbnail_for_index(thumbnail_index)
|
||||
if bail then return end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
-- Set up listeners and keybinds
|
||||
|
||||
-- Job listener
|
||||
mp.register_script_message("mpv_thumbnail_script-job", do_worker_job)
|
||||
|
||||
|
||||
-- Register this worker with the master script
|
||||
local register_timer = nil
|
||||
local register_timeout = mp.get_time() + 1.5
|
||||
|
||||
local register_function = function()
|
||||
if mp.get_time() > register_timeout and register_timer then
|
||||
msg.error("Thumbnail worker registering timed out")
|
||||
register_timer:stop()
|
||||
else
|
||||
msg.debug("Announcing self to master...")
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-worker", mp.get_script_name())
|
||||
end
|
||||
end
|
||||
|
||||
register_timer = mp.add_periodic_timer(0.1, register_function)
|
||||
|
||||
mp.register_script_message("mpv_thumbnail_script-slaved", function()
|
||||
msg.debug("Successfully registered with master")
|
||||
register_timer:stop()
|
||||
end)
|
736
.config/mpv/scripts/mpv_thumbnail_script_server-2.lua
Normal file
736
.config/mpv/scripts/mpv_thumbnail_script_server-2.lua
Normal file
@@ -0,0 +1,736 @@
|
||||
--[[
|
||||
Copyright (C) 2017 AMM
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
]]--
|
||||
--[[
|
||||
mpv_thumbnail_script.lua 0.4.2 - commit 682becf (branch master)
|
||||
https://github.com/TheAMM/mpv_thumbnail_script
|
||||
Built on 2024-04-06 15:30:02
|
||||
]]--
|
||||
local assdraw = require 'mp.assdraw'
|
||||
local msg = require 'mp.msg'
|
||||
local opt = require 'mp.options'
|
||||
local utils = require 'mp.utils'
|
||||
|
||||
-- Determine platform --
|
||||
ON_WINDOWS = (package.config:sub(1,1) ~= '/')
|
||||
|
||||
-- Some helper functions needed to parse the options --
|
||||
function isempty(v) return (v == false) or (v == nil) or (v == "") or (v == 0) or (type(v) == "table" and next(v) == nil) end
|
||||
|
||||
function divmod (a, b)
|
||||
return math.floor(a / b), a % b
|
||||
end
|
||||
|
||||
-- Better modulo
|
||||
function bmod( i, N )
|
||||
return (i % N + N) % N
|
||||
end
|
||||
|
||||
function join_paths(...)
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local result = "";
|
||||
for i, p in pairs({...}) do
|
||||
if p ~= "" then
|
||||
if is_absolute_path(p) then
|
||||
result = p
|
||||
else
|
||||
result = (result ~= "") and (result:gsub("[\\"..sep.."]*$", "") .. sep .. p) or p
|
||||
end
|
||||
end
|
||||
end
|
||||
return result:gsub("[\\"..sep.."]*$", "")
|
||||
end
|
||||
|
||||
-- /some/path/file.ext -> /some/path, file.ext
|
||||
function split_path( path )
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local first_index, last_index = path:find('^.*' .. sep)
|
||||
|
||||
if last_index == nil then
|
||||
return "", path
|
||||
else
|
||||
local dir = path:sub(0, last_index-1)
|
||||
local file = path:sub(last_index+1, -1)
|
||||
|
||||
return dir, file
|
||||
end
|
||||
end
|
||||
|
||||
function is_absolute_path( path )
|
||||
local tmp, is_win = path:gsub("^[A-Z]:\\", "")
|
||||
local tmp, is_unix = path:gsub("^/", "")
|
||||
return (is_win > 0) or (is_unix > 0)
|
||||
end
|
||||
|
||||
function Set(source)
|
||||
local set = {}
|
||||
for _, l in ipairs(source) do set[l] = true end
|
||||
return set
|
||||
end
|
||||
|
||||
---------------------------
|
||||
-- More helper functions --
|
||||
---------------------------
|
||||
|
||||
-- Removes all keys from a table, without destroying the reference to it
|
||||
function clear_table(target)
|
||||
for key, value in pairs(target) do
|
||||
target[key] = nil
|
||||
end
|
||||
end
|
||||
function shallow_copy(target)
|
||||
local copy = {}
|
||||
for k, v in pairs(target) do
|
||||
copy[k] = v
|
||||
end
|
||||
return copy
|
||||
end
|
||||
|
||||
-- Rounds to given decimals. eg. round_dec(3.145, 0) => 3
|
||||
function round_dec(num, idp)
|
||||
local mult = 10^(idp or 0)
|
||||
return math.floor(num * mult + 0.5) / mult
|
||||
end
|
||||
|
||||
function file_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
local ok, err, code = f:read(1)
|
||||
io.close(f)
|
||||
return code == nil
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function path_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
io.close(f)
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function create_directories(path)
|
||||
local cmd
|
||||
if ON_WINDOWS then
|
||||
cmd = { args = {"cmd", "/c", "mkdir", path} }
|
||||
else
|
||||
cmd = { args = {"mkdir", "-p", path} }
|
||||
end
|
||||
utils.subprocess(cmd)
|
||||
end
|
||||
|
||||
-- Find an executable in PATH or CWD with the given name
|
||||
function find_executable(name)
|
||||
local delim = ON_WINDOWS and ";" or ":"
|
||||
|
||||
local pwd = os.getenv("PWD") or utils.getcwd()
|
||||
local path = os.getenv("PATH")
|
||||
|
||||
local env_path = pwd .. delim .. path -- Check CWD first
|
||||
|
||||
local result, filename
|
||||
for path_dir in env_path:gmatch("[^"..delim.."]+") do
|
||||
filename = join_paths(path_dir, name)
|
||||
if file_exists(filename) then
|
||||
result = filename
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
return result
|
||||
end
|
||||
|
||||
local ExecutableFinder = { path_cache = {} }
|
||||
-- Searches for an executable and caches the result if any
|
||||
function ExecutableFinder:get_executable_path( name, raw_name )
|
||||
name = ON_WINDOWS and not raw_name and (name .. ".exe") or name
|
||||
|
||||
if self.path_cache[name] == nil then
|
||||
self.path_cache[name] = find_executable(name) or false
|
||||
end
|
||||
return self.path_cache[name]
|
||||
end
|
||||
|
||||
-- Format seconds to HH.MM.SS.sss
|
||||
function format_time(seconds, sep, decimals)
|
||||
decimals = decimals == nil and 3 or decimals
|
||||
sep = sep and sep or "."
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
local second_format = string.format("%%0%d.%df", 2+(decimals > 0 and decimals+1 or 0), decimals)
|
||||
|
||||
return string.format("%02d"..sep.."%02d"..sep..second_format, h, m, s)
|
||||
end
|
||||
|
||||
-- Format seconds to 1h 2m 3.4s
|
||||
function format_time_hms(seconds, sep, decimals, force_full)
|
||||
decimals = decimals == nil and 1 or decimals
|
||||
sep = sep ~= nil and sep or " "
|
||||
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
if force_full or h > 0 then
|
||||
return string.format("%dh"..sep.."%dm"..sep.."%." .. tostring(decimals) .. "fs", h, m, s)
|
||||
elseif m > 0 then
|
||||
return string.format("%dm"..sep.."%." .. tostring(decimals) .. "fs", m, s)
|
||||
else
|
||||
return string.format("%." .. tostring(decimals) .. "fs", s)
|
||||
end
|
||||
end
|
||||
|
||||
-- Writes text on OSD and console
|
||||
function log_info(txt, timeout)
|
||||
timeout = timeout or 1.5
|
||||
msg.info(txt)
|
||||
mp.osd_message(txt, timeout)
|
||||
end
|
||||
|
||||
-- Join table items, ala ({"a", "b", "c"}, "=", "-", ", ") => "=a-, =b-, =c-"
|
||||
function join_table(source, before, after, sep)
|
||||
before = before or ""
|
||||
after = after or ""
|
||||
sep = sep or ", "
|
||||
local result = ""
|
||||
for i, v in pairs(source) do
|
||||
if not isempty(v) then
|
||||
local part = before .. v .. after
|
||||
if i == 1 then
|
||||
result = part
|
||||
else
|
||||
result = result .. sep .. part
|
||||
end
|
||||
end
|
||||
end
|
||||
return result
|
||||
end
|
||||
|
||||
function wrap(s, char)
|
||||
char = char or "'"
|
||||
return char .. s .. char
|
||||
end
|
||||
-- Wraps given string into 'string' and escapes any 's in it
|
||||
function escape_and_wrap(s, char, replacement)
|
||||
char = char or "'"
|
||||
replacement = replacement or "\\" .. char
|
||||
return wrap(string.gsub(s, char, replacement), char)
|
||||
end
|
||||
-- Escapes single quotes in a string and wraps the input in single quotes
|
||||
function escape_single_bash(s)
|
||||
return escape_and_wrap(s, "'", "'\\''")
|
||||
end
|
||||
|
||||
-- Returns (a .. b) if b is not empty or nil
|
||||
function joined_or_nil(a, b)
|
||||
return not isempty(b) and (a .. b) or nil
|
||||
end
|
||||
|
||||
-- Put items from one table into another
|
||||
function extend_table(target, source)
|
||||
for i, v in pairs(source) do
|
||||
table.insert(target, v)
|
||||
end
|
||||
end
|
||||
|
||||
-- Creates a handle and filename for a temporary random file (in current directory)
|
||||
function create_temporary_file(base, mode, suffix)
|
||||
local handle, filename
|
||||
suffix = suffix or ""
|
||||
while true do
|
||||
filename = base .. tostring(math.random(1, 5000)) .. suffix
|
||||
handle = io.open(filename, "r")
|
||||
if not handle then
|
||||
handle = io.open(filename, mode)
|
||||
break
|
||||
end
|
||||
io.close(handle)
|
||||
end
|
||||
return handle, filename
|
||||
end
|
||||
|
||||
|
||||
function get_processor_count()
|
||||
local proc_count
|
||||
|
||||
if ON_WINDOWS then
|
||||
proc_count = tonumber(os.getenv("NUMBER_OF_PROCESSORS"))
|
||||
else
|
||||
local cpuinfo_handle = io.open("/proc/cpuinfo")
|
||||
if cpuinfo_handle ~= nil then
|
||||
local cpuinfo_contents = cpuinfo_handle:read("*a")
|
||||
local _, replace_count = cpuinfo_contents:gsub('processor', '')
|
||||
proc_count = replace_count
|
||||
end
|
||||
end
|
||||
|
||||
if proc_count and proc_count > 0 then
|
||||
return proc_count
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
function substitute_values(string, values)
|
||||
local substitutor = function(match)
|
||||
if match == "%" then
|
||||
return "%"
|
||||
else
|
||||
-- nil is discarded by gsub
|
||||
return values[match]
|
||||
end
|
||||
end
|
||||
|
||||
local substituted = string:gsub('%%(.)', substitutor)
|
||||
return substituted
|
||||
end
|
||||
|
||||
-- ASS HELPERS --
|
||||
function round_rect_top( ass, x0, y0, x1, y1, r )
|
||||
local c = 0.551915024494 * r -- circle approximation
|
||||
ass:move_to(x0 + r, y0)
|
||||
ass:line_to(x1 - r, y0) -- top line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x1 - r + c, y0, x1, y0 + r - c, x1, y0 + r) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1) -- right line
|
||||
ass:line_to(x0, y1) -- bottom line
|
||||
ass:line_to(x0, y0 + r) -- left line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x0, y0 + r - c, x0 + r - c, y0, x0 + r, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
|
||||
function round_rect(ass, x0, y0, x1, y1, rtl, rtr, rbr, rbl)
|
||||
local c = 0.551915024494
|
||||
ass:move_to(x0 + rtl, y0)
|
||||
ass:line_to(x1 - rtr, y0) -- top line
|
||||
if rtr > 0 then
|
||||
ass:bezier_curve(x1 - rtr + rtr*c, y0, x1, y0 + rtr - rtr*c, x1, y0 + rtr) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1 - rbr) -- right line
|
||||
if rbr > 0 then
|
||||
ass:bezier_curve(x1, y1 - rbr + rbr*c, x1 - rbr + rbr*c, y1, x1 - rbr, y1) -- bottom right corner
|
||||
end
|
||||
ass:line_to(x0 + rbl, y1) -- bottom line
|
||||
if rbl > 0 then
|
||||
ass:bezier_curve(x0 + rbl - rbl*c, y1, x0, y1 - rbl + rbl*c, x0, y1 - rbl) -- bottom left corner
|
||||
end
|
||||
ass:line_to(x0, y0 + rtl) -- left line
|
||||
if rtl > 0 then
|
||||
ass:bezier_curve(x0, y0 + rtl - rtl*c, x0 + rtl - rtl*c, y0, x0 + rtl, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
local SCRIPT_NAME = "mpv_thumbnail_script"
|
||||
|
||||
local default_cache_base = ON_WINDOWS and os.getenv("TEMP") or "/tmp/"
|
||||
|
||||
local thumbnailer_options = {
|
||||
-- The thumbnail directory
|
||||
cache_directory = join_paths(default_cache_base, "mpv_thumbs_cache"),
|
||||
|
||||
------------------------
|
||||
-- Generation options --
|
||||
------------------------
|
||||
|
||||
-- Automatically generate the thumbnails on video load, without a keypress
|
||||
autogenerate = true,
|
||||
|
||||
-- Only automatically thumbnail videos shorter than this (seconds)
|
||||
autogenerate_max_duration = 3600, -- 1 hour
|
||||
|
||||
-- SHA1-sum filenames over this length
|
||||
-- It's nice to know what files the thumbnails are (hence directory names)
|
||||
-- but long URLs may approach filesystem limits.
|
||||
hash_filename_length = 128,
|
||||
|
||||
-- Use mpv to generate thumbnail even if ffmpeg is found in PATH
|
||||
-- ffmpeg does not handle ordered chapters (MKVs which rely on other MKVs)!
|
||||
-- mpv is a bit slower, but has better support overall (eg. subtitles in the previews)
|
||||
prefer_mpv = true,
|
||||
|
||||
-- Explicitly disable subtitles on the mpv sub-calls
|
||||
mpv_no_sub = false,
|
||||
-- Add a "--no-config" to the mpv sub-call arguments
|
||||
mpv_no_config = false,
|
||||
-- Add a "--profile=<mpv_profile>" to the mpv sub-call arguments
|
||||
-- Use "" to disable
|
||||
mpv_profile = "",
|
||||
-- Output debug logs to <thumbnail_path>.log, ala <cache_directory>/<video_filename>/000000.bgra.log
|
||||
-- The logs are removed after successful encodes, unless you set mpv_keep_logs below
|
||||
mpv_logs = true,
|
||||
-- Keep all mpv logs, even the succesfull ones
|
||||
mpv_keep_logs = false,
|
||||
|
||||
-- Disable the built-in keybind ("T") to add your own
|
||||
disable_keybinds = false,
|
||||
|
||||
---------------------
|
||||
-- Display options --
|
||||
---------------------
|
||||
|
||||
-- Move the thumbnail up or down
|
||||
-- For example:
|
||||
-- topbar/bottombar: 24
|
||||
-- rest: 0
|
||||
vertical_offset = 24,
|
||||
|
||||
-- Adjust background padding
|
||||
-- Examples:
|
||||
-- topbar: 0, 10, 10, 10
|
||||
-- bottombar: 10, 0, 10, 10
|
||||
-- slimbox/box: 10, 10, 10, 10
|
||||
pad_top = 10,
|
||||
pad_bot = 0,
|
||||
pad_left = 10,
|
||||
pad_right = 10,
|
||||
|
||||
-- If true, pad values are screen-pixels. If false, video-pixels.
|
||||
pad_in_screenspace = true,
|
||||
-- Calculate pad into the offset
|
||||
offset_by_pad = true,
|
||||
|
||||
-- Background color in BBGGRR
|
||||
background_color = "000000",
|
||||
-- Alpha: 0 - fully opaque, 255 - transparent
|
||||
background_alpha = 80,
|
||||
|
||||
-- Keep thumbnail on the screen near left or right side
|
||||
constrain_to_screen = true,
|
||||
|
||||
-- Do not display the thumbnailing progress
|
||||
hide_progress = false,
|
||||
|
||||
-----------------------
|
||||
-- Thumbnail options --
|
||||
-----------------------
|
||||
|
||||
-- The maximum dimensions of the thumbnails (pixels)
|
||||
thumbnail_width = 200,
|
||||
thumbnail_height = 200,
|
||||
|
||||
-- The thumbnail count target
|
||||
-- (This will result in a thumbnail every ~10 seconds for a 25 minute video)
|
||||
thumbnail_count = 150,
|
||||
|
||||
-- The above target count will be adjusted by the minimum and
|
||||
-- maximum time difference between thumbnails.
|
||||
-- The thumbnail_count will be used to calculate a target separation,
|
||||
-- and min/max_delta will be used to constrict it.
|
||||
|
||||
-- In other words, thumbnails will be:
|
||||
-- at least min_delta seconds apart (limiting the amount)
|
||||
-- at most max_delta seconds apart (raising the amount if needed)
|
||||
min_delta = 5,
|
||||
-- 120 seconds aka 2 minutes will add more thumbnails when the video is over 5 hours!
|
||||
max_delta = 90,
|
||||
|
||||
|
||||
-- Overrides for remote urls (you generally want less thumbnails!)
|
||||
-- Thumbnailing network paths will be done with mpv
|
||||
|
||||
-- Allow thumbnailing network paths (naive check for "://")
|
||||
thumbnail_network = false,
|
||||
-- Override thumbnail count, min/max delta
|
||||
remote_thumbnail_count = 60,
|
||||
remote_min_delta = 15,
|
||||
remote_max_delta = 120,
|
||||
|
||||
-- Try to grab the raw stream and disable ytdl for the mpv subcalls
|
||||
-- Much faster than passing the url to ytdl again, but may cause problems with some sites
|
||||
remote_direct_stream = true,
|
||||
}
|
||||
|
||||
read_options(thumbnailer_options, SCRIPT_NAME)
|
||||
function skip_nil(tbl)
|
||||
local n = {}
|
||||
for k, v in pairs(tbl) do
|
||||
table.insert(n, v)
|
||||
end
|
||||
return n
|
||||
end
|
||||
|
||||
function create_thumbnail_mpv(file_path, timestamp, size, output_path, options)
|
||||
options = options or {}
|
||||
|
||||
local ytdl_disabled = not options.enable_ytdl and (mp.get_property_native("ytdl") == false
|
||||
or thumbnailer_options.remote_direct_stream)
|
||||
|
||||
local header_fields_arg = nil
|
||||
local header_fields = mp.get_property_native("http-header-fields")
|
||||
if #header_fields > 0 then
|
||||
-- We can't escape the headers, mpv won't parse "--http-header-fields='Name: value'" properly
|
||||
header_fields_arg = "--http-header-fields=" .. table.concat(header_fields, ",")
|
||||
end
|
||||
|
||||
local profile_arg = nil
|
||||
if thumbnailer_options.mpv_profile ~= "" then
|
||||
profile_arg = "--profile=" .. thumbnailer_options.mpv_profile
|
||||
end
|
||||
|
||||
local log_arg = "--log-file=" .. output_path .. ".log"
|
||||
|
||||
local mpv_command = skip_nil({
|
||||
"mpv",
|
||||
-- Hide console output
|
||||
"--msg-level=all=no",
|
||||
|
||||
-- Disable ytdl
|
||||
(ytdl_disabled and "--no-ytdl" or nil),
|
||||
-- Pass HTTP headers from current instance
|
||||
header_fields_arg,
|
||||
-- Pass User-Agent and Referer - should do no harm even with ytdl active
|
||||
"--user-agent=" .. mp.get_property_native("user-agent"),
|
||||
"--referrer=" .. mp.get_property_native("referrer"),
|
||||
-- Disable hardware decoding
|
||||
"--hwdec=no",
|
||||
|
||||
-- Insert --no-config, --profile=... and --log-file if enabled
|
||||
(thumbnailer_options.mpv_no_config and "--no-config" or nil),
|
||||
profile_arg,
|
||||
(thumbnailer_options.mpv_logs and log_arg or nil),
|
||||
|
||||
file_path,
|
||||
|
||||
"--start=" .. tostring(timestamp),
|
||||
"--frames=1",
|
||||
"--hr-seek=yes",
|
||||
"--no-audio",
|
||||
-- Optionally disable subtitles
|
||||
(thumbnailer_options.mpv_no_sub and "--no-sub" or nil),
|
||||
|
||||
("--vf=scale=%d:%d"):format(size.w, size.h),
|
||||
"--vf-add=format=bgra",
|
||||
"--of=rawvideo",
|
||||
"--ovc=rawvideo",
|
||||
"--o=" .. output_path
|
||||
})
|
||||
return utils.subprocess({args=mpv_command})
|
||||
end
|
||||
|
||||
|
||||
function create_thumbnail_ffmpeg(file_path, timestamp, size, output_path)
|
||||
local ffmpeg_command = {
|
||||
"ffmpeg",
|
||||
"-loglevel", "quiet",
|
||||
"-noaccurate_seek",
|
||||
"-ss", format_time(timestamp, ":"),
|
||||
"-i", file_path,
|
||||
|
||||
"-frames:v", "1",
|
||||
"-an",
|
||||
|
||||
"-vf", ("scale=%d:%d"):format(size.w, size.h),
|
||||
"-c:v", "rawvideo",
|
||||
"-pix_fmt", "bgra",
|
||||
"-f", "rawvideo",
|
||||
|
||||
"-y", output_path
|
||||
}
|
||||
return utils.subprocess({args=ffmpeg_command})
|
||||
end
|
||||
|
||||
|
||||
function check_output(ret, output_path, is_mpv)
|
||||
local log_path = output_path .. ".log"
|
||||
local success = true
|
||||
|
||||
if ret.killed_by_us then
|
||||
return nil
|
||||
else
|
||||
if ret.error or ret.status ~= 0 then
|
||||
msg.error("Thumbnailing command failed!")
|
||||
msg.error("mpv process error:", ret.error)
|
||||
msg.error("Process stdout:", ret.stdout)
|
||||
if is_mpv then
|
||||
msg.error("Debug log:", log_path)
|
||||
end
|
||||
|
||||
success = false
|
||||
end
|
||||
|
||||
if not file_exists(output_path) then
|
||||
msg.error("Output file missing!", output_path)
|
||||
success = false
|
||||
end
|
||||
end
|
||||
|
||||
if is_mpv and not thumbnailer_options.mpv_keep_logs then
|
||||
-- Remove successful debug logs
|
||||
if success and file_exists(log_path) then
|
||||
os.remove(log_path)
|
||||
end
|
||||
end
|
||||
|
||||
return success
|
||||
end
|
||||
|
||||
|
||||
function do_worker_job(state_json_string, frames_json_string)
|
||||
msg.debug("Handling given job")
|
||||
local thumb_state, err = utils.parse_json(state_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse state JSON")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_indexes, err = utils.parse_json(frames_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse thumbnail frame indexes")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_func = create_thumbnail_mpv
|
||||
if not thumbnailer_options.prefer_mpv then
|
||||
if ExecutableFinder:get_executable_path("ffmpeg") then
|
||||
thumbnail_func = create_thumbnail_ffmpeg
|
||||
else
|
||||
msg.warn("Could not find ffmpeg in PATH! Falling back on mpv.")
|
||||
end
|
||||
end
|
||||
|
||||
local file_duration = mp.get_property_native("duration")
|
||||
local file_path = thumb_state.worker_input_path
|
||||
|
||||
if thumb_state.is_remote then
|
||||
if (thumbnail_func == create_thumbnail_ffmpeg) then
|
||||
msg.warn("Thumbnailing remote path, falling back on mpv.")
|
||||
end
|
||||
thumbnail_func = create_thumbnail_mpv
|
||||
end
|
||||
|
||||
local generate_thumbnail_for_index = function(thumbnail_index)
|
||||
-- Given a 1-based thumbnail index, generate a thumbnail for it based on the thumbnailer state
|
||||
local thumb_idx = thumbnail_index - 1
|
||||
msg.debug("Starting work on thumbnail", thumb_idx)
|
||||
|
||||
local thumbnail_path = thumb_state.thumbnail_template:format(thumb_idx)
|
||||
-- Grab the "middle" of the thumbnail duration instead of the very start, and leave some margin in the end
|
||||
local timestamp = math.min(file_duration - 0.25, (thumb_idx + 0.5) * thumb_state.thumbnail_delta)
|
||||
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-progress", tostring(thumbnail_index))
|
||||
|
||||
-- The expected size (raw BGRA image)
|
||||
local thumbnail_raw_size = (thumb_state.thumbnail_size.w * thumb_state.thumbnail_size.h * 4)
|
||||
|
||||
local need_thumbnail_generation = false
|
||||
|
||||
-- Check if the thumbnail already exists and is the correct size
|
||||
local thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
if thumbnail_file == nil then
|
||||
need_thumbnail_generation = true
|
||||
else
|
||||
local existing_thumbnail_filesize = thumbnail_file:seek("end")
|
||||
if existing_thumbnail_filesize ~= thumbnail_raw_size then
|
||||
-- Size doesn't match, so (re)generate
|
||||
msg.warn("Thumbnail", thumb_idx, "did not match expected size, regenerating")
|
||||
need_thumbnail_generation = true
|
||||
end
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
if need_thumbnail_generation then
|
||||
local ret = thumbnail_func(file_path, timestamp, thumb_state.thumbnail_size, thumbnail_path, thumb_state.worker_extra)
|
||||
local success = check_output(ret, thumbnail_path, thumbnail_func == create_thumbnail_mpv)
|
||||
|
||||
if success == nil then
|
||||
-- Killed by us, changing files, ignore
|
||||
msg.debug("Changing files, subprocess killed")
|
||||
return true
|
||||
elseif not success then
|
||||
-- Real failure
|
||||
mp.osd_message("Thumbnailing failed, check console for details", 3.5)
|
||||
return true
|
||||
end
|
||||
else
|
||||
msg.debug("Thumbnail", thumb_idx, "already done!")
|
||||
end
|
||||
|
||||
-- Verify thumbnail size
|
||||
-- Sometimes ffmpeg will output an empty file when seeking to a "bad" section (usually the end)
|
||||
thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
|
||||
-- Bail if we can't read the file (it should really exist by now, we checked this in check_output!)
|
||||
if thumbnail_file == nil then
|
||||
msg.error("Thumbnail suddenly disappeared!")
|
||||
return true
|
||||
end
|
||||
|
||||
-- Check the size of the generated file
|
||||
local thumbnail_file_size = thumbnail_file:seek("end")
|
||||
thumbnail_file:close()
|
||||
|
||||
-- Check if the file is big enough
|
||||
local missing_bytes = math.max(0, thumbnail_raw_size - thumbnail_file_size)
|
||||
if missing_bytes > 0 then
|
||||
msg.warn(("Thumbnail missing %d bytes (expected %d, had %d), padding %s"):format(
|
||||
missing_bytes, thumbnail_raw_size, thumbnail_file_size, thumbnail_path
|
||||
))
|
||||
-- Pad the file if it's missing content (eg. ffmpeg seek to file end)
|
||||
thumbnail_file = io.open(thumbnail_path, "ab")
|
||||
thumbnail_file:write(string.rep(string.char(0), missing_bytes))
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
msg.debug("Finished work on thumbnail", thumb_idx)
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-ready", tostring(thumbnail_index), thumbnail_path)
|
||||
end
|
||||
|
||||
msg.debug(("Generating %d thumbnails @ %dx%d for %q"):format(
|
||||
#thumbnail_indexes,
|
||||
thumb_state.thumbnail_size.w,
|
||||
thumb_state.thumbnail_size.h,
|
||||
file_path))
|
||||
|
||||
for i, thumbnail_index in ipairs(thumbnail_indexes) do
|
||||
local bail = generate_thumbnail_for_index(thumbnail_index)
|
||||
if bail then return end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
-- Set up listeners and keybinds
|
||||
|
||||
-- Job listener
|
||||
mp.register_script_message("mpv_thumbnail_script-job", do_worker_job)
|
||||
|
||||
|
||||
-- Register this worker with the master script
|
||||
local register_timer = nil
|
||||
local register_timeout = mp.get_time() + 1.5
|
||||
|
||||
local register_function = function()
|
||||
if mp.get_time() > register_timeout and register_timer then
|
||||
msg.error("Thumbnail worker registering timed out")
|
||||
register_timer:stop()
|
||||
else
|
||||
msg.debug("Announcing self to master...")
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-worker", mp.get_script_name())
|
||||
end
|
||||
end
|
||||
|
||||
register_timer = mp.add_periodic_timer(0.1, register_function)
|
||||
|
||||
mp.register_script_message("mpv_thumbnail_script-slaved", function()
|
||||
msg.debug("Successfully registered with master")
|
||||
register_timer:stop()
|
||||
end)
|
736
.config/mpv/scripts/mpv_thumbnail_script_server.lua
Normal file
736
.config/mpv/scripts/mpv_thumbnail_script_server.lua
Normal file
@@ -0,0 +1,736 @@
|
||||
--[[
|
||||
Copyright (C) 2017 AMM
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
]]--
|
||||
--[[
|
||||
mpv_thumbnail_script.lua 0.4.2 - commit 682becf (branch master)
|
||||
https://github.com/TheAMM/mpv_thumbnail_script
|
||||
Built on 2024-04-06 15:30:02
|
||||
]]--
|
||||
local assdraw = require 'mp.assdraw'
|
||||
local msg = require 'mp.msg'
|
||||
local opt = require 'mp.options'
|
||||
local utils = require 'mp.utils'
|
||||
|
||||
-- Determine platform --
|
||||
ON_WINDOWS = (package.config:sub(1,1) ~= '/')
|
||||
|
||||
-- Some helper functions needed to parse the options --
|
||||
function isempty(v) return (v == false) or (v == nil) or (v == "") or (v == 0) or (type(v) == "table" and next(v) == nil) end
|
||||
|
||||
function divmod (a, b)
|
||||
return math.floor(a / b), a % b
|
||||
end
|
||||
|
||||
-- Better modulo
|
||||
function bmod( i, N )
|
||||
return (i % N + N) % N
|
||||
end
|
||||
|
||||
function join_paths(...)
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local result = "";
|
||||
for i, p in pairs({...}) do
|
||||
if p ~= "" then
|
||||
if is_absolute_path(p) then
|
||||
result = p
|
||||
else
|
||||
result = (result ~= "") and (result:gsub("[\\"..sep.."]*$", "") .. sep .. p) or p
|
||||
end
|
||||
end
|
||||
end
|
||||
return result:gsub("[\\"..sep.."]*$", "")
|
||||
end
|
||||
|
||||
-- /some/path/file.ext -> /some/path, file.ext
|
||||
function split_path( path )
|
||||
local sep = ON_WINDOWS and "\\" or "/"
|
||||
local first_index, last_index = path:find('^.*' .. sep)
|
||||
|
||||
if last_index == nil then
|
||||
return "", path
|
||||
else
|
||||
local dir = path:sub(0, last_index-1)
|
||||
local file = path:sub(last_index+1, -1)
|
||||
|
||||
return dir, file
|
||||
end
|
||||
end
|
||||
|
||||
function is_absolute_path( path )
|
||||
local tmp, is_win = path:gsub("^[A-Z]:\\", "")
|
||||
local tmp, is_unix = path:gsub("^/", "")
|
||||
return (is_win > 0) or (is_unix > 0)
|
||||
end
|
||||
|
||||
function Set(source)
|
||||
local set = {}
|
||||
for _, l in ipairs(source) do set[l] = true end
|
||||
return set
|
||||
end
|
||||
|
||||
---------------------------
|
||||
-- More helper functions --
|
||||
---------------------------
|
||||
|
||||
-- Removes all keys from a table, without destroying the reference to it
|
||||
function clear_table(target)
|
||||
for key, value in pairs(target) do
|
||||
target[key] = nil
|
||||
end
|
||||
end
|
||||
function shallow_copy(target)
|
||||
local copy = {}
|
||||
for k, v in pairs(target) do
|
||||
copy[k] = v
|
||||
end
|
||||
return copy
|
||||
end
|
||||
|
||||
-- Rounds to given decimals. eg. round_dec(3.145, 0) => 3
|
||||
function round_dec(num, idp)
|
||||
local mult = 10^(idp or 0)
|
||||
return math.floor(num * mult + 0.5) / mult
|
||||
end
|
||||
|
||||
function file_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
local ok, err, code = f:read(1)
|
||||
io.close(f)
|
||||
return code == nil
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function path_exists(name)
|
||||
local f = io.open(name, "rb")
|
||||
if f ~= nil then
|
||||
io.close(f)
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
function create_directories(path)
|
||||
local cmd
|
||||
if ON_WINDOWS then
|
||||
cmd = { args = {"cmd", "/c", "mkdir", path} }
|
||||
else
|
||||
cmd = { args = {"mkdir", "-p", path} }
|
||||
end
|
||||
utils.subprocess(cmd)
|
||||
end
|
||||
|
||||
-- Find an executable in PATH or CWD with the given name
|
||||
function find_executable(name)
|
||||
local delim = ON_WINDOWS and ";" or ":"
|
||||
|
||||
local pwd = os.getenv("PWD") or utils.getcwd()
|
||||
local path = os.getenv("PATH")
|
||||
|
||||
local env_path = pwd .. delim .. path -- Check CWD first
|
||||
|
||||
local result, filename
|
||||
for path_dir in env_path:gmatch("[^"..delim.."]+") do
|
||||
filename = join_paths(path_dir, name)
|
||||
if file_exists(filename) then
|
||||
result = filename
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
return result
|
||||
end
|
||||
|
||||
local ExecutableFinder = { path_cache = {} }
|
||||
-- Searches for an executable and caches the result if any
|
||||
function ExecutableFinder:get_executable_path( name, raw_name )
|
||||
name = ON_WINDOWS and not raw_name and (name .. ".exe") or name
|
||||
|
||||
if self.path_cache[name] == nil then
|
||||
self.path_cache[name] = find_executable(name) or false
|
||||
end
|
||||
return self.path_cache[name]
|
||||
end
|
||||
|
||||
-- Format seconds to HH.MM.SS.sss
|
||||
function format_time(seconds, sep, decimals)
|
||||
decimals = decimals == nil and 3 or decimals
|
||||
sep = sep and sep or "."
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
local second_format = string.format("%%0%d.%df", 2+(decimals > 0 and decimals+1 or 0), decimals)
|
||||
|
||||
return string.format("%02d"..sep.."%02d"..sep..second_format, h, m, s)
|
||||
end
|
||||
|
||||
-- Format seconds to 1h 2m 3.4s
|
||||
function format_time_hms(seconds, sep, decimals, force_full)
|
||||
decimals = decimals == nil and 1 or decimals
|
||||
sep = sep ~= nil and sep or " "
|
||||
|
||||
local s = seconds
|
||||
local h, s = divmod(s, 60*60)
|
||||
local m, s = divmod(s, 60)
|
||||
|
||||
if force_full or h > 0 then
|
||||
return string.format("%dh"..sep.."%dm"..sep.."%." .. tostring(decimals) .. "fs", h, m, s)
|
||||
elseif m > 0 then
|
||||
return string.format("%dm"..sep.."%." .. tostring(decimals) .. "fs", m, s)
|
||||
else
|
||||
return string.format("%." .. tostring(decimals) .. "fs", s)
|
||||
end
|
||||
end
|
||||
|
||||
-- Writes text on OSD and console
|
||||
function log_info(txt, timeout)
|
||||
timeout = timeout or 1.5
|
||||
msg.info(txt)
|
||||
mp.osd_message(txt, timeout)
|
||||
end
|
||||
|
||||
-- Join table items, ala ({"a", "b", "c"}, "=", "-", ", ") => "=a-, =b-, =c-"
|
||||
function join_table(source, before, after, sep)
|
||||
before = before or ""
|
||||
after = after or ""
|
||||
sep = sep or ", "
|
||||
local result = ""
|
||||
for i, v in pairs(source) do
|
||||
if not isempty(v) then
|
||||
local part = before .. v .. after
|
||||
if i == 1 then
|
||||
result = part
|
||||
else
|
||||
result = result .. sep .. part
|
||||
end
|
||||
end
|
||||
end
|
||||
return result
|
||||
end
|
||||
|
||||
function wrap(s, char)
|
||||
char = char or "'"
|
||||
return char .. s .. char
|
||||
end
|
||||
-- Wraps given string into 'string' and escapes any 's in it
|
||||
function escape_and_wrap(s, char, replacement)
|
||||
char = char or "'"
|
||||
replacement = replacement or "\\" .. char
|
||||
return wrap(string.gsub(s, char, replacement), char)
|
||||
end
|
||||
-- Escapes single quotes in a string and wraps the input in single quotes
|
||||
function escape_single_bash(s)
|
||||
return escape_and_wrap(s, "'", "'\\''")
|
||||
end
|
||||
|
||||
-- Returns (a .. b) if b is not empty or nil
|
||||
function joined_or_nil(a, b)
|
||||
return not isempty(b) and (a .. b) or nil
|
||||
end
|
||||
|
||||
-- Put items from one table into another
|
||||
function extend_table(target, source)
|
||||
for i, v in pairs(source) do
|
||||
table.insert(target, v)
|
||||
end
|
||||
end
|
||||
|
||||
-- Creates a handle and filename for a temporary random file (in current directory)
|
||||
function create_temporary_file(base, mode, suffix)
|
||||
local handle, filename
|
||||
suffix = suffix or ""
|
||||
while true do
|
||||
filename = base .. tostring(math.random(1, 5000)) .. suffix
|
||||
handle = io.open(filename, "r")
|
||||
if not handle then
|
||||
handle = io.open(filename, mode)
|
||||
break
|
||||
end
|
||||
io.close(handle)
|
||||
end
|
||||
return handle, filename
|
||||
end
|
||||
|
||||
|
||||
function get_processor_count()
|
||||
local proc_count
|
||||
|
||||
if ON_WINDOWS then
|
||||
proc_count = tonumber(os.getenv("NUMBER_OF_PROCESSORS"))
|
||||
else
|
||||
local cpuinfo_handle = io.open("/proc/cpuinfo")
|
||||
if cpuinfo_handle ~= nil then
|
||||
local cpuinfo_contents = cpuinfo_handle:read("*a")
|
||||
local _, replace_count = cpuinfo_contents:gsub('processor', '')
|
||||
proc_count = replace_count
|
||||
end
|
||||
end
|
||||
|
||||
if proc_count and proc_count > 0 then
|
||||
return proc_count
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
function substitute_values(string, values)
|
||||
local substitutor = function(match)
|
||||
if match == "%" then
|
||||
return "%"
|
||||
else
|
||||
-- nil is discarded by gsub
|
||||
return values[match]
|
||||
end
|
||||
end
|
||||
|
||||
local substituted = string:gsub('%%(.)', substitutor)
|
||||
return substituted
|
||||
end
|
||||
|
||||
-- ASS HELPERS --
|
||||
function round_rect_top( ass, x0, y0, x1, y1, r )
|
||||
local c = 0.551915024494 * r -- circle approximation
|
||||
ass:move_to(x0 + r, y0)
|
||||
ass:line_to(x1 - r, y0) -- top line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x1 - r + c, y0, x1, y0 + r - c, x1, y0 + r) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1) -- right line
|
||||
ass:line_to(x0, y1) -- bottom line
|
||||
ass:line_to(x0, y0 + r) -- left line
|
||||
if r > 0 then
|
||||
ass:bezier_curve(x0, y0 + r - c, x0 + r - c, y0, x0 + r, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
|
||||
function round_rect(ass, x0, y0, x1, y1, rtl, rtr, rbr, rbl)
|
||||
local c = 0.551915024494
|
||||
ass:move_to(x0 + rtl, y0)
|
||||
ass:line_to(x1 - rtr, y0) -- top line
|
||||
if rtr > 0 then
|
||||
ass:bezier_curve(x1 - rtr + rtr*c, y0, x1, y0 + rtr - rtr*c, x1, y0 + rtr) -- top right corner
|
||||
end
|
||||
ass:line_to(x1, y1 - rbr) -- right line
|
||||
if rbr > 0 then
|
||||
ass:bezier_curve(x1, y1 - rbr + rbr*c, x1 - rbr + rbr*c, y1, x1 - rbr, y1) -- bottom right corner
|
||||
end
|
||||
ass:line_to(x0 + rbl, y1) -- bottom line
|
||||
if rbl > 0 then
|
||||
ass:bezier_curve(x0 + rbl - rbl*c, y1, x0, y1 - rbl + rbl*c, x0, y1 - rbl) -- bottom left corner
|
||||
end
|
||||
ass:line_to(x0, y0 + rtl) -- left line
|
||||
if rtl > 0 then
|
||||
ass:bezier_curve(x0, y0 + rtl - rtl*c, x0 + rtl - rtl*c, y0, x0 + rtl, y0) -- top left corner
|
||||
end
|
||||
end
|
||||
local SCRIPT_NAME = "mpv_thumbnail_script"
|
||||
|
||||
local default_cache_base = ON_WINDOWS and os.getenv("TEMP") or "/tmp/"
|
||||
|
||||
local thumbnailer_options = {
|
||||
-- The thumbnail directory
|
||||
cache_directory = join_paths(default_cache_base, "mpv_thumbs_cache"),
|
||||
|
||||
------------------------
|
||||
-- Generation options --
|
||||
------------------------
|
||||
|
||||
-- Automatically generate the thumbnails on video load, without a keypress
|
||||
autogenerate = true,
|
||||
|
||||
-- Only automatically thumbnail videos shorter than this (seconds)
|
||||
autogenerate_max_duration = 3600, -- 1 hour
|
||||
|
||||
-- SHA1-sum filenames over this length
|
||||
-- It's nice to know what files the thumbnails are (hence directory names)
|
||||
-- but long URLs may approach filesystem limits.
|
||||
hash_filename_length = 128,
|
||||
|
||||
-- Use mpv to generate thumbnail even if ffmpeg is found in PATH
|
||||
-- ffmpeg does not handle ordered chapters (MKVs which rely on other MKVs)!
|
||||
-- mpv is a bit slower, but has better support overall (eg. subtitles in the previews)
|
||||
prefer_mpv = true,
|
||||
|
||||
-- Explicitly disable subtitles on the mpv sub-calls
|
||||
mpv_no_sub = false,
|
||||
-- Add a "--no-config" to the mpv sub-call arguments
|
||||
mpv_no_config = false,
|
||||
-- Add a "--profile=<mpv_profile>" to the mpv sub-call arguments
|
||||
-- Use "" to disable
|
||||
mpv_profile = "",
|
||||
-- Output debug logs to <thumbnail_path>.log, ala <cache_directory>/<video_filename>/000000.bgra.log
|
||||
-- The logs are removed after successful encodes, unless you set mpv_keep_logs below
|
||||
mpv_logs = true,
|
||||
-- Keep all mpv logs, even the succesfull ones
|
||||
mpv_keep_logs = false,
|
||||
|
||||
-- Disable the built-in keybind ("T") to add your own
|
||||
disable_keybinds = false,
|
||||
|
||||
---------------------
|
||||
-- Display options --
|
||||
---------------------
|
||||
|
||||
-- Move the thumbnail up or down
|
||||
-- For example:
|
||||
-- topbar/bottombar: 24
|
||||
-- rest: 0
|
||||
vertical_offset = 24,
|
||||
|
||||
-- Adjust background padding
|
||||
-- Examples:
|
||||
-- topbar: 0, 10, 10, 10
|
||||
-- bottombar: 10, 0, 10, 10
|
||||
-- slimbox/box: 10, 10, 10, 10
|
||||
pad_top = 10,
|
||||
pad_bot = 0,
|
||||
pad_left = 10,
|
||||
pad_right = 10,
|
||||
|
||||
-- If true, pad values are screen-pixels. If false, video-pixels.
|
||||
pad_in_screenspace = true,
|
||||
-- Calculate pad into the offset
|
||||
offset_by_pad = true,
|
||||
|
||||
-- Background color in BBGGRR
|
||||
background_color = "000000",
|
||||
-- Alpha: 0 - fully opaque, 255 - transparent
|
||||
background_alpha = 80,
|
||||
|
||||
-- Keep thumbnail on the screen near left or right side
|
||||
constrain_to_screen = true,
|
||||
|
||||
-- Do not display the thumbnailing progress
|
||||
hide_progress = false,
|
||||
|
||||
-----------------------
|
||||
-- Thumbnail options --
|
||||
-----------------------
|
||||
|
||||
-- The maximum dimensions of the thumbnails (pixels)
|
||||
thumbnail_width = 200,
|
||||
thumbnail_height = 200,
|
||||
|
||||
-- The thumbnail count target
|
||||
-- (This will result in a thumbnail every ~10 seconds for a 25 minute video)
|
||||
thumbnail_count = 150,
|
||||
|
||||
-- The above target count will be adjusted by the minimum and
|
||||
-- maximum time difference between thumbnails.
|
||||
-- The thumbnail_count will be used to calculate a target separation,
|
||||
-- and min/max_delta will be used to constrict it.
|
||||
|
||||
-- In other words, thumbnails will be:
|
||||
-- at least min_delta seconds apart (limiting the amount)
|
||||
-- at most max_delta seconds apart (raising the amount if needed)
|
||||
min_delta = 5,
|
||||
-- 120 seconds aka 2 minutes will add more thumbnails when the video is over 5 hours!
|
||||
max_delta = 90,
|
||||
|
||||
|
||||
-- Overrides for remote urls (you generally want less thumbnails!)
|
||||
-- Thumbnailing network paths will be done with mpv
|
||||
|
||||
-- Allow thumbnailing network paths (naive check for "://")
|
||||
thumbnail_network = false,
|
||||
-- Override thumbnail count, min/max delta
|
||||
remote_thumbnail_count = 60,
|
||||
remote_min_delta = 15,
|
||||
remote_max_delta = 120,
|
||||
|
||||
-- Try to grab the raw stream and disable ytdl for the mpv subcalls
|
||||
-- Much faster than passing the url to ytdl again, but may cause problems with some sites
|
||||
remote_direct_stream = true,
|
||||
}
|
||||
|
||||
read_options(thumbnailer_options, SCRIPT_NAME)
|
||||
function skip_nil(tbl)
|
||||
local n = {}
|
||||
for k, v in pairs(tbl) do
|
||||
table.insert(n, v)
|
||||
end
|
||||
return n
|
||||
end
|
||||
|
||||
function create_thumbnail_mpv(file_path, timestamp, size, output_path, options)
|
||||
options = options or {}
|
||||
|
||||
local ytdl_disabled = not options.enable_ytdl and (mp.get_property_native("ytdl") == false
|
||||
or thumbnailer_options.remote_direct_stream)
|
||||
|
||||
local header_fields_arg = nil
|
||||
local header_fields = mp.get_property_native("http-header-fields")
|
||||
if #header_fields > 0 then
|
||||
-- We can't escape the headers, mpv won't parse "--http-header-fields='Name: value'" properly
|
||||
header_fields_arg = "--http-header-fields=" .. table.concat(header_fields, ",")
|
||||
end
|
||||
|
||||
local profile_arg = nil
|
||||
if thumbnailer_options.mpv_profile ~= "" then
|
||||
profile_arg = "--profile=" .. thumbnailer_options.mpv_profile
|
||||
end
|
||||
|
||||
local log_arg = "--log-file=" .. output_path .. ".log"
|
||||
|
||||
local mpv_command = skip_nil({
|
||||
"mpv",
|
||||
-- Hide console output
|
||||
"--msg-level=all=no",
|
||||
|
||||
-- Disable ytdl
|
||||
(ytdl_disabled and "--no-ytdl" or nil),
|
||||
-- Pass HTTP headers from current instance
|
||||
header_fields_arg,
|
||||
-- Pass User-Agent and Referer - should do no harm even with ytdl active
|
||||
"--user-agent=" .. mp.get_property_native("user-agent"),
|
||||
"--referrer=" .. mp.get_property_native("referrer"),
|
||||
-- Disable hardware decoding
|
||||
"--hwdec=no",
|
||||
|
||||
-- Insert --no-config, --profile=... and --log-file if enabled
|
||||
(thumbnailer_options.mpv_no_config and "--no-config" or nil),
|
||||
profile_arg,
|
||||
(thumbnailer_options.mpv_logs and log_arg or nil),
|
||||
|
||||
file_path,
|
||||
|
||||
"--start=" .. tostring(timestamp),
|
||||
"--frames=1",
|
||||
"--hr-seek=yes",
|
||||
"--no-audio",
|
||||
-- Optionally disable subtitles
|
||||
(thumbnailer_options.mpv_no_sub and "--no-sub" or nil),
|
||||
|
||||
("--vf=scale=%d:%d"):format(size.w, size.h),
|
||||
"--vf-add=format=bgra",
|
||||
"--of=rawvideo",
|
||||
"--ovc=rawvideo",
|
||||
"--o=" .. output_path
|
||||
})
|
||||
return utils.subprocess({args=mpv_command})
|
||||
end
|
||||
|
||||
|
||||
function create_thumbnail_ffmpeg(file_path, timestamp, size, output_path)
|
||||
local ffmpeg_command = {
|
||||
"ffmpeg",
|
||||
"-loglevel", "quiet",
|
||||
"-noaccurate_seek",
|
||||
"-ss", format_time(timestamp, ":"),
|
||||
"-i", file_path,
|
||||
|
||||
"-frames:v", "1",
|
||||
"-an",
|
||||
|
||||
"-vf", ("scale=%d:%d"):format(size.w, size.h),
|
||||
"-c:v", "rawvideo",
|
||||
"-pix_fmt", "bgra",
|
||||
"-f", "rawvideo",
|
||||
|
||||
"-y", output_path
|
||||
}
|
||||
return utils.subprocess({args=ffmpeg_command})
|
||||
end
|
||||
|
||||
|
||||
function check_output(ret, output_path, is_mpv)
|
||||
local log_path = output_path .. ".log"
|
||||
local success = true
|
||||
|
||||
if ret.killed_by_us then
|
||||
return nil
|
||||
else
|
||||
if ret.error or ret.status ~= 0 then
|
||||
msg.error("Thumbnailing command failed!")
|
||||
msg.error("mpv process error:", ret.error)
|
||||
msg.error("Process stdout:", ret.stdout)
|
||||
if is_mpv then
|
||||
msg.error("Debug log:", log_path)
|
||||
end
|
||||
|
||||
success = false
|
||||
end
|
||||
|
||||
if not file_exists(output_path) then
|
||||
msg.error("Output file missing!", output_path)
|
||||
success = false
|
||||
end
|
||||
end
|
||||
|
||||
if is_mpv and not thumbnailer_options.mpv_keep_logs then
|
||||
-- Remove successful debug logs
|
||||
if success and file_exists(log_path) then
|
||||
os.remove(log_path)
|
||||
end
|
||||
end
|
||||
|
||||
return success
|
||||
end
|
||||
|
||||
|
||||
function do_worker_job(state_json_string, frames_json_string)
|
||||
msg.debug("Handling given job")
|
||||
local thumb_state, err = utils.parse_json(state_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse state JSON")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_indexes, err = utils.parse_json(frames_json_string)
|
||||
if err then
|
||||
msg.error("Failed to parse thumbnail frame indexes")
|
||||
return
|
||||
end
|
||||
|
||||
local thumbnail_func = create_thumbnail_mpv
|
||||
if not thumbnailer_options.prefer_mpv then
|
||||
if ExecutableFinder:get_executable_path("ffmpeg") then
|
||||
thumbnail_func = create_thumbnail_ffmpeg
|
||||
else
|
||||
msg.warn("Could not find ffmpeg in PATH! Falling back on mpv.")
|
||||
end
|
||||
end
|
||||
|
||||
local file_duration = mp.get_property_native("duration")
|
||||
local file_path = thumb_state.worker_input_path
|
||||
|
||||
if thumb_state.is_remote then
|
||||
if (thumbnail_func == create_thumbnail_ffmpeg) then
|
||||
msg.warn("Thumbnailing remote path, falling back on mpv.")
|
||||
end
|
||||
thumbnail_func = create_thumbnail_mpv
|
||||
end
|
||||
|
||||
local generate_thumbnail_for_index = function(thumbnail_index)
|
||||
-- Given a 1-based thumbnail index, generate a thumbnail for it based on the thumbnailer state
|
||||
local thumb_idx = thumbnail_index - 1
|
||||
msg.debug("Starting work on thumbnail", thumb_idx)
|
||||
|
||||
local thumbnail_path = thumb_state.thumbnail_template:format(thumb_idx)
|
||||
-- Grab the "middle" of the thumbnail duration instead of the very start, and leave some margin in the end
|
||||
local timestamp = math.min(file_duration - 0.25, (thumb_idx + 0.5) * thumb_state.thumbnail_delta)
|
||||
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-progress", tostring(thumbnail_index))
|
||||
|
||||
-- The expected size (raw BGRA image)
|
||||
local thumbnail_raw_size = (thumb_state.thumbnail_size.w * thumb_state.thumbnail_size.h * 4)
|
||||
|
||||
local need_thumbnail_generation = false
|
||||
|
||||
-- Check if the thumbnail already exists and is the correct size
|
||||
local thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
if thumbnail_file == nil then
|
||||
need_thumbnail_generation = true
|
||||
else
|
||||
local existing_thumbnail_filesize = thumbnail_file:seek("end")
|
||||
if existing_thumbnail_filesize ~= thumbnail_raw_size then
|
||||
-- Size doesn't match, so (re)generate
|
||||
msg.warn("Thumbnail", thumb_idx, "did not match expected size, regenerating")
|
||||
need_thumbnail_generation = true
|
||||
end
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
if need_thumbnail_generation then
|
||||
local ret = thumbnail_func(file_path, timestamp, thumb_state.thumbnail_size, thumbnail_path, thumb_state.worker_extra)
|
||||
local success = check_output(ret, thumbnail_path, thumbnail_func == create_thumbnail_mpv)
|
||||
|
||||
if success == nil then
|
||||
-- Killed by us, changing files, ignore
|
||||
msg.debug("Changing files, subprocess killed")
|
||||
return true
|
||||
elseif not success then
|
||||
-- Real failure
|
||||
mp.osd_message("Thumbnailing failed, check console for details", 3.5)
|
||||
return true
|
||||
end
|
||||
else
|
||||
msg.debug("Thumbnail", thumb_idx, "already done!")
|
||||
end
|
||||
|
||||
-- Verify thumbnail size
|
||||
-- Sometimes ffmpeg will output an empty file when seeking to a "bad" section (usually the end)
|
||||
thumbnail_file = io.open(thumbnail_path, "rb")
|
||||
|
||||
-- Bail if we can't read the file (it should really exist by now, we checked this in check_output!)
|
||||
if thumbnail_file == nil then
|
||||
msg.error("Thumbnail suddenly disappeared!")
|
||||
return true
|
||||
end
|
||||
|
||||
-- Check the size of the generated file
|
||||
local thumbnail_file_size = thumbnail_file:seek("end")
|
||||
thumbnail_file:close()
|
||||
|
||||
-- Check if the file is big enough
|
||||
local missing_bytes = math.max(0, thumbnail_raw_size - thumbnail_file_size)
|
||||
if missing_bytes > 0 then
|
||||
msg.warn(("Thumbnail missing %d bytes (expected %d, had %d), padding %s"):format(
|
||||
missing_bytes, thumbnail_raw_size, thumbnail_file_size, thumbnail_path
|
||||
))
|
||||
-- Pad the file if it's missing content (eg. ffmpeg seek to file end)
|
||||
thumbnail_file = io.open(thumbnail_path, "ab")
|
||||
thumbnail_file:write(string.rep(string.char(0), missing_bytes))
|
||||
thumbnail_file:close()
|
||||
end
|
||||
|
||||
msg.debug("Finished work on thumbnail", thumb_idx)
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-ready", tostring(thumbnail_index), thumbnail_path)
|
||||
end
|
||||
|
||||
msg.debug(("Generating %d thumbnails @ %dx%d for %q"):format(
|
||||
#thumbnail_indexes,
|
||||
thumb_state.thumbnail_size.w,
|
||||
thumb_state.thumbnail_size.h,
|
||||
file_path))
|
||||
|
||||
for i, thumbnail_index in ipairs(thumbnail_indexes) do
|
||||
local bail = generate_thumbnail_for_index(thumbnail_index)
|
||||
if bail then return end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
-- Set up listeners and keybinds
|
||||
|
||||
-- Job listener
|
||||
mp.register_script_message("mpv_thumbnail_script-job", do_worker_job)
|
||||
|
||||
|
||||
-- Register this worker with the master script
|
||||
local register_timer = nil
|
||||
local register_timeout = mp.get_time() + 1.5
|
||||
|
||||
local register_function = function()
|
||||
if mp.get_time() > register_timeout and register_timer then
|
||||
msg.error("Thumbnail worker registering timed out")
|
||||
register_timer:stop()
|
||||
else
|
||||
msg.debug("Announcing self to master...")
|
||||
mp.commandv("script-message", "mpv_thumbnail_script-worker", mp.get_script_name())
|
||||
end
|
||||
end
|
||||
|
||||
register_timer = mp.add_periodic_timer(0.1, register_function)
|
||||
|
||||
mp.register_script_message("mpv_thumbnail_script-slaved", function()
|
||||
msg.debug("Successfully registered with master")
|
||||
register_timer:stop()
|
||||
end)
|
3
.config/nvim/after/ftplugin/css.lua
Normal file
3
.config/nvim/after/ftplugin/css.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
vim.o.shiftwidth = 2
|
||||
vim.o.softtabstop = 2
|
||||
vim.o.textwidth = 100
|
8
.config/nvim/after/ftplugin/csv.lua
Normal file
8
.config/nvim/after/ftplugin/csv.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
vim.api.nvim_create_autocmd({ 'VimEnter' },
|
||||
{
|
||||
callback = function()
|
||||
require("csvview").enable()
|
||||
end
|
||||
})
|
||||
|
||||
vim.o.textwidth = 0
|
3
.config/nvim/after/ftplugin/html.lua
Normal file
3
.config/nvim/after/ftplugin/html.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
vim.o.shiftwidth = 2
|
||||
vim.o.softtabstop = 2
|
||||
vim.o.textwidth = 100
|
@@ -2,7 +2,6 @@ vim.api.nvim_create_autocmd({ 'VimEnter' },
|
||||
{
|
||||
callback = function()
|
||||
require("tidy").opts.enabled_on_save = false
|
||||
require("knap").toggle_autopreviewing()
|
||||
end
|
||||
})
|
||||
|
||||
@@ -37,3 +36,6 @@ vim.o.textwidth = 100
|
||||
|
||||
-- frabjous/knap
|
||||
vim.keymap.set('n', '<leader>p', require("knap").toggle_autopreviewing, { noremap = true })
|
||||
|
||||
-- benlubas/molten-nvim
|
||||
require("quarto").activate()
|
||||
|
@@ -25,6 +25,7 @@ vim.api.nvim_create_autocmd({ 'VimLeave' },
|
||||
|
||||
vim.o.shiftwidth = 2
|
||||
vim.o.softtabstop = 2
|
||||
vim.o.textwidth = 80
|
||||
|
||||
-- frabjous/knap
|
||||
vim.keymap.set('n', '<leader>p', require("knap").toggle_autopreviewing, { noremap = true })
|
||||
|
@@ -1,4 +1,4 @@
|
||||
vim.o.go = "a"
|
||||
-- vim.o.go = "a"
|
||||
vim.o.showmode = false
|
||||
|
||||
-- disable netrw
|
||||
@@ -26,10 +26,10 @@ vim.o.ignorecase = true
|
||||
vim.o.smartcase = true
|
||||
|
||||
-- enable nocompatible mode
|
||||
vim.o.nocompatible = true
|
||||
-- vim.o.nocompatible = true
|
||||
|
||||
-- enable syntax highlighting
|
||||
vim.o.syntax = true
|
||||
vim.o.syntax = "true"
|
||||
|
||||
-- enable true colors
|
||||
vim.o.termguicolors = true
|
||||
@@ -57,8 +57,8 @@ vim.o.breakindent = true
|
||||
vim.o.hidden = true
|
||||
|
||||
-- disable backupfiles
|
||||
vim.o.nobackup = true
|
||||
vim.o.nowritebackup = true
|
||||
-- vim.o.nobackup = true
|
||||
-- vim.o.nowritebackup = true
|
||||
|
||||
-- set completeopt to have a better completion experience
|
||||
vim.o.completeopt = "menuone,noselect"
|
||||
@@ -108,7 +108,7 @@ vim.filetype.add({
|
||||
nim = "nim",
|
||||
py = "python",
|
||||
sage = "python",
|
||||
sh = "shell",
|
||||
sh = "bash",
|
||||
tex = "tex",
|
||||
},
|
||||
})
|
||||
|
@@ -1,70 +1,77 @@
|
||||
{
|
||||
"action-hints.nvim": { "branch": "main", "commit": "ab10fef255dd4bc933c92d8f9969828f2f856e71" },
|
||||
"action-hints.nvim": { "branch": "main", "commit": "ac72c23c2e901084e0c08a743942d8d7b8c560de" },
|
||||
"barbecue": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
|
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"blink.download": { "branch": "main", "commit": "86361b98f3c8317904a08e3bd12cf3cdcbe3e925" },
|
||||
"blink.pairs": { "branch": "main", "commit": "d8bf802cca951f0a3b72ddeed21bc5a1d5353f65" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
|
||||
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||
"cmp-under-comparator": { "branch": "master", "commit": "6857f10272c3cfe930cece2afa2406e1385bfef8" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||
"comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" },
|
||||
"conform.nvim": { "branch": "master", "commit": "9d5ba06d6ee7418c674f498634617416d15b6239" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"conform.nvim": { "branch": "master", "commit": "fbcb4fa7f34bfea9be702ffff481a8e336ebf6ed" },
|
||||
"cpsm": { "branch": "master", "commit": "1a5fc1b6169bb80c29b0b986130c4f3f1a9ed82e" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "3dc498c9777fe79156f3d32dddd483b8b3dbd95f" },
|
||||
"csvview.nvim": { "branch": "main", "commit": "bbab4c2f808fd8e11ec8dfdd128251aadba566a1" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"fterm.nvim": { "branch": "master", "commit": "d1320892cc2ebab472935242d9d992a2c9570180" },
|
||||
"fzy-lua-native": { "branch": "master", "commit": "820f745b7c442176bcc243e8f38ef4b985febfaf" },
|
||||
"git-blame.nvim": { "branch": "master", "commit": "a0282d05adbee80aaf4e2ff35b81b52940b67bed" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "a4db718c78bff65198e3b63f1043f1e7bb5e05c8" },
|
||||
"goto-preview": { "branch": "main", "commit": "527fd81a827234e26ca47891abe90497215db2a6" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" },
|
||||
"knap": { "branch": "main", "commit": "d4ea571d2d4e139d288b758c5bab31788d30eea3" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "31ddbea7c10b6920c9077b66c97951ca8682d5c8" },
|
||||
"leap.nvim": { "branch": "main", "commit": "7a9407d17fab3a1c3cfe201965d680a408776152" },
|
||||
"lsp_signature.nvim": { "branch": "master", "commit": "c6aeb2f1d2538bbdfdaab1664d9d4c3c75aa9db8" },
|
||||
"lspkind-nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b5e8bb642138f787a2c1c5aedc2a78cb2cebbd67" },
|
||||
"luasnip": { "branch": "master", "commit": "825a61bad1d60d917a7962d73cf3c683f4e0407e" },
|
||||
"mapx.nvim": { "branch": "main", "commit": "c3dd43474a5fc2f266309bc04a69b74eb2524671" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "9dfcf2036c223920826140f0151d929a43f9eceb" },
|
||||
"mason-null-ls.nvim": { "branch": "main", "commit": "e270134d83ba59425edc53356c6fd337b61bb8dd" },
|
||||
"mason.nvim": { "branch": "main", "commit": "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10" },
|
||||
"modes.nvim": { "branch": "main", "commit": "4035a46aaabe43faf1b54740575af9dd5bb03809" },
|
||||
"none-ls.nvim": { "branch": "main", "commit": "fff481b65d88415933b9574dc0e1947724bcf64a" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "dbfc1c34bed415906395db8303c71039b3a3ffb4" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "ce16de5665c766f39c271705b17fff06f7bcb84f" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "0b3950aed7bc35b78200bc292156aa77d2a4d342" },
|
||||
"nvim-docs-view": { "branch": "master", "commit": "78d88bca16f32a430572758677f9246f6d7f7b94" },
|
||||
"nvim-hlslens": { "branch": "main", "commit": "c42b4526e6d83b904eb5f3d50e68d7c2fc4be4b5" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "f4619ab31fc4676001ea05ae8200846e6e7700c7" },
|
||||
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
|
||||
"nvim-scrollbar": { "branch": "main", "commit": "35f99d559041c7c0eff3a41f9093581ceea534e8" },
|
||||
"nvim-surround": { "branch": "main", "commit": "d47001f8ddf9646c24f16d2732d4d0255acd2121" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "d8d3a1590a05b2d8b5eb26e2ed1c6052b1b47a77" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "54cf9180a36299265e217858e6e531245074c3f4" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" },
|
||||
"nvim-ts-rainbow": { "branch": "master", "commit": "ef95c15a935f97c65a80e48e12fe72d49aacf9b9" },
|
||||
"nvim-ufo": { "branch": "main", "commit": "49acf0010ccc08d727582da8cbf5e4c3f3b0cc53" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "3ee60deaa539360518eaab93a6c701fe9f4d82ef" },
|
||||
"fzy-lua-native": { "branch": "master", "commit": "9d720745d5c2fb563c0d86c17d77612a3519c506" },
|
||||
"git-blame.nvim": { "branch": "master", "commit": "9874ec1ec8bc53beb33b7cd82c092b85271a578b" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "1ee5c1fd068c81f9dd06483e639c2aa4587dc197" },
|
||||
"goto-preview": { "branch": "main", "commit": "cf561d10b4b104db20375c48b86cf36af9f96e00" },
|
||||
"image.nvim": { "branch": "master", "commit": "446a8a5cc7a3eae3185ee0c697732c32a5547a0b" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||
"jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" },
|
||||
"knap": { "branch": "main", "commit": "7db44d0bb760120142cc1e8f43e44976de59c2f6" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "1ea3c4085785f460fb0e46d2fe1ee895f5f9e7c1" },
|
||||
"leap.nvim": { "branch": "main", "commit": "f5fe479e20d809df7b54ad53142c2bdb0624c62a" },
|
||||
"logger.nvim": { "branch": "main", "commit": "63dd10c9b9a159fd6cfe08435d9606384ff103c5" },
|
||||
"lsp_signature.nvim": { "branch": "master", "commit": "b58cca003d1d3311213d6db0352f58d8e57bfff0" },
|
||||
"lspkind-nvim": { "branch": "master", "commit": "3ddd1b4edefa425fda5a9f95a4f25578727c0bb3" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
|
||||
"luasnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "6bdb14f230de0904229ec367b410fb817e59b072" },
|
||||
"mason-null-ls.nvim": { "branch": "main", "commit": "de19726de7260c68d94691afb057fa73d3cc53e7" },
|
||||
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
|
||||
"modes.nvim": { "branch": "main", "commit": "0932ba4e0bdc3457ac89a8aeed4d56ca0b36977a" },
|
||||
"molten-nvim": { "branch": "main", "commit": "a286aa914d9a154bc359131aab788b5a077a5a99" },
|
||||
"none-ls.nvim": { "branch": "main", "commit": "5cf63841461b49989972d35bf886e076a1ab3649" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "6ed09146ee637006367b5e225be6208a1ea02579" },
|
||||
"nvim-docs-view": { "branch": "master", "commit": "5676cc094d426edd39134b1eefca2cab441cca8a" },
|
||||
"nvim-hlslens": { "branch": "main", "commit": "6d42444785ea0d41555d033485910c5e78916f3b" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "cc2f5f2fa28d240574808e78847978ed6ef20d2a" },
|
||||
"nvim-navic": { "branch": "master", "commit": "f887d794a0f4594882814d7780980a949200a238" },
|
||||
"nvim-scrollbar": { "branch": "main", "commit": "5b103ef0fd2e8b9b4be3878ed38d224522192c6c" },
|
||||
"nvim-surround": { "branch": "main", "commit": "a868c256c861044beb9794b4dd126480dcdfbdad" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "e397756d2a79d74314ea4cd3efc41300e91c0ff0" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||
"nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" },
|
||||
"nvim-yarp": { "branch": "master", "commit": "bb5f5e038bfe119d3b777845a76b0b919b35ebc8" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "8aad4396840be7fc42896e3011751b7609ca4119" },
|
||||
"otter.nvim": { "branch": "main", "commit": "fc0aa35b1985077d11a20ddf4006bf40f2cd7397" },
|
||||
"outline.nvim": { "branch": "main", "commit": "6b62f73a6bf317531d15a7ae1b724e85485d8148" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"popup-menu.nvim": { "branch": "master", "commit": "b618bd0c824a20417d845fa0022327228e6988a2" },
|
||||
"projections.nvim": { "branch": "pre_release", "commit": "889914169fa1f5c00fb8659653b5a8330fb223e6" },
|
||||
"promise-async": { "branch": "main", "commit": "93540c168c5ed2b030ec3e6c40ab8bbb85e36355" },
|
||||
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
|
||||
"quarto-nvim": { "branch": "main", "commit": "0e9491509b38efbd83d3f41dbfacc7fc4bd40191" },
|
||||
"renamer.nvim": { "branch": "master", "commit": "1614d466df53899f11dd5395eaac3c09a275c384" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "12504405821c05874d2d1f6b5ec919f9808e2c99" },
|
||||
"spelunker.vim": { "branch": "master", "commit": "a0bc530f62798bbe053905555a4aa9ed713485eb" },
|
||||
"symbols-outline.nvim": { "branch": "master", "commit": "564ee65dfc9024bdde73a6621820866987cbb256" },
|
||||
"tabular": { "branch": "master", "commit": "339091ac4dd1f17e225fe7d57b48aff55f99b23a" },
|
||||
"tabular": { "branch": "master", "commit": "12437cd1b53488e24936ec4b091c9324cafee311" },
|
||||
"tccs.nvim": { "branch": "master", "commit": "e50c1504286b5ee2700961a600f26c9b338bd042" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "776b509f80dd49d8205b9b0d94485568236d1192" },
|
||||
"tidy.nvim": { "branch": "triggerable-tidy", "commit": "1cbed7676273057c8af22438deaae73cd5cb96b5" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" },
|
||||
"undotree": { "branch": "master", "commit": "aa93a7e5890dbbebbc064cd22260721a6db1a196" },
|
||||
"tidy.nvim": { "branch": "main", "commit": "c8cd0e6e0108da25c3e10c3f33d8c03b3d8806f1" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "19d461ddd543e938eb22505fb03fa878800270b6" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "c098362fe603d3922095e7db595961e020bdf2d0" },
|
||||
"undotree": { "branch": "master", "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" },
|
||||
"vim-abolish": { "branch": "master", "commit": "dcbfe065297d31823561ba787f51056c147aa682" },
|
||||
"vim-hug-neovim-rpc": { "branch": "master", "commit": "93ae38792bc197c3bdffa2716ae493c67a5e7957" },
|
||||
"vim-illuminate": { "branch": "master", "commit": "305bf07b919ac526deb5193280379e2f8b599926" },
|
||||
"vim-markdown": { "branch": "master", "commit": "a657e697376909c41475a686eeef7fc7a4972d94" },
|
||||
"vim-illuminate": { "branch": "master", "commit": "0d1e93684da00ab7c057410fecfc24f434698898" },
|
||||
"vim-markdown": { "branch": "master", "commit": "8f6cb3a6ca4e3b6bcda0730145a0b700f3481b51" },
|
||||
"vim-renamer": { "branch": "master", "commit": "9c6346eb4556cf2d8ca55de6969247ab14fe2383" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" },
|
||||
"wilder.nvim": { "branch": "master", "commit": "679f348dc90d80ff9ba0e7c470c40a4d038dcecf" },
|
||||
"winshift.nvim": { "branch": "main", "commit": "37468ed6f385dfb50402368669766504c0e15583" }
|
||||
}
|
||||
}
|
||||
|
@@ -12,17 +12,105 @@ vim.api.nvim_create_autocmd({ "VimLeavePre" }, {
|
||||
Session.store(vim.loop.cwd())
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "VimEnter" }, {
|
||||
callback = function()
|
||||
if vim.fn.argc() ~= 0 then
|
||||
return
|
||||
end
|
||||
local session_info = Session.info(vim.loop.cwd())
|
||||
if session_info == nil then
|
||||
Session.restore_latest()
|
||||
else
|
||||
if session_info ~= nil then
|
||||
Session.restore(vim.loop.cwd())
|
||||
end
|
||||
end,
|
||||
desc = "Restore last session automatically",
|
||||
})
|
||||
|
||||
-- benlubas/molten-nvim
|
||||
local imb = function(e)
|
||||
vim.schedule(function()
|
||||
local kernels = vim.fn.MoltenAvailableKernels()
|
||||
local try_kernel_name = function()
|
||||
local metadata = vim.json.decode(io.open(e.file, "r"):read("a"))["metadata"]
|
||||
return metadata.kernelspec.name
|
||||
end
|
||||
local ok, kernel_name = pcall(try_kernel_name)
|
||||
if not ok or not vim.tbl_contains(kernels, kernel_name) then
|
||||
kernel_name = nil
|
||||
local venv = os.getenv("VIRTUAL_ENV") or os.getenv("CONDA_PREFIX")
|
||||
if venv ~= nil then
|
||||
kernel_name = string.match(venv, "/.+/(.+)")
|
||||
end
|
||||
end
|
||||
if kernel_name ~= nil and vim.tbl_contains(kernels, kernel_name) then
|
||||
vim.cmd(("MoltenInit %s"):format(kernel_name))
|
||||
end
|
||||
vim.cmd("MoltenImportOutput")
|
||||
end)
|
||||
end
|
||||
|
||||
vim.api.nvim_create_autocmd("BufAdd", {
|
||||
pattern = { "*.ipynb" },
|
||||
callback = imb,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("BufEnter", {
|
||||
pattern = { "*.ipynb" },
|
||||
callback = function(e)
|
||||
if vim.api.nvim_get_vvar("vim_did_enter") ~= 1 then
|
||||
imb(e)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
local default_notebook = [[
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
""
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython"
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
]]
|
||||
|
||||
local function new_notebook(filename)
|
||||
local path = filename .. ".ipynb"
|
||||
local file = io.open(path, "w")
|
||||
if file then
|
||||
file:write(default_notebook)
|
||||
file:close()
|
||||
vim.cmd("edit " .. path)
|
||||
else
|
||||
print("Error: Could not open new notebook file for writing.")
|
||||
end
|
||||
end
|
||||
|
||||
vim.api.nvim_create_user_command('NewNotebook', function(opts)
|
||||
new_notebook(opts.args)
|
||||
end, {
|
||||
nargs = 1,
|
||||
complete = 'file'
|
||||
})
|
||||
|
@@ -1,198 +1,114 @@
|
||||
-- setup keymap function
|
||||
local m = require("mapx").setup({ global = true, whichkey = true })
|
||||
local wk = require("which-key")
|
||||
local lazygit = require("FTerm"):new({ cmd = "lazygit" })
|
||||
|
||||
-- setup keymap groups
|
||||
m.nname("g", "LSP: goto")
|
||||
m.nname("gp", "LSP: preview")
|
||||
m.cname("w", "Write")
|
||||
m.cname("w!", "Write: overwrite")
|
||||
m.nname("<leader>g", "Git")
|
||||
m.nname("<leader>f", "Telescope: find ...")
|
||||
m.nname("<leader>gd", "Git: diff")
|
||||
m.nname("<leader>s", "Substitute")
|
||||
m.nname("<leader>t", "Terminal")
|
||||
m.nname("<C-W>", "Navigation")
|
||||
|
||||
-- unmap unwanted commands
|
||||
m.nnoremap("Zt", "<NOP>")
|
||||
m.nnoremap("ZT", "<NOP>")
|
||||
m.nnoremap("<Space>", "<NOP>")
|
||||
m.inoremap("<F2>", "<NOP>")
|
||||
m.inoremap("<F3>", "<NOP>")
|
||||
m.inoremap("<F4>", "<NOP>")
|
||||
m.inoremap("<F5>", "<NOP>")
|
||||
m.inoremap("<F6>", "<NOP>")
|
||||
m.inoremap("<F8>", "<NOP>")
|
||||
m.inoremap("<F9>", "<NOP>")
|
||||
m.nnoremap("<F9>", "<NOP>")
|
||||
m.inoremap("<F10>", "<NOP>")
|
||||
m.nnoremap("<F10>", "<NOP>")
|
||||
m.inoremap("<F11>", "<NOP>")
|
||||
m.nnoremap("<F11>", "<NOP>")
|
||||
m.inoremap("<F12>", "<NOP>")
|
||||
m.nnoremap("<F12>", "<NOP>")
|
||||
|
||||
-- spell
|
||||
m.nmap("<F6>s", "z=", "Spell: display suggestions")
|
||||
|
||||
-- shortcuts for quitting
|
||||
m.nnoremap("ZA", ":xa<CR>", "Exit: write and quit all buffers")
|
||||
m.nnoremap("ZQ", ":conf q<CR>", "Exit: quit current buffer")
|
||||
m.nnoremap("ZZ", ":x<CR>", "Exit: write and quit current buffer")
|
||||
|
||||
-- shortcut for split navigation
|
||||
m.nnoremap("<C-h>", "<C-w>h", "Navigation: go to left window")
|
||||
m.nnoremap("<C-j>", "<C-w>j", "Navigation: go to lower window")
|
||||
m.nnoremap("<C-k>", "<C-w>k", "Navigation: go to upper window")
|
||||
m.nnoremap("<C-l>", "<C-w>l", "Navigation: go to right window")
|
||||
|
||||
-- remap for dealing with word wrap
|
||||
m.nmap(
|
||||
"j",
|
||||
"v:count == 0 ? 'gj' : 'j'",
|
||||
{ "expr", "silent" },
|
||||
"Navigation: go down in wrapped lines"
|
||||
)
|
||||
m.nmap("k", "v:count == 0 ? 'gk' : 'k'", { "expr", "silent" }, "Navigation: go up in wrapped lines")
|
||||
|
||||
-- compiler for languages
|
||||
m.nnoremap("<leader>c", ":w! | !compiler <c-r>%<CR>", "Compile: current file")
|
||||
|
||||
-- save file as sudo on files that require root permission
|
||||
m.cnoremap(
|
||||
"w!!",
|
||||
'execute "silent! write !sudo tee % >/dev/null" <bar> edit!',
|
||||
"Write: overwrite file over with sudo"
|
||||
)
|
||||
|
||||
-- tpope/vim-abolish
|
||||
m.nnoremap("<leader>sa", ":%S//g<Left><Left>", "Substitute: free form")
|
||||
m.nnoremap("<leader>ss", ":%S/\\<<C-r><C-w>\\>//g<Left><Left>", "Substitute: word under cursor")
|
||||
|
||||
-- simrat39/symbols-outline.nvim
|
||||
m.nmap("<F3>", ":SymbolsOutline<CR>", "CTags: toggle")
|
||||
|
||||
-- nvim-tree/nvim-tree.lua
|
||||
m.nmap("<F2>", ":NvimTreeToggle toggle<CR>", "File tree: toggle")
|
||||
|
||||
-- mbbill/undotree
|
||||
m.nmap("<F1>", ":UndotreeToggle<CR>", "Undo tree: toggle")
|
||||
|
||||
-- amrbashir/nvim-docs-view
|
||||
m.nnoremap("go", ":DocsViewToggle<CR>", "LSP: toggle documentation window")
|
||||
|
||||
-- numtostr/fterm.nvim
|
||||
m.nnoremap("<leader>tt", require("FTerm").toggle, "Terminal: open")
|
||||
m.tnoremap("<leader>tt", require("FTerm").toggle, "Terminal: open")
|
||||
local lazygit = require("FTerm"):new({
|
||||
cmd = "lazygit",
|
||||
wk.add({
|
||||
-- setup keymap groups
|
||||
{mode = "n", "g", desc = "LSP: goto"},
|
||||
{mode = "n", "gp", desc = "LSP: preview"},
|
||||
{mode = "c", "w", desc = "Write"},
|
||||
{mode = "c", "w!", desc = "Write: overwrite"},
|
||||
{mode = "n", "<leader>g", desc = "Git"},
|
||||
{mode = "n", "<leader>f", desc = "Telescope: find"},
|
||||
{mode = "n", "<leader>gd", desc = "Git: diff"},
|
||||
{mode = "n", "<leader>s", desc = "Substitute"},
|
||||
{mode = "n", "<leader>t", desc = "Terminal"},
|
||||
{mode = "n", "<leader>r", desc = "Quarto"},
|
||||
{mode = "n", "<C-W>", desc = "Navigation"},
|
||||
-- unmap unwanted commands
|
||||
{mode = "n", "Zt", "<NOP>", noremap = true},
|
||||
{mode = "n", "ZT", "<NOP>", noremap = true},
|
||||
{mode = "n", "<Space>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F1>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F2>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F3>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F4>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F5>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F6>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F7>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F8>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F9>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F10>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F11>", "<NOP>", noremap = true},
|
||||
{mode = "n", "<F12>", "<NOP>", noremap = true},
|
||||
-- spell
|
||||
{mode = "n", "<F6>s", "z=", desc = "Spell: display suggestions"},
|
||||
-- shortcuts for quitting
|
||||
{mode = "n", "ZA", ":xa<CR>", desc = "Exit: write and quit all buffers", noremap = true},
|
||||
{mode = "n", "ZQ", ":conf q<CR>", desc = "Exit: quit current buffer", noremap = true},
|
||||
{mode = "n", "ZZ", ":x<CR>", desc = "Exit: write and quit current buffer", noremap = true},
|
||||
-- shortcut for split navigation
|
||||
{mode = "n", "<C-h>", "<C-w>h", desc = "Navigation: go to left window", noremap = true},
|
||||
{mode = "n", "<C-j>", "<C-w>j", desc = "Navigation: go to lower window", noremap = true},
|
||||
{mode = "n", "<C-k>", "<C-w>k", desc = "Navigation: go to upper window", noremap = true},
|
||||
{mode = "n", "<C-l>", "<C-w>l", desc = "Navigation: go to right window", noremap = true},
|
||||
-- remap for dealing with word wrap
|
||||
{mode = "n", "j", "gj", desc = "Navigation: go down in wrapped lines", silent = true},
|
||||
{mode = "n", "k", "gk", desc = "Navigation: go up in wrapped lines", silent = true},
|
||||
-- compiler for languages
|
||||
{mode = "n", "<leader>c", ":w! | !compiler <c-r>%<CR>", desc = "Compile: current file", noremap = true},
|
||||
{mode = "n", "w!!", 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!', desc = "Write: overwrite file over with sudo", noremap = true},
|
||||
-- tpope/vim-abolish
|
||||
{mode = "n", "<leader>sa", ":%S//g<Left><Left>", desc = "Substitute: free form", noremap = true},
|
||||
{mode = "n", "<leader>ss", ":%S/\\<<C-r><C-w>\\>//g<Left><Left>", desc = "Substitute: word under cursor", noremap = true},
|
||||
-- simrat39/symbols-outline.nvim
|
||||
{mode = "n", "<F3>", ":Outline<CR>", desc = "CTags: toggle"},
|
||||
-- nvim-tree/nvim-tree.lua
|
||||
{mode = "n", "<F2>", ":NvimTreeToggle toggle<CR>", desc = "File tree: toggle"},
|
||||
-- mbbill/undotree
|
||||
{mode = "n", "<F1>", ":UndotreeToggle<CR>", desc = "Undo tree: toggle"},
|
||||
-- amrbashir/nvim-docs-view
|
||||
{mode = "n", "go", ":DocsViewToggle<CR>", desc = "LSP: toggle documentation window", noremap = true},
|
||||
-- numtostr/fterm.nvim
|
||||
{mode = "n", "<leader>tt", require("FTerm").toggle, desc = "Terminal: open", noremap = true},
|
||||
{mode = "n", "<leader>gt", function() lazygit:toggle() end, desc = "Git: open lazygit", noremap = true},
|
||||
{mode = "n", "<leader>tg", function() lazygit:toggle() end, desc = "Terminal: open lazygit", noremap = true},
|
||||
{mode = "n", "<leader>tg", function() lazygit:toggle() end, desc = "Terminal: open lazygit", noremap = true},
|
||||
-- sindrets/diffview.nvim
|
||||
{mode = "n", "<leader>gdo", ":DiffviewOpen<CR>", desc = "Git: open diff"},
|
||||
{mode = "n", "<leader>gdc", ":DiffviewClose<CR>", desc = "Git: close diff"},
|
||||
-- folke/trouble.nvim
|
||||
{mode = "n", "<leader>x", ":TroubleToggle<CR>", desc = "LSP: toggle error list"},
|
||||
-- hrsh7th/nvim-cmp
|
||||
{mode = "n", "gd", function() vim.lsp.buf.definition() end, desc = "LSP: goto definition", noremap = true},
|
||||
{mode = "n", "gD", function() vim.lsp.buf.declaration() end, desc = "LSP: goto declaration", noremap = true},
|
||||
{mode = "n", "gi", function() vim.lsp.buf.implementation() end, desc = "LSP: list implementation", noremap = true},
|
||||
{mode = "n", "gr", function() vim.lsp.buf.references() end, desc = "LSP: list references", noremap = true},
|
||||
{mode = "n", "K", vim.lsp.buf.hover(), desc = "LSP: show documentation", noremap = true},
|
||||
{mode = "n", "<F8>", function() require("conform").format({ async = true, lsp_fallback = true }) end, desc = "LSP: format", noremap = true},
|
||||
-- rmagatti/goto-preview
|
||||
{mode = "n", "gpd", function() require("goto-preview").goto_preview_definition() end, desc = "LSP: preview definition", noremap = true},
|
||||
{mode = "n", "gpy", function() require("goto-preview").goto_preview_type_definition() end, desc = "LSP: preview type definition", noremap = true},
|
||||
{mode = "n", "gpi", function() require("goto-preview").goto_preview_implementation() end, desc = "LSP: list preview implementation", noremap = true},
|
||||
{mode = "n", "gpD", function() require("goto-preview").goto_preview_declaration() end, desc = "LSP: preview declaration", noremap = true},
|
||||
{mode = "n", "gpr", function() require("goto-preview").goto_preview_references() end, desc = "LSP: list preview references", noremap = true},
|
||||
{mode = "n", "gpc", function() require("goto-preview").close_all_win() end, desc = "LSP: close all preview windows", noremap = true},
|
||||
-- filipdutescu/renamer.nvim
|
||||
{mode = "n", "<F5>", function() require("renamer").rename() end, desc = "LSP: rename", noremap = true},
|
||||
-- nvim-telescope/telescope.nvim
|
||||
{mode = "n", "<F4>", ":Telescope find_files<CR>", desc = "Telescope: find files", noremap = true},
|
||||
{mode = "n", "<leader>ff", ":Telescope find_files<CR>", desc = "Telescope: find files", noremap = true},
|
||||
-- kamykn/spelunker.vim
|
||||
{mode = "n", "<F6>t", ":call spelunker#toggle()<CR>", desc = "Spelunker: toggle spell check", noremap = true},
|
||||
{mode = "n", "<F6>l", function() if vim.opt.spelllang._value == "de_de" then vim.opt.spelllang = "en_us" print("Spell language set to en_us") else vim.opt.spelllang = "de_de" print("Spell language set to de_de") end vim.opt.spell = false end, desc = "Spell: toggle spell language", noremap = true},
|
||||
-- kevinhwang91/nvim-ufo
|
||||
{mode = "n", "K", function() local winid = require("ufo").peekFoldedLinesUnderCursor() if not winid then vim.lsp.buf.hover() end end, desc = "LSP: peek folded section", noremap = true},
|
||||
-- kevinhwang91/nvim-hlslens
|
||||
{mode = "n", "n", [[<Cmd>execute('normal! ' . v:count1 . 'n')<CR><Cmd>lua require('hlslens').start()<CR>]], desc = "Search: search forward", noremap = true, silent = true},
|
||||
{mode = "n", "N", [[<Cmd>execute('normal! ' . v:count1 . 'N')<CR><Cmd>lua require('hlslens').start()<CR>]], desc = "Search: search backwards", noremap = true, silent = true},
|
||||
-- sindrets/winshift.nvim
|
||||
{mode = "n", "<C-W>m", ":WinShift<CR>", desc = "Navigation: enter window shift mode", noremap = true},
|
||||
-- ggandor/leap.nvim
|
||||
{mode = "n", "f", "<Plug>(leap-forward)", desc = "Navigation: enter leap mode for forward movement", noremap = true},
|
||||
{mode = "n", "F", "<Plug>(leap-backward)", desc = "Navigation: enter leap mode for backwards movement", noremap = true},
|
||||
{mode = "n", "gf", "<Plug>(leap-from-window)", desc = "Navigation: enter leap mode for other windows", noremap = true},
|
||||
-- gnikdroy/projections.nvim
|
||||
{mode = "n", "<leader>fp", function() vim.cmd("Telescope projections") end, desc = "Telescope: find projects", noremap = true},
|
||||
-- quarto-dev/quarto-nvim
|
||||
{mode = "n", "<leader>rc", require("quarto.runner").run_cell, desc = "Quarto: Run cell", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>ra", require("quarto.runner").run_above, desc = "Quarto: Run cell and above", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rA", require("quarto.runner").run_all, desc = "Quarto: Run all cells", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rl", require("quarto.runner").run_line, desc = "Quarto: Run line", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rr", require("quarto.runner").run_range, desc = "Quarto: Run visual range", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rL", function() require("quarto.runner").run_all(true) end, desc = "Quarto: Run all cells of all languages", noremap = true, silent = true},
|
||||
})
|
||||
m.nnoremap("<leader>gt", function()
|
||||
lazygit:toggle()
|
||||
end, "Git: open lazygit")
|
||||
m.tnoremap("<leader>gt", function()
|
||||
lazygit:toggle()
|
||||
end, "Git: open lazygit")
|
||||
m.nnoremap("<leader>tg", function()
|
||||
lazygit:toggle()
|
||||
end, "Terminal: open lazygit")
|
||||
m.tnoremap("<leader>tg", function()
|
||||
lazygit:toggle()
|
||||
end, "Terminal: open lazygit")
|
||||
|
||||
-- sindrets/diffview.nvim
|
||||
m.nmap("<leader>gdo", ":DiffviewOpen<CR>", "Git: open diff")
|
||||
m.nmap("<leader>gdc", ":DiffviewClose<CR>", "Git: close diff")
|
||||
|
||||
-- folke/trouble.nvim
|
||||
m.nmap("<leader>x", ":TroubleToggle<CR>", "LSP: toggle error list")
|
||||
|
||||
-- hrsh7th/nvim-cmp
|
||||
m.nnoremap("gd", vim.lsp.buf.definition(), "LSP: goto definition")
|
||||
m.nnoremap("gD", vim.lsp.buf.declaration(), "LSP: goto declaration")
|
||||
m.nnoremap("gi", vim.lsp.buf.implementation(), "LSP: list implementation")
|
||||
m.nnoremap("gr", function()
|
||||
vim.lsp.buf.references()
|
||||
end, "LSP: list references")
|
||||
m.nnoremap("gy", vim.lsp.buf.type_definition(), "LSP: goto type definition")
|
||||
m.nnoremap("K", vim.lsp.buf.hover(), "LSP: show documentation")
|
||||
m.nnoremap("<F8>", function()
|
||||
require("conform").format({ async = true, lsp_fallback = true })
|
||||
end, "LSP: format")
|
||||
|
||||
-- rmagatti/goto-preview
|
||||
m.nnoremap("gpd", function()
|
||||
require("goto-preview").goto_preview_definition()
|
||||
end, "LSP: preview definition")
|
||||
m.nnoremap("gpy", function()
|
||||
require("goto-preview").goto_preview_type_definition()
|
||||
end, "LSP: preview type definition")
|
||||
m.nnoremap("gpi", function()
|
||||
require("goto-preview").goto_preview_implementation()
|
||||
end, "LSP: list preview implementation")
|
||||
m.nnoremap("gpD", function()
|
||||
require("goto-preview").goto_preview_declaration()
|
||||
end, "LSP: preview declaration")
|
||||
m.nnoremap("gpr", function()
|
||||
require("goto-preview").goto_preview_references()
|
||||
end, "LSP: list preview references")
|
||||
m.nnoremap("gpc", function()
|
||||
require("goto-preview").close_all_win()
|
||||
end, "LSP: close all preview windows")
|
||||
|
||||
-- filipdutescu/renamer.nvim
|
||||
m.nnoremap("<F5>", function()
|
||||
require("renamer").rename()
|
||||
end, "LSP: rename")
|
||||
|
||||
-- nvim-telescope/telescope.nvim
|
||||
m.nnoremap("<F4>", ":Telescope find_files<CR>", "Telescope: find files")
|
||||
m.nnoremap("<leader>ff", ":Telescope find_files<CR>", "Telescope: find files")
|
||||
|
||||
-- kamykn/spelunker.vim
|
||||
m.nnoremap("<F6>t", ":call spelunker#toggle()<CR>", "Spelunker: toggle spell check")
|
||||
m.nnoremap("<F6>l", function()
|
||||
if vim.opt.spelllang._value == "de_de" then
|
||||
vim.opt.spelllang = "en_us"
|
||||
print("Spell language set to en_us")
|
||||
else
|
||||
vim.opt.spelllang = "de_de"
|
||||
print("Spell language set to de_de")
|
||||
end
|
||||
vim.opt.spell = false
|
||||
end, "Spell: toggle spell language")
|
||||
|
||||
-- kevinhwang91/nvim-ufo
|
||||
m.nnoremap("K", function()
|
||||
local winid = require("ufo").peekFoldedLinesUnderCursor()
|
||||
if not winid then
|
||||
vim.lsp.buf.hover()
|
||||
end
|
||||
end, "LSP: peek folded section")
|
||||
|
||||
-- kevinhwang91/nvim-hlslens
|
||||
m.nnoremap(
|
||||
"n",
|
||||
[[<Cmd>execute('normal! ' . v:count1 . 'n')<CR><Cmd>lua require('hlslens').start()<CR>]],
|
||||
"silent",
|
||||
"Search: search forward"
|
||||
)
|
||||
m.nnoremap(
|
||||
"N",
|
||||
[[<Cmd>execute('normal! ' . v:count1 . 'N')<CR><Cmd>lua require('hlslens').start()<CR>]],
|
||||
"silent",
|
||||
"Search: search backwards"
|
||||
)
|
||||
|
||||
-- sindrets/winshift.nvim
|
||||
m.nnoremap("<C-W>m", ":WinShift<CR>", "Navigation: enter window shift mode")
|
||||
|
||||
-- ggandor/leap.nvim
|
||||
m.nnoremap("s", "<Plug>(leap-forward)", "Navigation: enter leap mode for forward movement")
|
||||
m.nnoremap("S", "<Plug>(leap-backward)", "Navigation: enter leap mode for backwards movement")
|
||||
m.nnoremap("gs", "<Plug>(leap-from-window", "Navigation: enter leap mode for other windows")
|
||||
|
||||
-- gnikdroy/projections.nvim
|
||||
m.nnoremap("<leader>fp", function()
|
||||
vim.cmd("Telescope projections")
|
||||
end, "Telescope: find projects")
|
||||
|
34
.config/nvim/lua/plugins/blink-pairs.lua
Normal file
34
.config/nvim/lua/plugins/blink-pairs.lua
Normal file
@@ -0,0 +1,34 @@
|
||||
return {
|
||||
"saghen/blink.pairs",
|
||||
version = "*", -- (recommended) only required with prebuilt binaries
|
||||
|
||||
-- download prebuilt binaries from github releases
|
||||
dependencies = "saghen/blink.download",
|
||||
|
||||
--- @module 'blink.pairs'
|
||||
--- @type blink.pairs.Config
|
||||
opts = {
|
||||
mappings = {
|
||||
enabled = true,
|
||||
pairs = {
|
||||
["("] = ")",
|
||||
["["] = "]",
|
||||
["{"] = "}",
|
||||
["'"] = "'",
|
||||
['"'] = '"',
|
||||
["`"] = "`",
|
||||
},
|
||||
},
|
||||
highlights = {
|
||||
enabled = true,
|
||||
groups = {
|
||||
"BlinkPairsOrange",
|
||||
"BlinkPairsPurple",
|
||||
"BlinkPairsBlue",
|
||||
},
|
||||
priority = 200,
|
||||
ns = vim.api.nvim_create_namespace("blink.pairs"),
|
||||
},
|
||||
debug = false,
|
||||
},
|
||||
}
|
17
.config/nvim/lua/plugins/csvview.lua
Normal file
17
.config/nvim/lua/plugins/csvview.lua
Normal file
@@ -0,0 +1,17 @@
|
||||
return {
|
||||
{
|
||||
"hat0uma/csvview.nvim",
|
||||
opts = {
|
||||
parser = { comments = { "#", "//" } },
|
||||
keymaps = {
|
||||
textobject_field_inner = { "if", mode = { "o", "x" } },
|
||||
textobject_field_outer = { "af", mode = { "o", "x" } },
|
||||
jump_next_field_end = { "<Tab>", mode = { "n", "v" } },
|
||||
jump_prev_field_end = { "<S-Tab>", mode = { "n", "v" } },
|
||||
jump_next_row = { "<Enter>", mode = { "n", "v" } },
|
||||
jump_prev_row = { "<S-Enter>", mode = { "n", "v" } },
|
||||
},
|
||||
},
|
||||
cmd = { "CsvViewEnable", "CsvViewDisable", "CsvViewToggle" },
|
||||
}
|
||||
}
|
@@ -1,5 +1,6 @@
|
||||
return {
|
||||
"rmagatti/goto-preview",
|
||||
dependencies = 'rmagatti/logger.nvim',
|
||||
config = function()
|
||||
require("goto-preview").setup({})
|
||||
end,
|
||||
|
@@ -5,7 +5,7 @@ return {
|
||||
ft = { 'tex' },
|
||||
config = function()
|
||||
vim.g.knap_settings = {
|
||||
delay = 1000,
|
||||
delay = 100,
|
||||
-- tex
|
||||
texoutputext = "pdf",
|
||||
textopdf = "pdflatex -synctex=1 -halt-on-error -interaction=batchmode %docroot%",
|
||||
|
@@ -15,7 +15,7 @@ return {
|
||||
},
|
||||
{ "tiyn/tccs.nvim" },
|
||||
{
|
||||
"roobert/action-hints.nvim",
|
||||
"tiyn/action-hints.nvim",
|
||||
config = function()
|
||||
require("action-hints").setup({
|
||||
template = {
|
||||
|
@@ -1,9 +0,0 @@
|
||||
return {
|
||||
-- improved keybindings, previewing them
|
||||
{
|
||||
"b0o/mapx.nvim",
|
||||
dependencies = {
|
||||
"folke/which-key.nvim",
|
||||
}
|
||||
}
|
||||
}
|
@@ -45,7 +45,7 @@ return {
|
||||
"yamlfmt",
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
opts = { ui = { icons = Install_signs } }
|
||||
}
|
||||
|
61
.config/nvim/lua/plugins/molten.lua
Normal file
61
.config/nvim/lua/plugins/molten.lua
Normal file
@@ -0,0 +1,61 @@
|
||||
return {
|
||||
{
|
||||
"benlubas/molten-nvim",
|
||||
version = "^1.0.0",
|
||||
dependencies = {
|
||||
{
|
||||
"3rd/image.nvim",
|
||||
opts = {
|
||||
backend = "ueberzug",
|
||||
max_width = 100,
|
||||
max_height = 12,
|
||||
max_height_window_percentage = math.huge,
|
||||
max_width_window_percentage = math.huge,
|
||||
window_overlap_clear_enabled = true,
|
||||
window_overlap_clear_ft_ignore = { "cmp_menu", "cmp_docs", "" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"quarto-dev/quarto-nvim",
|
||||
dependencies = {
|
||||
"jmbuhr/otter.nvim",
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
},
|
||||
opts = {
|
||||
lspFeatures = {
|
||||
languages = { "python" },
|
||||
chunks = "all",
|
||||
diagnostics = {
|
||||
enabled = true,
|
||||
triggers = { "BufWritePost" },
|
||||
},
|
||||
completion = {
|
||||
enabled = true,
|
||||
},
|
||||
},
|
||||
codeRunner = {
|
||||
enabled = true,
|
||||
default_method = "molten",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"GCBallesteros/jupytext.nvim",
|
||||
opts = {
|
||||
style = "markdown",
|
||||
output_extension = "md",
|
||||
force_ft = "markdown",
|
||||
},
|
||||
},
|
||||
},
|
||||
build = ":UpdateRemotePlugins",
|
||||
init = function()
|
||||
vim.g.molten_auto_open_output = false
|
||||
vim.g.molten_wrap_output = true
|
||||
vim.g.molten_virt_text_output = true
|
||||
vim.g.molten_virt_lines_off_by_1 = true
|
||||
vim.g.molten_image_provider = "image.nvim"
|
||||
vim.g.molten_output_win_max_height = 20
|
||||
end,
|
||||
},
|
||||
}
|
@@ -1,7 +0,0 @@
|
||||
return {
|
||||
-- automatic closing of brackets
|
||||
{
|
||||
'windwp/nvim-autopairs',
|
||||
opts = {}
|
||||
}
|
||||
}
|
@@ -15,6 +15,8 @@ return {
|
||||
config = function()
|
||||
require("luasnip.loaders.from_snipmate").lazy_load()
|
||||
end,
|
||||
version = "v2.*",
|
||||
build = "make install_jsregexp",
|
||||
dependencies = { 'saadparwaiz1/cmp_luasnip' }
|
||||
},
|
||||
},
|
||||
|
@@ -1,5 +1,5 @@
|
||||
return {
|
||||
"amrbashir/nvim-docs-view",
|
||||
"tiyn/nvim-docs-view",
|
||||
lazy = true,
|
||||
cmd = "DocsViewToggle",
|
||||
opts = {
|
||||
|
@@ -1,18 +1,23 @@
|
||||
return {
|
||||
-- lang server management
|
||||
{
|
||||
'neovim/nvim-lspconfig',
|
||||
"neovim/nvim-lspconfig",
|
||||
dependencies = {
|
||||
'williamboman/mason-lspconfig.nvim',
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
{
|
||||
'hrsh7th/cmp-nvim-lsp',
|
||||
"mrcjkb/rustaceanvim",
|
||||
version = "^6",
|
||||
lazy = false,
|
||||
},
|
||||
{
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
config = function()
|
||||
Capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
Capabilities.textDocument.foldingRange = {
|
||||
dynamicRegistration = false,
|
||||
lineFoldingOnly = true
|
||||
lineFoldingOnly = true,
|
||||
}
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
config = function()
|
||||
@@ -34,16 +39,16 @@ return {
|
||||
"r_language_server",
|
||||
"sqlls",
|
||||
"texlab",
|
||||
"tsserver",
|
||||
-- "tsserver",
|
||||
"yamlls",
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
local servers = {
|
||||
lua_ls = {
|
||||
Lua = {
|
||||
lua = {
|
||||
diagnostics = {
|
||||
globals = { 'vim' }
|
||||
globals = { "vim" },
|
||||
},
|
||||
telemetry = { enable = false },
|
||||
},
|
||||
@@ -53,23 +58,27 @@ return {
|
||||
-- language = "de-DE",
|
||||
enabled = { "latex" },
|
||||
dictionary = Dictionaries,
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
local default = {
|
||||
__index = function()
|
||||
return {}
|
||||
end,
|
||||
}
|
||||
local default = { __index = function() return {} end }
|
||||
setmetatable(servers, default)
|
||||
require("mason-lspconfig").setup_handlers({
|
||||
function(server_name)
|
||||
require('lspconfig')[server_name].setup({
|
||||
on_attach = Attach_func,
|
||||
capabilities = Capabilities,
|
||||
flags = {
|
||||
debounce_text_changes = 150
|
||||
},
|
||||
settings = servers[server_name]
|
||||
})
|
||||
end
|
||||
})
|
||||
end
|
||||
}
|
||||
-- require("mason-lspconfig").setup_handlers({
|
||||
-- function(server_name)
|
||||
-- require('lspconfig')[server_name].setup({
|
||||
-- on_attach = Attach_func,
|
||||
-- capabilities = Capabilities,
|
||||
-- flags = {
|
||||
-- debounce_text_changes = 150
|
||||
-- },
|
||||
-- settings = servers[server_name]
|
||||
-- })
|
||||
-- end
|
||||
-- })
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ return {
|
||||
-- automatically close html-tags
|
||||
'windwp/nvim-ts-autotag',
|
||||
-- color brackets
|
||||
'p00f/nvim-ts-rainbow',
|
||||
-- 'p00f/nvim-ts-rainbow',
|
||||
},
|
||||
config = function()
|
||||
require("nvim-treesitter.configs").setup({
|
||||
@@ -19,17 +19,18 @@ return {
|
||||
"markdown_inline",
|
||||
"latex",
|
||||
"python",
|
||||
"rust",
|
||||
"lua",
|
||||
},
|
||||
highlight = { enable = true },
|
||||
autotag = { enable = true },
|
||||
rainbow = {
|
||||
enable = true,
|
||||
extended_mode = true,
|
||||
max_file_lines = nil,
|
||||
-- colors = {},
|
||||
-- termcolors = {}
|
||||
}
|
||||
-- highlight = { enable = true },
|
||||
autotag = { enable = false },
|
||||
-- rainbow = {
|
||||
-- enable = true,
|
||||
-- extended_mode = true,
|
||||
-- max_file_lines = nil,
|
||||
-- -- colors = {},
|
||||
-- -- termcolors = {}
|
||||
-- }
|
||||
})
|
||||
end
|
||||
}
|
||||
|
13
.config/nvim/lua/plugins/outline.lua
Normal file
13
.config/nvim/lua/plugins/outline.lua
Normal file
@@ -0,0 +1,13 @@
|
||||
return {
|
||||
{
|
||||
"hedyhli/outline.nvim",
|
||||
opts = {
|
||||
outline_window = {
|
||||
width = 25
|
||||
},
|
||||
symbols = {
|
||||
icon_source = 'lspkind',
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -4,7 +4,7 @@ return {
|
||||
'kamykn/spelunker.vim',
|
||||
dependencies = { 'kamykn/popup-menu.nvim' },
|
||||
config = function()
|
||||
vim.o.nospell = true
|
||||
-- vim.o.nospell = true
|
||||
vim.g.enable_spelunker_vim = 0
|
||||
vim.g.spelunker_disable_acronym_checking = 1
|
||||
end
|
||||
|
@@ -1,39 +0,0 @@
|
||||
return {
|
||||
-- ctags like menu
|
||||
{
|
||||
"simrat39/symbols-outline.nvim",
|
||||
opts = {
|
||||
width = 25,
|
||||
symbols = {
|
||||
File = { icon = Lsp_signs.File, hl = "@text.uri" },
|
||||
Module = { icon = Lsp_signs.Module, hl = "@namespace" },
|
||||
Class = { icon = Lsp_signs.Class, hl = "@type" },
|
||||
Method = { icon = Lsp_signs.Method, hl = "@method" },
|
||||
Property = { icon = Lsp_signs.Property, hl = "@method" },
|
||||
Field = { icon = Lsp_signs.Field, hl = "@field" },
|
||||
Constructor = { icon = Lsp_signs.Constructor, hl = "@constructor" },
|
||||
Enum = { icon = Lsp_signs.Enum, hl = "@type" },
|
||||
Interface = { icon = Lsp_signs.Interface, hl = "@type" },
|
||||
Function = { icon = Lsp_signs.Function, hl = "@function" },
|
||||
Variable = { icon = Lsp_signs.Variable, hl = "@constant" },
|
||||
Constant = { icon = Lsp_signs.Constant, hl = "@constant" },
|
||||
Key = { icon = Lsp_signs.Keyword, hl = "@type" },
|
||||
EnumMember = { icon = Lsp_signs.EnumMember, hl = "@field" },
|
||||
Struct = { icon = Lsp_signs.Struct, hl = "@type" },
|
||||
Event = { icon = Lsp_signs.Event, hl = "@type" },
|
||||
Operator = { icon = Lsp_signs.Operator, hl = "@operator" },
|
||||
TypeParameter = { icon = Lsp_signs.TypeParameter, hl = "@parameter" },
|
||||
Boolean = { icon = Lsp_signs.Boolean, hl = "@boolean" },
|
||||
Null = { icon = Lsp_signs.Null, hl = "@type" },
|
||||
Component = { icon = Lsp_signs.Component, hl = "@function" },
|
||||
Fragment = { icon = Lsp_signs.Fragment, hl = "@constant" },
|
||||
Object = { icon = Lsp_signs.Object, hl = "@type" },
|
||||
Array = { icon = Lsp_signs.Array, hl = "@constant" },
|
||||
Number = { icon = Lsp_signs.Number, hl = "@number" },
|
||||
String = { icon = Lsp_signs.String, hl = "@string" },
|
||||
Namespace = { icon = Lsp_signs.Namespace, hl = "@namespace" },
|
||||
Package = { icon = Lsp_signs.Package, hl = "@namespace" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
@@ -2,7 +2,7 @@ return {
|
||||
-- clean up white spaces and empty lines before writing
|
||||
{
|
||||
"mcauley-penney/tidy.nvim",
|
||||
branch = "triggerable-tidy",
|
||||
branch = "main",
|
||||
opts = {
|
||||
filetype_exclude = { "diff" }
|
||||
}
|
||||
|
6
.config/nvim/lua/plugins/which-key.lua
Normal file
6
.config/nvim/lua/plugins/which-key.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
-- improved keybindings, previewing them
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
}
|
||||
}
|
@@ -21,6 +21,7 @@ Menu_signs = {
|
||||
path = "",
|
||||
}
|
||||
|
||||
|
||||
Lsp_signs = {
|
||||
Array = "",
|
||||
Boolean = "⊥",
|
||||
@@ -106,22 +107,17 @@ Lualine_signs = {
|
||||
unnamed = "",
|
||||
}
|
||||
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignError",
|
||||
{ texthl = "DiagnosticSignError", text = Error_sign, numhl = "DiagnosticSignError" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignWarn",
|
||||
{ texthl = "DiagnosticSignWarn", text = Warn_sign, numhl = "DiagnosticSignWarn" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignInfo",
|
||||
{ texthl = "DiagnosticSignInfo", text = Info_sign, numhl = "DiagnosticSignInfo" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignHint",
|
||||
{ texthl = "DiagnosticSignHint", text = Hint_sign, numhl = "DiagnosticSignHint" }
|
||||
)
|
||||
vim.diagnostic.config({
|
||||
severity_sort = true,
|
||||
signs = {
|
||||
text = {
|
||||
[vim.diagnostic.severity.ERROR] = Error_sign,
|
||||
[vim.diagnostic.severity.WARN] = Warn_sign,
|
||||
[vim.diagnostic.severity.INFO] = Info_sign,
|
||||
[vim.diagnostic.severity.HINT] = Hint_sign,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- enable colorcolumn when textwidth is set
|
||||
vim.o.cursorline = true
|
||||
|
3
.config/profile/local_profile
Normal file
3
.config/profile/local_profile
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
#
|
@@ -5,8 +5,8 @@ standard_dialogs=default
|
||||
style=Fusion
|
||||
|
||||
[Fonts]
|
||||
fixed=@Variant(\0\0\0@\0\0\0\x1a\0I\0\x42\0M\0 \0P\0l\0\x65\0x\0 \0M\0o\0n\0o@&\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
|
||||
general=@Variant(\0\0\0@\0\0\0\x1a\0I\0\x42\0M\0 \0P\0l\0\x65\0x\0 \0M\0o\0n\0o@&\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
|
||||
fixed="Linux Biolinum,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
general="Linux Biolinum,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
|
||||
[Interface]
|
||||
activate_item_on_single_click=1
|
||||
@@ -24,4 +24,8 @@ underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x19\0\0\x2\xef\0\0\x3\x16\0\0\0\x1\0\0\0\x1a\0\0\x2\xee\0\0\x3\x15\0\0\0\0\0\0\0\0\x5V\0\0\0\x1\0\0\0\x1a\0\0\x2\xee\0\0\x3\x15)
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f\0\0\0\0\0\0\0\0\n\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f)
|
||||
|
||||
[Troubleshooting]
|
||||
force_raster_widgets=1
|
||||
ignored_applications=@Invalid()
|
||||
|
32
.config/qt6ct/qt6ct.conf
Normal file
32
.config/qt6ct/qt6ct.conf
Normal file
@@ -0,0 +1,32 @@
|
||||
[Appearance]
|
||||
color_scheme_path=/usr/share/qt6ct/colors/darker.conf
|
||||
custom_palette=true
|
||||
icon_theme=breeze-dark
|
||||
standard_dialogs=default
|
||||
style=Adwaita-Dark
|
||||
|
||||
[Fonts]
|
||||
fixed="Linux Biolinum,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
general="Linux Biolinum,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
|
||||
[Interface]
|
||||
activate_item_on_single_click=1
|
||||
buttonbox_layout=0
|
||||
cursor_flash_time=1000
|
||||
dialog_buttons_have_icons=1
|
||||
double_click_interval=400
|
||||
gui_effects=@Invalid()
|
||||
keyboard_scheme=2
|
||||
menus_have_icons=true
|
||||
show_shortcuts_in_context_menus=true
|
||||
stylesheets=@Invalid()
|
||||
toolbutton_style=4
|
||||
underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf\0\0\0\0\0\0\0\0\x6\0\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf)
|
||||
|
||||
[Troubleshooting]
|
||||
force_raster_widgets=1
|
||||
ignored_applications=@Invalid()
|
1
.config/swaylock/config
Normal file
1
.config/swaylock/config
Normal file
@@ -0,0 +1 @@
|
||||
image=~/.local/share/lock
|
86
.config/swhkd/swhkdrc
Normal file
86
.config/swhkd/swhkdrc
Normal file
@@ -0,0 +1,86 @@
|
||||
super + b
|
||||
$BROWSER
|
||||
|
||||
super + m
|
||||
thunderbird
|
||||
|
||||
super + u
|
||||
record_stop
|
||||
|
||||
super + i
|
||||
record_start
|
||||
|
||||
super + o
|
||||
record_replay_start
|
||||
|
||||
super + p
|
||||
record_replay_save
|
||||
|
||||
super + a
|
||||
lmc previous
|
||||
|
||||
super + s
|
||||
lmc playpause
|
||||
|
||||
super + d
|
||||
lmc next
|
||||
|
||||
super + c
|
||||
lmc loop
|
||||
|
||||
super + x
|
||||
lmc shuffle
|
||||
|
||||
super + bracketright
|
||||
lmc mute_toggle
|
||||
|
||||
super + backslash
|
||||
lmc deaf_toggle
|
||||
|
||||
super + apostrophe
|
||||
lmc tap_toggle
|
||||
|
||||
super + bracketleft
|
||||
dnd toggle
|
||||
|
||||
super + shift + b
|
||||
killall -SIGUSR1 waybar
|
||||
|
||||
super + shift + r
|
||||
pkill -HUP swhkd ; notify-send -u low 'SWHKD' 'Reloaded hotkeys'
|
||||
|
||||
super + shift + space
|
||||
dunstctl close-all
|
||||
|
||||
super + F7
|
||||
mount_menu
|
||||
|
||||
super + F8
|
||||
umount_menu
|
||||
|
||||
super + F9
|
||||
systemctl restart NetworkManager ; notify-send -u low 'Network' 'Restartet NM'
|
||||
|
||||
super + F10
|
||||
prompt "Lock computer?" "swaylock -i ~/.local/share/lock"
|
||||
|
||||
super + shift + F10
|
||||
prompt "Hibernate computer?" "systemctl hibernate"
|
||||
|
||||
super + F11
|
||||
prompt "Shutdown computer?" "shutdown -h now"
|
||||
|
||||
super + F12
|
||||
prompt "Reboot computer?" "reboot now"
|
||||
|
||||
Print
|
||||
screenshot
|
||||
|
||||
XF86AudioMute
|
||||
lmc deaf_toggle
|
||||
|
||||
XF86AudioLowerVolume
|
||||
lmc down
|
||||
|
||||
XF86AudioRaiseVolume
|
||||
lmc up
|
@@ -34,9 +34,11 @@ super + backslash
|
||||
lmc deaf_toggle
|
||||
super + bracketleft
|
||||
dnd toggle
|
||||
super + apostrophe
|
||||
lmc tap_toggle
|
||||
|
||||
super + shift + l
|
||||
keymap_toggle
|
||||
keymap toggle
|
||||
|
||||
super + shift + r
|
||||
pkill -usr1 -x sxhkd ; notify-send -u low 'SXHKD' 'Reloaded config'
|
||||
@@ -45,15 +47,18 @@ super + Return
|
||||
$TERMINAL
|
||||
|
||||
Print
|
||||
screenshot_menu
|
||||
screenshot
|
||||
|
||||
super + space
|
||||
touchpad toggle
|
||||
|
||||
super + shift + space
|
||||
dunstctl close-all
|
||||
|
||||
super + F5
|
||||
monitor_toggle
|
||||
monitor toggle
|
||||
super + F6
|
||||
touchpad_toggle
|
||||
touchpad toggle
|
||||
super + F7
|
||||
mount_menu
|
||||
super + F8
|
||||
@@ -62,6 +67,8 @@ super + F9
|
||||
sudo -A systemctl restart NetworkManager ; notify-send -u low 'Network' 'Restartet NM'
|
||||
super + F10
|
||||
prompt "Lock computer?" "slock"
|
||||
super + shift + F10
|
||||
prompt "Hibernate computer?" "systemctl hibernate"
|
||||
super + F11
|
||||
prompt "Shutdown computer?" "sudo -A shutdown -h now"
|
||||
super + F12
|
||||
@@ -76,6 +83,6 @@ XF86AudioLowerVolume
|
||||
XF86AudioRaiseVolume
|
||||
lmc up
|
||||
XF86MonBrightnessDown
|
||||
light -U 15
|
||||
brightnessctl set 15%-
|
||||
XF86MonBrightnessUp
|
||||
light -A 15
|
||||
brightnessctl set 15%+
|
||||
|
@@ -2,7 +2,8 @@
|
||||
while read file
|
||||
do
|
||||
case "$1" in
|
||||
"w") background_set "$file" & ;;
|
||||
"w") wallpaper desktop "$file" & ;;
|
||||
"l") wallpaper lock "$file" & ;;
|
||||
"c")
|
||||
[ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/bmdirs | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")"
|
||||
[ -z "$destdir" ] && exit
|
||||
|
@@ -177,6 +177,16 @@ fileviewer *.pdf
|
||||
\ %pc
|
||||
\ vifmimg clear
|
||||
|
||||
" cbr
|
||||
filextype *.cbr
|
||||
\ {View in zathura}
|
||||
\ zathura ./%f,
|
||||
|
||||
" cbz
|
||||
filextype *.cbz
|
||||
\ {View in zathura}
|
||||
\ zathura ./%f,
|
||||
|
||||
" CSV
|
||||
filetype *.csv,*.xlsx,*.sc sc-im %f
|
||||
|
||||
@@ -238,8 +248,8 @@ fileviewer <video/*>
|
||||
|
||||
" Web
|
||||
filextype *.html,*.htm
|
||||
\ {Open with firefox}
|
||||
\ firefox %f &,
|
||||
\ {Open with default browser}
|
||||
\ $BROWSER %f &,
|
||||
filetype *.html,*.htm links, lynx
|
||||
|
||||
" Font
|
||||
|
85
.config/waybar/config.jsonc
Normal file
85
.config/waybar/config.jsonc
Normal file
@@ -0,0 +1,85 @@
|
||||
|
||||
{
|
||||
"layer": "bottom", // Waybar at top layer
|
||||
"position": "top", // Waybar position (top|bottom|left|right)
|
||||
"height": 5, // Waybar height (to be removed for auto height)
|
||||
// "width": 1280, // Waybar width
|
||||
// Choose the order of the modules
|
||||
"modules-left": ["dwl/tags", "dwl/window"],
|
||||
"modules-right": ["cpu", "memory", "pulseaudio#output", "pulseaudio#input", "network", "battery", "clock", "tray"],
|
||||
// Modules configuration
|
||||
// "sway/workspaces": {
|
||||
// "disable-scroll": true,
|
||||
// "all-outputs": true,
|
||||
// "format": "{name}: {icon}",
|
||||
// "format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
// "focused": "",
|
||||
// "default": ""
|
||||
// }
|
||||
// },
|
||||
"dwl/tags": {
|
||||
"tag-labels": [ "", "", "", "", "", "", "", "", "", "" ],
|
||||
"num-tags": 10
|
||||
},
|
||||
"dwl/window": {
|
||||
"format": "{layout} {title}"
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 20,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"format": " {:%d %b %H:%M}"
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
"good": 75,
|
||||
"warning": 25,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"default": ["<span color=\"#f00\"></span>", "<span color=\"#ff0\"></span>", "", "", ""],
|
||||
"charging": ["<span color=\"#f00\"></span>", "<span color=\"#ff0\"></span>", "", "", ""]
|
||||
}
|
||||
// "format-charging": "{capacity}%",
|
||||
// "format-plugged": "{capacity}%",
|
||||
// "format-alt": "{time} ",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{icon}",
|
||||
"format-ethernet": "",
|
||||
"format-disconnected": "<span color=\"#f00\"></span>",
|
||||
"format-icons": [ "" ]
|
||||
},
|
||||
"pulseaudio#output": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format-source": "",
|
||||
"format-source-muted": "<span color=\"#f00\"></span>",
|
||||
"format": "{format_source}"
|
||||
},
|
||||
"pulseaudio#input": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{icon}",
|
||||
"format-muted": "<span color=\"#f00\"></span>",
|
||||
"format-bluetooth": "{format_source}",
|
||||
"format-icons": [ "<span color=\"#f00\"></span>", "", "", ""]
|
||||
},
|
||||
//disk-usage, gpu
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
}
|
||||
}
|
238
.config/waybar/style.css
Normal file
238
.config/waybar/style.css
Normal file
@@ -0,0 +1,238 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
/* `ttf-font-awesome` is required to be installed for icons */
|
||||
font-family: Mono, Helvetica, Arial, sans-serif;
|
||||
|
||||
/* adjust font-size value to your liking: */
|
||||
font-size: 15px;
|
||||
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: rgba(0, 0, 0, 1);
|
||||
/* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */
|
||||
color: #ffffff;
|
||||
/* transition-property: background-color; */
|
||||
/* transition-duration: .5s; */
|
||||
/* border-radius: 0; */
|
||||
}
|
||||
|
||||
/* window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
} */
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
*/
|
||||
|
||||
/* window#waybar.termite {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #000000;
|
||||
border: none;
|
||||
} */
|
||||
|
||||
#tags button {
|
||||
/* padding: 0 0.4em; */
|
||||
/* background-color: transparent; */
|
||||
color: #ffffff;
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: inset 0 -3px transparent;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
#tags button:hover {
|
||||
background: rgba(0, 0, 0, 0.9);
|
||||
/* box-shadow: inset 0 -3px #ffffff; */
|
||||
}
|
||||
|
||||
#tags button.occupied {
|
||||
/* background-color: #282828; */
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
}
|
||||
|
||||
#tags button.focused {
|
||||
background-color: #555a63;
|
||||
/* box-shadow: inset 0 -3px #ffffff; */
|
||||
}
|
||||
|
||||
#tags button.urgent {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #64727D;
|
||||
/* border-bottom: 3px solid #ffffff; */
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 6px 3px;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#window,
|
||||
#tags {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #tags {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #tags {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#clock {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: #ffffff;
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #f53c3c;
|
||||
color: #ffffff;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#memory {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #000000;
|
||||
color:white;
|
||||
}
|
||||
|
||||
#network {
|
||||
background-color: #000000;
|
||||
color:white;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background-color: #f0932b;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
background-color: #51a37a;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #bbccdd;
|
||||
color: #333333;
|
||||
padding: 0 5px;
|
||||
margin: 6px 3px;
|
||||
min-width: 16px;
|
||||
}
|
11
.config/wayland/swayidle.sh
Executable file
11
.config/wayland/swayidle.sh
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
exec swayidle -w \
|
||||
timeout 600 "brightnessctl -s set 0%" resume "brightnessctl -r"\
|
||||
timeout 1200 "notify-send -u critical 'Power' 'Laptop will suspend in 10 minutes!'"\
|
||||
timeout 1200 "notify-send -u critical 'Power' 'Screen will turn off soon'"\
|
||||
timeout 1260 "wlr-randr --output eDP-1 --off" resume "wlr-randr --output eDP-1 --on"\
|
||||
timeout 1500 "notify-send -u critical 'Power' 'System will suspend in 5 minutes!'"\
|
||||
timeout 1740 "notify-send -u critical 'Power' 'System will suspend in 1 minute!'"\
|
||||
timeout 1790 "notify-send -u critical 'Power' 'System will suspend in 10 seconds!'"\
|
||||
timeout 1795 "notify-send -u critical 'Power' 'System will suspend in 5 seconds!'"\
|
||||
timeout 1800 "systemctl suspend-then-hibernate"
|
31
.config/wayland/wayland.conf
Executable file
31
.config/wayland/wayland.conf
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/bin/sh
|
||||
exec systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
||||
nmcli radio wifi on &
|
||||
|
||||
~/.config/wayland/swayidle.sh &
|
||||
|
||||
$STATUSBAR & # use environment variable
|
||||
xss-lock -- swaylock & # enable locking the screen upon sleep
|
||||
swaybg -i ~/.local/share/bg &
|
||||
dunst &
|
||||
dunstctl rule dnd_low disable &
|
||||
dunstctl rule dnd_normal disable &
|
||||
swhks && swhkd &
|
||||
|
||||
pavucontrol &
|
||||
easyeffects --gapplication-service &
|
||||
nextcloud &
|
||||
keepassxc &
|
||||
zen-browser &
|
||||
discord &
|
||||
signal-desktop &
|
||||
Telegram &
|
||||
threema-beta &
|
||||
thunderbird &
|
||||
# mattermost-desktop &
|
||||
|
||||
# monitor toggle &
|
||||
# touchpad off &
|
||||
# xset r rate 300 50 & # Speed xrate up
|
||||
# redshift & # redshift for saving your eyes
|
137
.config/wgetrc
Normal file
137
.config/wgetrc
Normal file
@@ -0,0 +1,137 @@
|
||||
###
|
||||
### Sample Wget initialization file .wgetrc
|
||||
###
|
||||
|
||||
## You can use this file to change the default behaviour of wget or to
|
||||
## avoid having to type many many command-line options. This file does
|
||||
## not contain a comprehensive list of commands -- look at the manual
|
||||
## to find out what you can put into this file. You can find this here:
|
||||
## $ info wget.info 'Startup File'
|
||||
## Or online here:
|
||||
## https://www.gnu.org/software/wget/manual/wget.html#Startup-File
|
||||
##
|
||||
## Wget initialization file can reside in /usr/local/etc/wgetrc
|
||||
## (global, for all users) or $HOME/.wgetrc (for a single user).
|
||||
##
|
||||
## To use the settings in this file, you will have to uncomment them,
|
||||
## as well as change them, in most cases, as the values on the
|
||||
## commented-out lines are the default values (e.g. "off").
|
||||
##
|
||||
## Command are case-, underscore- and minus-insensitive.
|
||||
## For example ftp_proxy, ftp-proxy and ftpproxy are the same.
|
||||
|
||||
|
||||
##
|
||||
## Global settings (useful for setting up in /usr/local/etc/wgetrc).
|
||||
## Think well before you change them, since they may reduce wget's
|
||||
## functionality, and make it behave contrary to the documentation:
|
||||
##
|
||||
|
||||
# You can set retrieve quota for beginners by specifying a value
|
||||
# optionally followed by 'K' (kilobytes) or 'M' (megabytes). The
|
||||
# default quota is unlimited.
|
||||
#quota = inf
|
||||
|
||||
# You can lower (or raise) the default number of retries when
|
||||
# downloading a file (default is 20).
|
||||
#tries = 20
|
||||
|
||||
# Lowering the maximum depth of the recursive retrieval is handy to
|
||||
# prevent newbies from going too "deep" when they unwittingly start
|
||||
# the recursive retrieval. The default is 5.
|
||||
#reclevel = 5
|
||||
|
||||
# By default Wget uses "passive FTP" transfer where the client
|
||||
# initiates the data connection to the server rather than the other
|
||||
# way around. That is required on systems behind NAT where the client
|
||||
# computer cannot be easily reached from the Internet. However, some
|
||||
# firewalls software explicitly supports active FTP and in fact has
|
||||
# problems supporting passive transfer. If you are in such
|
||||
# environment, use "passive_ftp = off" to revert to active FTP.
|
||||
#passive_ftp = off
|
||||
|
||||
# The "wait" command below makes Wget wait between every connection.
|
||||
# If, instead, you want Wget to wait only between retries of failed
|
||||
# downloads, set waitretry to maximum number of seconds to wait (Wget
|
||||
# will use "linear backoff", waiting 1 second after the first failure
|
||||
# on a file, 2 seconds after the second failure, etc. up to this max).
|
||||
#waitretry = 10
|
||||
|
||||
|
||||
##
|
||||
## Local settings (for a user to set in his $HOME/.wgetrc). It is
|
||||
## *highly* undesirable to put these settings in the global file, since
|
||||
## they are potentially dangerous to "normal" users.
|
||||
##
|
||||
## Even when setting up your own ~/.wgetrc, you should know what you
|
||||
## are doing before doing so.
|
||||
##
|
||||
|
||||
# Set this to on to use timestamping by default:
|
||||
#timestamping = off
|
||||
|
||||
# It is a good idea to make Wget send your email address in a `From:'
|
||||
# header with your request (so that server administrators can contact
|
||||
# you in case of errors). Wget does *not* send `From:' by default.
|
||||
#header = From: Your Name <username@site.domain>
|
||||
|
||||
# You can set up other headers, like Accept-Language. Accept-Language
|
||||
# is *not* sent by default.
|
||||
#header = Accept-Language: en
|
||||
|
||||
# You can set the default proxies for Wget to use for http, https, and ftp.
|
||||
# They will override the value in the environment.
|
||||
#https_proxy = http://proxy.yoyodyne.com:18023/
|
||||
#http_proxy = http://proxy.yoyodyne.com:18023/
|
||||
#ftp_proxy = http://proxy.yoyodyne.com:18023/
|
||||
|
||||
# If you do not want to use proxy at all, set this to off.
|
||||
#use_proxy = on
|
||||
|
||||
# You can customize the retrieval outlook. Valid options are default,
|
||||
# binary, mega and micro.
|
||||
#dot_style = default
|
||||
|
||||
# Setting this to off makes Wget not download /robots.txt. Be sure to
|
||||
# know *exactly* what /robots.txt is and how it is used before changing
|
||||
# the default!
|
||||
#robots = on
|
||||
|
||||
# It can be useful to make Wget wait between connections. Set this to
|
||||
# the number of seconds you want Wget to wait.
|
||||
#wait = 0
|
||||
|
||||
# You can force creating directory structure, even if a single is being
|
||||
# retrieved, by setting this to on.
|
||||
#dirstruct = off
|
||||
|
||||
# You can turn on recursive retrieving by default (don't do this if
|
||||
# you are not sure you know what it means) by setting this to on.
|
||||
#recursive = off
|
||||
|
||||
# To always back up file X as X.orig before converting its links (due
|
||||
# to -k / --convert-links / convert_links = on having been specified),
|
||||
# set this variable to on:
|
||||
#backup_converted = off
|
||||
|
||||
# To have Wget follow FTP links from HTML files by default, set this
|
||||
# to on:
|
||||
#follow_ftp = off
|
||||
|
||||
# To try ipv6 addresses first:
|
||||
#prefer-family = IPv6
|
||||
|
||||
# Set default IRI support state
|
||||
#iri = off
|
||||
|
||||
# Force the default system encoding
|
||||
#localencoding = UTF-8
|
||||
|
||||
# Force the default remote server encoding
|
||||
#remoteencoding = UTF-8
|
||||
|
||||
# Turn on to prevent following non-HTTPS links when in recursive mode
|
||||
#httpsonly = off
|
||||
|
||||
# Tune HTTPS security (auto, SSLv2, SSLv3, TLSv1, PFS)
|
||||
#secureprotocol = auto
|
5
.config/xdg-desktop-portal/portals.conf
Normal file
5
.config/xdg-desktop-portal/portals.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
[preferred]
|
||||
default=gtk
|
||||
org.freedesktop.impl.portal.Screenshot=wlr
|
||||
org.freedesktop.impl.portal.ScreenCast=wlr
|
||||
org.freedesktop.impl.portal.Secret=gnome-keyring
|
3
.config/xorg/xlocal
Normal file
3
.config/xorg/xlocal
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
# autostart
|
@@ -1,12 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
xset r rate 300 50 & # Speed xrate up
|
||||
unclutter & # Remove mouse when idle
|
||||
dunst & # dunst for notifications
|
||||
redshift & # redshift for saving your eyes
|
||||
$STATUSBAR & # for refreshing the statusbar
|
||||
xcompmgr & # compositor for transparency
|
||||
sxhkd & # for shortcuts
|
||||
(sleep 10 ; pkill -RTMIN+4 $STATUSBAR) & # reload volume section of statusbar
|
||||
dunstctl rule dnd_low disable & # disable dnd for low urgencies
|
||||
dunstctl rule dnd_normal disable & # disable dnd for normal urgencies
|
||||
xset r rate 300 50 & # Speed xrate up
|
||||
unclutter & # Remove mouse when idle
|
||||
dunst & # dunst for notifications
|
||||
redshift & # redshift for saving your eyes
|
||||
$STATUSBAR & # for refreshing the statusbar
|
||||
xcompmgr & # compositor for transparency
|
||||
sxhkd & # for shortcuts
|
||||
(sleep 10 ; pkill -RTMIN+4 $STATUSBAR) & # reload volume section of statusbar
|
||||
dunstctl rule dnd_low disable & # disable dnd for low urgencies
|
||||
dunstctl rule dnd_normal disable & # disable dnd for normal urgencies
|
||||
xss-lock -- slock & # enable locking the screen upon sleep
|
||||
easyeffects --gapplication-service & # start audio server
|
||||
|
@@ -1,5 +1,6 @@
|
||||
set statusbar-h-padding 0
|
||||
set statusbar-v-padding 0
|
||||
set guioptions none
|
||||
set page-padding 1
|
||||
map u scroll full-up
|
||||
map d scroll full-down
|
||||
|
@@ -185,7 +185,7 @@ fi
|
||||
eval $(thefuck --alias)
|
||||
|
||||
# python
|
||||
#eval "$(pyenv init -)"
|
||||
eval "$(pyenv init -)"
|
||||
|
||||
##########################
|
||||
# COMMANDS BEFORE PROMPT #
|
||||
|
@@ -37,10 +37,13 @@ case "$file" in
|
||||
*\.js) node "$file" ;;
|
||||
*\.c) if [ -f Makefile ]; then make run; else cc "$file" -o "$base" && "$base"; fi ;;
|
||||
*\.nim) nim c -r -d:noColors "$file" ;;
|
||||
*\.py) python "$file" ;;
|
||||
*\.py) python3 "$file" ;;
|
||||
*\.go) go run "$file" ;;
|
||||
*\.lua) lua "$file" ;;
|
||||
*\.sent) setsid sent "$file" 2>/dev/null & ;;
|
||||
*\.r|*\.R) Rscript "$file" ;;
|
||||
*\.rs) (cd "$dir" && cargo locate-project >/dev/null 2>&1) \
|
||||
&& (cd "$(dirname "$(cd "$dir" && cargo locate-project --message-format plain)")" && cargo run) \
|
||||
|| (rustc "$file" && "./$(basename "${file%.rs}")") ;;
|
||||
*) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;;
|
||||
esac
|
||||
|
@@ -5,12 +5,12 @@
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
case "$1" in
|
||||
*.tex)
|
||||
file=$(readlink -f "$1")
|
||||
dir=$(dirname "$file")
|
||||
base="${file%.*}"
|
||||
*.tex)
|
||||
file=$(readlink -f "$1")
|
||||
dir=$(dirname "$file")
|
||||
base="${file%.*}"
|
||||
base=${base#"$dir/"}
|
||||
if [ -f "$dir/indent.log" ]; then rm "$dir/indent.log"; fi
|
||||
find "$dir" -maxdepth 1 -type f -regextype gnu-awk -regex "^$base\\.(4tc|xref|tmp|pyc|pyo|fls|vrb|fdb_latexmk|bak|swp|log|synctex\\(busy\\)|lof|lot|maf|idx|mtc|mtc0|nav|out|snm|toc|loa|bcf|run\\.xml|synctex\\.gz|blg|bbl|glg|glo|gls|glsdefs|ilg|ist|acn|acr|alg|toc)" -delete ;
|
||||
find "$dir" -maxdepth 1 -type f -regextype gnu-awk -regex ".*\\.aux" -delete ;;
|
||||
*) printf "Give .tex file as argument.\\n" ;;
|
||||
find "$dir" -maxdepth 1 -type f -regextype gnu-awk -regex ".*$base\\.(4tc|xref|tmp|pyc|pyo|fls|vrb|fdb_latexmk|bak|swp|log|synctex\\(busy\\)|lof|lot|maf|idx|mtc|mtc0|nav|out|snm|toc|loa|bcf|run\\.xml|synctex\\.gz|blg|bbl|glg|glo|gls|glsdefs|ilg|ist|acn|acr|alg|toc|aux)$" -delete;;
|
||||
*) printf "Give .tex file as argument.\\n" ;;
|
||||
esac
|
||||
|
@@ -1,14 +1,23 @@
|
||||
#!/bin/sh
|
||||
|
||||
window=$(xdotool getwindowfocus)
|
||||
audio_1=${CAPTURE_INPUT_AUDIO:-easyeffects_sink.monitor}
|
||||
audio_2=${CAPTURE_OUTPUT_AUDIO:-easyeffects_source}
|
||||
output=${CAPTURE_DIR:-$HOME/downloads}
|
||||
device=${CAPTURE_DEVICE:-cpu}
|
||||
|
||||
fps=60
|
||||
audio_1="easyeffects_sink.monitor"
|
||||
audio_2="easyeffects_source"
|
||||
format="mp4"
|
||||
v_codec="h264"
|
||||
v_codec="hevc"
|
||||
# v_codec="h264"
|
||||
a_codec="opus"
|
||||
lenght=20
|
||||
output="$HOME/downloads"
|
||||
|
||||
gpu-screen-recorder -w $window -f $fps -a $audio_1 -a $audio_2 -c $format -k $v_codec -ac $a_codec -r $lenght -o $output &
|
||||
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
window="screen"
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
window=$(xdotool getwindowfocus)
|
||||
fi
|
||||
|
||||
gpu-screen-recorder -encoder $device -w $window -f $fps -a $audio_1 -a $audio_2 -c $format -k $v_codec -ac $a_codec -r $lenght -o $output &
|
||||
notify-send -u low 'Screen record' 'Replay started'
|
||||
|
@@ -1,13 +1,22 @@
|
||||
#!/bin/sh
|
||||
|
||||
window=$(xdotool getwindowfocus)
|
||||
fps=30
|
||||
audio_1="$(pactl get-default-sink).monitor"
|
||||
audio_2="$(pactl get-default-source)"
|
||||
format="mp4"
|
||||
v_codec="h264"
|
||||
a_codec="opus"
|
||||
output="$HOME/downloads/recording-$(date '+%Y-%m-%d_%H-%M-%S').$format"
|
||||
audio_1=${CAPTURE_INPUT_AUDIO:-easyeffects_sink.monitor}
|
||||
audio_2=${CAPTURE_OUTPUT_AUDIO:-easyeffects_source}
|
||||
output=${CAPTURE_DIR:-$HOME/downloads}
|
||||
device=${CAPTURE_DEVICE:-cpu}
|
||||
|
||||
gpu-screen-recorder -w $window -c $format -k $v_codec -ac $a_codec -f $fps -a $audio_1 -a $audio_2 -o $output &
|
||||
fps=60
|
||||
format="mp4"
|
||||
v_codec="hevc"
|
||||
# v_codec="h264"
|
||||
a_codec="aac"
|
||||
output="$output/recording-$(date '+%Y-%m-%d_%H-%M-%S').$format"
|
||||
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
window="screen"
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
window=$(xdotool getwindowfocus)
|
||||
fi
|
||||
|
||||
gpu-screen-recorder -encoder $device -w $window -c $format -k $v_codec -ac $a_codec -f $fps -o $output -a $audio_1 -a $audio_2 &
|
||||
notify-send -u low 'Screen record' 'Recording started'
|
||||
|
@@ -12,8 +12,8 @@ total=$(echo $acpi | sed 's/.*:\ //')
|
||||
status="$(echo $total | cut -d',' -f1)"
|
||||
capacity="$(echo $total | cut -d',' -f2 | sed 's/%//')"
|
||||
|
||||
if [ "$status" = "Discharging" ] && [ $capacity -le 15 ] ; then
|
||||
notify-send -u critical "Battery" "Below 15%"
|
||||
if [ "$status" = "Discharging" ] && [ $capacity -le 20 ] ; then
|
||||
notify-send -u critical "Battery" "Low capacity: $capacity%"
|
||||
fi
|
||||
|
||||
if [ $capacity -gt 40 ]
|
||||
|
@@ -3,7 +3,8 @@
|
||||
# Status bar module for disk space
|
||||
# $1 should be drive mountpoint
|
||||
|
||||
disk="/home"
|
||||
disk=${STATUSBAR_DISK:-/home}
|
||||
|
||||
[ ! -z "$1" ] && disk="$1"
|
||||
|
||||
icon="$disk"
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
wifipercent=" 0"
|
||||
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="^c#ff0000^ " && wifistatus="down"
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="^c#ff0000^ ^d^ " && wifistatus="down"
|
||||
|
||||
[ ! -n "${wifiicon+var}" ] && wifistatus="up" && wifipercent=$(grep "^\s*w" /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
|
||||
|
||||
@@ -21,5 +21,6 @@ then
|
||||
fi
|
||||
fi
|
||||
|
||||
[ -f /sys/class/net/e*/operstate ] && lanicon=$(cat /sys/class/net/e*/operstate | sed "s/down/^b#282828^^c#ff0000^ /;s/up/^b#282828^^c#dfdfdf^ /") || lanicon="^b#282828^^c#ff0000^ "
|
||||
|
||||
echo "$(cat /sys/class/net/e*/operstate | sed "s/down/^b#282828^^c#ff0000^ /;s/up/^b#282828^^c#dfdfdf^ /")" "$wifiicon"
|
||||
echo "$lanicon" "$wifiicon"
|
||||
|
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
icon="^b#282828^^c#dfdfdf^ ^d^ "
|
||||
total=$(free -h | awk '/^Mem:/ {print $3/$2}')
|
||||
total=$(free --mebi | awk '/^Mem:/ {print $3/$2}')
|
||||
percent=$(printf %3s $(printf %-4s $total | tr ' ' '0' | cut -c1-4 | sed -e 's/\.//g' | sed -e 's/^0//g') | tr ' ' ' ')
|
||||
|
||||
if [ $percent -gt 75 ]
|
||||
|
@@ -4,6 +4,12 @@
|
||||
# Based on a script by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
# Heavily extended and updated to a pipewire system
|
||||
|
||||
device=${LOOPBACK_DEVICE:-Easy Effects Source}
|
||||
|
||||
name=$(wpctl status | sed -n '/Sources/,$p' | sed -n '/Filter/q;p' | grep "$device" | sed -e "s/*/\ /g")
|
||||
id=$( echo $name | cut -d '.' -f 1 | cut -c 5-)
|
||||
node=$(wpctl inspect $id | grep node.name | cut -d '=' -f 2)
|
||||
|
||||
[ -z "$2" ] && num="5" || num="$2"
|
||||
|
||||
case "$1" in
|
||||
@@ -30,6 +36,7 @@ case "$1" in
|
||||
paplay ~/.local/bin/etc/sxhkd/audio/sound_resumed.wav
|
||||
fi ;;
|
||||
mute_toggle)
|
||||
echo $(amixer get Capture)
|
||||
if amixer get Capture | tail -2 | grep -q '\[on\]'; then
|
||||
lmc mute
|
||||
lmc undeaf
|
||||
@@ -54,6 +61,19 @@ case "$1" in
|
||||
loop) playerctl loop none
|
||||
sleep 1
|
||||
pkill -RTMIN+9 $STATUSBAR ;;
|
||||
tap) wpctl set-volume $id 1.0
|
||||
touch ~/.local/state/loopback.lock
|
||||
pw-loopback -C $node &
|
||||
notify-send -u low 'sxhkd' "Started loopback of $device" ;;
|
||||
untap) killall pw-loopback
|
||||
rm ~/.local/state/loopback.lock
|
||||
notify-send -u low 'sxhkd' "Stopped all loopbacks" ;;
|
||||
tap_toggle)
|
||||
if [ -f ~/.local/state/loopback.lock ]; then
|
||||
lmc untap
|
||||
else
|
||||
lmc tap
|
||||
fi ;;
|
||||
*) cat << EOF
|
||||
lmc: cli music interface for pulse for those with divine intellect too
|
||||
grand to remember the pamixer commands.
|
||||
@@ -63,13 +83,18 @@ Allowed options:
|
||||
down NUM Decrease volume (5% default)
|
||||
mute Mute microphone
|
||||
unmute Unmute microphone
|
||||
mute_toggle Toggle between mute and unmute
|
||||
deaf Deaf sound
|
||||
undeaf Undeaf sound
|
||||
deaf_toggle Toggle between deaf and undeaf
|
||||
mute_toggle Toggle between mute and unmute
|
||||
previous Play previous song in player
|
||||
deaf_toggle Toggle between deaf and undeaf
|
||||
playpause Toggle play or pause in player
|
||||
previous Play previous song in player
|
||||
next Play next song in player
|
||||
shuffle Toggle the shuffle mode
|
||||
loop Toggle the loop mode
|
||||
tap Start loopback for source device
|
||||
untap Stop all active source loopbacks
|
||||
tap_toggle Start or stop loopback depending if it is already running
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
|
25
.local/bin/etc/sxhkd/keymap
Executable file
25
.local/bin/etc/sxhkd/keymap
Executable file
@@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
layout=$(setxkbmap -query | grep "layout" | awk '{print $NF}') #| grep -q 'ru$' && $(setxkbmap de ; notify-send -u low 'SXHKD' 'Set keymap to german') || $(setxkbmap de ru ; notify-send -u low 'SXHKD' 'Set keymap to russian')
|
||||
variant=$(setxkbmap -query | grep "variant" | awk '{print $NF}')
|
||||
echo $variant
|
||||
|
||||
case "$1" in
|
||||
toggle) if [ "$layout" = "de" -a "$variant" = "nodeadkeys" ]
|
||||
then
|
||||
setxkbmap de && notify-send -u low 'SXHKD' 'Set keymap to german'
|
||||
elif [ "$layout" = "de" -a "$variant" = "" ]
|
||||
then
|
||||
setxkbmap de ru && notify-send -u low 'SXHKD' 'Set keymap to russian (german)'
|
||||
elif [ "$layout" = "de" -a "$variant" = "ru" ]
|
||||
then
|
||||
setxkbmap de nodeadkeys && notify-send -u low 'SXHKD' 'Set keymap to german (nodeadkeys)'
|
||||
fi ;;
|
||||
*) cat << EOF
|
||||
keymap: cli script to change the keymap quickly.
|
||||
|
||||
Allowed options:
|
||||
toggle Loop through the different keymaps
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
esac
|
@@ -1,14 +0,0 @@
|
||||
#!/bin/sh
|
||||
layout=$(setxkbmap -query | grep "layout" | awk '{print $NF}') #| grep -q 'ru$' && $(setxkbmap de ; notify-send -u low 'SXHKD' 'Set keymap to german') || $(setxkbmap de ru ; notify-send -u low 'SXHKD' 'Set keymap to russian')
|
||||
variant=$(setxkbmap -query | grep "variant" | awk '{print $NF}')
|
||||
echo $variant
|
||||
if [ "$layout" = "de" -a "$variant" = "nodeadkeys" ]
|
||||
then
|
||||
setxkbmap de && notify-send -u low 'SXHKD' 'Set keymap to german'
|
||||
elif [ "$layout" = "de" -a "$variant" = "" ]
|
||||
then
|
||||
setxkbmap de ru && notify-send -u low 'SXHKD' 'Set keymap to russian (german)'
|
||||
elif [ "$layout" = "de" -a "$variant" = "ru" ]
|
||||
then
|
||||
setxkbmap de nodeadkeys && notify-send -u low 'SXHKD' 'Set keymap to german (nodeadkeys)'
|
||||
fi
|
23
.local/bin/etc/sxhkd/monitor
Executable file
23
.local/bin/etc/sxhkd/monitor
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/bin/sh
|
||||
|
||||
# toggle external monitor
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
intern=${INTERNAL_MONITOR:-LVDS1}
|
||||
extern=${EXTERNAL_MONITOR:-HDMI2}
|
||||
|
||||
case "$1" in
|
||||
toggle) (xrandr | grep "$extern disconnected")
|
||||
(xrandr --listactivemonitors | grep $extern) || ((xrandr --output $extern --right-of $intern --auto && wallpaper desktop) & exit)
|
||||
(xrandr --listactivemonitors | grep $extern) && xrandr --output $extern --off
|
||||
wallpaper desktop
|
||||
;;
|
||||
*) cat << EOF
|
||||
monitor: cli script to enable and disable monitors.
|
||||
|
||||
Allowed options:
|
||||
toggle Toggle the set monitor on and off
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
esac
|
@@ -1,11 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# toggle external monitor
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
intern=LVDS1
|
||||
extern=HDMI2
|
||||
(xrandr | grep "$extern disconnected")
|
||||
(xrandr --listactivemonitors | grep $extern) || ((xrandr --output $extern --right-of $intern --auto && setbg) & exit)
|
||||
(xrandr --listactivemonitors | grep $extern) && xrandr --output $extern --off
|
||||
background_set
|
29
.local/bin/etc/sxhkd/screenshot
Executable file
29
.local/bin/etc/sxhkd/screenshot
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Requires maim. It lets you choose the kind of screenshot to take,
|
||||
# including copying the image or even highlighting an area to copy.
|
||||
|
||||
output=${SCREENSHOT_DIR:-$HOME/downloads}
|
||||
|
||||
output="$output/screenshot-$(date '+%Y-%m-%d_%H-%M-%S').png"
|
||||
xclip_img="xclip -sel clip -t image/png"
|
||||
xclip_txt="xclip -sel clip -t text/plain"
|
||||
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
case "$(printf "a selected area\\na selected area (copy)\\nfull screen\\nfull screen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
"a selected area") grim -g "$(slurp)" $output ;;
|
||||
"a selected area (copy)") grim -g "$(slurp)" - | wl-copy ;;
|
||||
"full screen") grim $output ;;
|
||||
"full screen (copy)") grim - | wl-copy ;;
|
||||
esac
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
case "$(printf "a selected area\\na selected area (copy)\\ncurrent window\\ncurrent window (copy)\\nfull screen\\nfull screen (copy)\\ncolor picker (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
"a selected area") maim -s --hidecursor $output ;;
|
||||
"a selected area (copy)") maim -s --hidecursor | ${xclip_img} ;;
|
||||
"current window") maim -i "$(xdotool getactivewindow)" $output ;;
|
||||
"current window (copy)") maim -i "$(xdotool getactivewindow)" | ${xclip_img} ;;
|
||||
"full screen") maim $output ;;
|
||||
"full screen (copy)") maim | ${xclip_img} ;;
|
||||
"color picker (copy)") xcolor |tr -d '\n' | ${xclip_txt} ;;
|
||||
esac
|
||||
fi
|
@@ -1,18 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Requires maim. It lets you choose the kind of screenshot to take,
|
||||
# including copying the image or even highlighting an area to copy.
|
||||
|
||||
output="$HOME/downloads/screenshot-$(date '+%Y-%m-%d_%H-%M-%S').png"
|
||||
xclip_img="xclip -sel clip -t image/png"
|
||||
xclip_txt="xclip -sel clip -t text/plain"
|
||||
|
||||
case "$(printf "a selected area\\na selected area (copy)\\ncurrent window\\ncurrent window (copy)\\nfull screen\\nfull screen (copy)\\ncolor picker (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
"a selected area") maim -s $output ;;
|
||||
"a selected area (copy)") maim -s | ${xclip_img} ;;
|
||||
"current window") maim -i "$(xdotool getactivewindow)" $output ;;
|
||||
"current window (copy)") maim -i "$(xdotool getactivewindow)" | ${xclip_img} ;;
|
||||
"full screen") maim $output ;;
|
||||
"full screen (copy)") maim | ${xclip_img} ;;
|
||||
"color picker (copy)") xcolor |tr -d '\n' | ${xclip_txt} ;;
|
||||
esac
|
21
.local/bin/etc/sxhkd/touchpad
Executable file
21
.local/bin/etc/sxhkd/touchpad
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Toggle touchpad. Requires xf86-input-synaptics.
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
case "$1" in
|
||||
on) synclient TouchpadOff=0 && notify-send "TouchPad activated." ;;
|
||||
off) synclient TouchpadOff=1 && notify-send "TouchPad deactivated." ;;
|
||||
toggle) (synclient | grep "TouchpadOff.*1") && touchpad on && exit
|
||||
touchpad off ;;
|
||||
*) cat << EOF
|
||||
touchpad: cli script to enable and disable the touchpad.
|
||||
|
||||
Allowed options:
|
||||
on Turn touchpad on
|
||||
off Turn touchpad off
|
||||
toggle Toggle the touchpad on or off
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
esac
|
@@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Toggle touchpad. Requires xf86-input-synaptics.
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
(synclient | grep "TouchpadOff.*1" && synclient TouchpadOff=0)>/dev/null && notify-send "TouchPad reactivated." && exit
|
||||
synclient TouchpadOff=1 && notify-send "TouchPad deactivated."
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user