Commit 61bc5580ee6c
Changed files (23)
dots
config
jamesdsp
presets
niri
systems
common
services
okinawa
dots/config/jamesdsp/liveprog/msCentreBoostFixed.eel
@@ -0,0 +1,29 @@
+desc: MS centre boost
+
+midBoostDB:0.00<-15,15>Mid boost (dB)
+sideBoostDB:2.00<-15,15>Side boost (dB)
+
+
+@init
+midBoostDB = -0.48;
+sideBoostDB = 3.00;
+
+function db2mag(db)
+(
+ pow(10, db / 20);
+);
+function mag2db(mag)
+(
+ 20 * log10(mag);
+);
+
+midBoost=db2mag(midBoostDB);
+sideBoost=db2mag(sideBoostDB);
+
+@sample
+mid= (spl0 + spl1) * 0.5;
+side= (spl0 - spl1) * 0.5;
+mid = mid * midBoost;
+side = side * sideBoost;
+spl0 = mid - side;
+spl1 = mid + side;
dots/config/jamesdsp/liveprog/stereoWidenFixed.eel
@@ -0,0 +1,15 @@
+desc: Stereo Widener
+//width:3<0,6,0.1>Stereo Width
+//reimplemented from: https://www.musicdsp.org/en/latest/Effects/256-stereo-width-control-obtained-via-transfromation-matrix.html
+
+@init
+width = 2.10;
+
+@sample
+coef_S = width * 0.5;
+
+m = (spl0 + spl1) * 0.5;
+s = (spl1 - spl0) * coef_S;
+
+spl0 = m - s;
+spl1 = m + s;
dots/config/jamesdsp/liveprog/stftCentreBoostFixed.eel
@@ -0,0 +1,68 @@
+desc: CentreCut
+
+gaindb:3<-15,15>Boost gain (dB)
+
+@init
+gaindb = -0.72;
+
+function db2mag(db)
+(
+ pow(10, db / 20);
+);
+function mag2db(mag)
+(
+ 20 * log10(mag);
+);
+fftsize = 4096;
+bufpos = idx = 0;
+stftIndexLeft = 2;
+stftIndexRight = 50;
+memreq = stftCheckMemoryRequirement(stftIndexLeft, fftsize, 4, 2);
+memreq = stftCheckMemoryRequirement(stftIndexRight, fftsize, 4, 2);
+stftStructLeft = 120;
+stftStructRight = stftStructLeft + memreq;
+requiredSamples = stftInit(stftIndexLeft, stftStructLeft);
+requiredSamples = stftInit(stftIndexRight, stftStructRight);
+inBufLeft = stftStructRight + memreq + 10; // Pointer to memory
+outBufLeft = inBufLeft + fftsize + 10; // Pointer to memory plus safe zone
+inBufRight = outBufLeft + fftsize + 10; // ...
+outBufRight = inBufRight + fftsize + 10; // ...
+gain=db2mag(gaindb) - 1; // Boost 3 dB
+
+@sample
+inBufLeft[bufpos] = spl0;
+spl0 = outBufLeft[bufpos];
+inBufRight[bufpos] = spl1;
+spl1 = outBufRight[bufpos];
+bufpos += 1;
+bufpos >= requiredSamples ?
+(
+ error1 = stftForward(inBufLeft, stftIndexLeft, stftStructLeft, 1);
+ error2 = stftForward(inBufRight, stftIndexRight, stftStructRight, 1);
+ idx=0;
+
+ loop(error1 / 2,
+ sumR = inBufLeft[idx] + inBufRight[idx];
+ sumI = inBufLeft[idx + 1] + inBufRight[idx + 1];
+ diffR = inBufLeft[idx] - inBufRight[idx];
+ diffI = inBufLeft[idx + 1] - inBufRight[idx + 1];
+ sumSq = sumR*sumR + sumI*sumI;
+ diffSq = diffR*diffR + diffI*diffI;
+ alpha = 0.0;
+ sumSq > $EPS ? (alpha = 0.5 - sqrt(diffSq / sumSq) * 0.5;);
+ cR = sumR * alpha;
+ cI = sumI * alpha;
+ inBufLeft[idx] = inBufLeft[idx] + cR * gain;
+ inBufLeft[idx + 1] = inBufLeft[idx + 1] + cI * gain;
+ inBufRight[idx] = inBufRight[idx] + cR * gain;
+ inBufRight[idx + 1] = inBufRight[idx + 1] + cI * gain;
+ idx+=2);
+ error = stftBackward(inBufLeft, stftIndexLeft, stftStructLeft, 1);
+ error = stftBackward(inBufRight, stftIndexRight, stftStructRight, 1);
+ idx = 0;
+ loop(requiredSamples,
+ outBufLeft[idx] = inBufLeft[idx];
+ outBufRight[idx] = inBufRight[idx];
+ idx+=1);
+ bufpos = 0;
+);
dots/config/jamesdsp/presets/Clear (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=3
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoost.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.25000
+reverb_decay=2.08000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-7.00000
+reverb_finalwet=-65.40000
+reverb_lfo_spin=0.70000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=600
+reverb_lpf_damp=9000
+reverb_lpf_input=18000
+reverb_lpf_output=17000
+reverb_osf=1
+reverb_reflection_amount=0.30000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=0.70000
+reverb_wet=-8.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;593.3;888.9;1433.3;2677.1;4161.1;6349.8;10053;18777;-12.6;-5.5;-2.9;-7.1;-6;-8.5;-10.1;-12.4;-12.7;-13.2;-12.5;-8.6;-10.1;-7.7;-10.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Concert (high CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=5
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround1.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=true
+ddc_file="/home/vincent/.config/jamesdsp/vdc/FrontRearContrast.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/stereoWidenFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=4.25000
+reverb_delay=244.60001
+reverb_enable=true
+reverb_finaldry=-6.00000
+reverb_finalwet=-40.00000
+reverb_lfo_spin=2.30000
+reverb_lfo_wander=0.24000
+reverb_lpf_bass=500
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=14090
+reverb_osf=4
+reverb_reflection_amount=0.42000
+reverb_reflection_factor=2.00000
+reverb_reflection_width=0.63000
+reverb_wet=-39.00000
+reverb_width=0.57000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;593.3;888.9;1433.3;2677.1;4316.9;6349.8;10053;18777;-11.6;-4.5;-2.9;-8.1;-5;-7.5;-10.1;-12.4;-14.7;-14.2;-14.5;-12.9;-12.1;-12.2;-16.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=250
dots/config/jamesdsp/presets/Flat (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=5
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround1.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/FrontRearContrast.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/stereoWidenFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=1.20000
+reverb_delay=7.50000
+reverb_enable=false
+reverb_finaldry=-6.00000
+reverb_finalwet=-70.00000
+reverb_lfo_spin=2.30000
+reverb_lfo_wander=0.18000
+reverb_lpf_bass=470
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=15000
+reverb_osf=4
+reverb_reflection_amount=0.70000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=0.40000
+reverb_wet=-70.00000
+reverb_width=0.75000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;467.2;593.3;888.9;1433.3;2677.1;4316.9;6349.8;10053;18777;-11.6;-4.5;-2.9;-8.1;-5;-7.5;-10.6;-13.4;-17.1;-13.2;-11.5;-11.9;-12.1;-14.2;-18.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Full (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=5
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround1.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.30000
+reverb_decay=0.50000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-4.00000
+reverb_finalwet=-70.00000
+reverb_lfo_spin=1.60000
+reverb_lfo_wander=0.20000
+reverb_lpf_bass=1000
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.70000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=-0.40000
+reverb_wet=-37.40000
+reverb_width=0.80000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;593.3;888.9;1433.3;2677.1;4316.9;6349.8;10053;18777;-11.6;-4.5;-2.9;-8.1;-5;-7.5;-9.1;-11.4;-11.7;-12.2;-11.5;-8.4;-9.1;-8.3;-15.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Full Natural Forward (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=5
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround1.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/stereoWidenFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=0.50000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-6.00000
+reverb_finalwet=-61.60000
+reverb_lfo_spin=1.60000
+reverb_lfo_wander=0.20000
+reverb_lpf_bass=1000
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.70000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=-0.40000
+reverb_wet=-40.00000
+reverb_width=0.80000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;593.3;888.9;1433.3;2677.1;4316.9;6349.8;10053;18777;-11.6;-4.5;-2.9;-8.1;-5;-7.5;-9.1;-11.4;-11.7;-12.2;-11.5;-8.4;-9.1;-8.9;-13.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Full Natural Stage (high CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=5
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround1.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=true
+ddc_file="/home/vincent/.config/jamesdsp/vdc/FrontRearContrast.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/stereoWidenFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=5.25000
+reverb_delay=244.60001
+reverb_enable=false
+reverb_finaldry=-6.00000
+reverb_finalwet=-48.00000
+reverb_lfo_spin=2.30000
+reverb_lfo_wander=0.24000
+reverb_lpf_bass=500
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=14090
+reverb_osf=4
+reverb_reflection_amount=0.50000
+reverb_reflection_factor=2.00000
+reverb_reflection_width=0.63000
+reverb_wet=-33.10000
+reverb_width=0.57000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;593.3;888.9;1433.3;2677.1;4316.9;6234.2;10053;18777;-10.6;-3.5;-1.8;-7.1;-4;-6.6;-9.1;-10.3;-12.7;-13.2;-13.5;-12.8;-10.1;-11.2;-16.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Headphones Basic Crossfeed (lowest CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=true
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/stftCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.25000
+reverb_decay=2.08000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-4.00000
+reverb_finalwet=-65.40000
+reverb_lfo_spin=0.70000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=600
+reverb_lpf_damp=9000
+reverb_lpf_input=18000
+reverb_lpf_output=17000
+reverb_osf=1
+reverb_reflection_amount=0.30000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=0.70000
+reverb_wet=-8.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=false
+tone_eq="25;40;63;100;160;250;400;630;1000;1600;2500;4000;6300;10000;16000;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Headphones Simulated Treated Room (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=700
+crossfeed_bs2b_feed=60
+crossfeed_enable=true
+crossfeed_mode=0
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=0.10000
+reverb_delay=0.00000
+reverb_enable=true
+reverb_finaldry=-6.00000
+reverb_finalwet=-34.00000
+reverb_lfo_spin=0.00000
+reverb_lfo_wander=0.10000
+reverb_lpf_bass=400
+reverb_lpf_damp=790
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.43000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=0.48000
+reverb_wet=-70.00000
+reverb_width=0.00000
+stereowide_enable=false
+stereowide_level=34
+tone_enable=false
+tone_eq="25;40;64.2;100;160;250;400;630;1000;1600;2500;4000;6300;10000;16000;0;0;-2.8;0;0;-1;0;0;0;0;0;0;0;0;0"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Headphones Simulated Untreated Room (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=700
+crossfeed_bs2b_feed=60
+crossfeed_enable=true
+crossfeed_mode=0
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=0.10000
+reverb_delay=0.00000
+reverb_enable=true
+reverb_finaldry=-6.00000
+reverb_finalwet=-33.00000
+reverb_lfo_spin=0.00000
+reverb_lfo_wander=0.10000
+reverb_lpf_bass=50
+reverb_lpf_damp=200
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.72000
+reverb_reflection_factor=0.71000
+reverb_reflection_width=0.70000
+reverb_wet=-63.30000
+reverb_width=0.00000
+stereowide_enable=false
+stereowide_level=34
+tone_enable=false
+tone_eq="25;40;64.2;100;160;250;400;630;1000;1600;2500;4000;6300;10000;16000;0;0;-2.8;0;0;-1;0;0;0;0;0;0;0;0;0"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Movie (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.25000
+reverb_decay=2.08000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-7.00000
+reverb_finalwet=-65.40000
+reverb_lfo_spin=0.70000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=600
+reverb_lpf_damp=9000
+reverb_lpf_input=18000
+reverb_lpf_output=17000
+reverb_osf=1
+reverb_reflection_amount=0.30000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=0.70000
+reverb_wet=-8.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;245.6;341.9;484.7;582.5;726.2;905.3;2677.1;4161.1;6349.8;10053;16510;-6.6;0.5;2.1;0.9;-1;-3.5;-6.1;-10.7;-8;-10;-9.5;-6.6;-7.1;-7.7;-9.7"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Movie2 (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.25000
+reverb_decay=2.08000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-7.00000
+reverb_finalwet=-65.40000
+reverb_lfo_spin=0.70000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=600
+reverb_lpf_damp=9000
+reverb_lpf_input=18000
+reverb_lpf_output=17000
+reverb_osf=1
+reverb_reflection_amount=0.30000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=0.70000
+reverb_wet=-8.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;94.4;160.9;179.7;341.9;484.7;582.5;726.2;905.3;2677.1;4161.1;6349.8;10053;16510;-6.6;0.5;2.1;0.9;-3.9;-3.5;-6.1;-10.7;-8;-10;-9.5;-6.6;-7.1;-7.7;-9.7"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Open (low CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=3
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file=""
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=3
+reverb_bassboost=0.25000
+reverb_decay=2.08000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-7.00000
+reverb_finalwet=-9.00000
+reverb_lfo_spin=0.70000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=600
+reverb_lpf_damp=9000
+reverb_lpf_input=18000
+reverb_lpf_output=17000
+reverb_osf=1
+reverb_reflection_amount=0.30000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=0.70000
+reverb_wet=-8.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="24.7;53.4;89.4;132.9;186.4;323.5;484.7;650.4;1068.2;1486.9;2487.4;4238.2;6349.8;10819;18777;-15.7;-6.5;-6.1;-7.6;-8.2;-12.1;-12.5;-15.4;-13.6;-15;-12.2;-10.8;-10.1;-11.1;-12.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Sony MDR-7506 Headphones (lowest CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=false
+bass_maxgain=4
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Crossfeed.wav"
+convolver_optimization_mode=2
+convolver_waveform_edit="-80;-100;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=true
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=7.54000
+reverb_delay=35.20000
+reverb_enable=false
+reverb_finaldry=-7.00000
+reverb_finalwet=-70.00000
+reverb_lfo_spin=0.50000
+reverb_lfo_wander=0.14000
+reverb_lpf_bass=457
+reverb_lpf_damp=626
+reverb_lpf_input=18000
+reverb_lpf_output=11925
+reverb_osf=1
+reverb_reflection_amount=0.43000
+reverb_reflection_factor=1.20000
+reverb_reflection_width=0.76000
+reverb_wet=-66.60000
+reverb_width=0.92000
+stereowide_enable=false
+stereowide_level=34
+tone_enable=false
+tone_eq="25;40;64.2;100;160;250;400;630;1000;1600;2500;4000;6300;10000;16000;0;0;-2.8;0;0;-1;0;0;0;0;0;0;0;0;0"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Wide Close (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=3
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround2.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=false
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/swapChannels.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.00000
+reverb_decay=1.90000
+reverb_delay=0.00000
+reverb_enable=true
+reverb_finaldry=-4.70000
+reverb_finalwet=-34.20000
+reverb_lfo_spin=0.40000
+reverb_lfo_wander=0.30000
+reverb_lpf_bass=500
+reverb_lpf_damp=389
+reverb_lpf_input=577
+reverb_lpf_output=18000
+reverb_osf=2
+reverb_reflection_amount=0.00000
+reverb_reflection_factor=1.00000
+reverb_reflection_width=1.00000
+reverb_wet=-33.00000
+reverb_width=1.00000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;96.2;124.4;208.1;295.1;418.4;593.3;922.1;1433.3;2677.1;4161.1;6349.8;10239;18777;-13.6;-6.5;-2.2;-9.1;-5.4;-6.1;-11.8;-11.4;-12.4;-10.2;-9.5;-7.6;-8.1;-7.8;-12.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=true
+tube_pregain=129
dots/config/jamesdsp/presets/Wide Open (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=3
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround2.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file="/home/vincent/.config/jamesdsp/vdc/Butterworth.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.30000
+reverb_decay=0.50000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-4.00000
+reverb_finalwet=-70.00000
+reverb_lfo_spin=1.60000
+reverb_lfo_wander=0.20000
+reverb_lpf_bass=1000
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.70000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=-0.40000
+reverb_wet=-37.40000
+reverb_width=0.80000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;109.4;160.9;208.1;311.8;396;593.3;888.9;1433.3;2677.1;4161.1;6349.8;10053;18777;-10.6;-5.5;0.7;-7.1;-2.4;-4.6;-8.2;-9.4;-11.7;-9.2;-8.5;-5.9;-6.1;-6.7;-11.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/presets/Wide Open 4 Speaker (mid CPU).conf
@@ -0,0 +1,50 @@
+bass_enable=true
+bass_maxgain=3
+compression_aggressiveness=800
+compression_enable=false
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=true
+convolver_file="/home/vincent/.config/jamesdsp/irs/CorredHRTF_Surround2.wav"
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=true
+ddc_file="/home/vincent/.config/jamesdsp/vdc/FrontRearContrast.vdc"
+graphiceq_enable=false
+graphiceq_param="GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0"
+liveprog_enable=true
+liveprog_file="/home/vincent/.config/jamesdsp/liveprog/msCentreBoostFixed.eel"
+master_enable=true
+master_limrelease=30
+master_limthreshold=0
+master_postgain=0
+reverb_bassboost=0.30000
+reverb_decay=0.50000
+reverb_delay=0.00000
+reverb_enable=false
+reverb_finaldry=-4.00000
+reverb_finalwet=-70.00000
+reverb_lfo_spin=1.60000
+reverb_lfo_wander=0.20000
+reverb_lpf_bass=1000
+reverb_lpf_damp=18000
+reverb_lpf_input=18000
+reverb_lpf_output=18000
+reverb_osf=1
+reverb_reflection_amount=0.70000
+reverb_reflection_factor=0.70000
+reverb_reflection_width=-0.40000
+reverb_wet=-37.40000
+reverb_width=0.80000
+stereowide_enable=false
+stereowide_level=55
+tone_enable=true
+tone_eq="45.3;54.4;109.4;144.1;208.1;311.8;396;593.3;888.9;1433.3;2677.1;4161.1;6349.8;9003.1;18777;-9.6;-4.5;1.7;-4.7;-1.4;-3.6;-6.2;-9.4;-11.7;-10.2;-10.5;-7.9;-7.1;-8.5;-12.4"
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/jamesdsp/audio.conf
@@ -0,0 +1,33 @@
+bass_enable=true
+bass_maxgain=8
+compression_aggressiveness=800
+compression_enable=true
+compression_maxatk=30
+compression_maxrel=200
+convolver_enable=false
+convolver_file=""
+convolver_optimization_mode=0
+convolver_waveform_edit="0;0;0;0;0;0"
+crossfeed_bs2b_fcut=650
+crossfeed_bs2b_feed=95
+crossfeed_enable=false
+crossfeed_mode=1
+ddc_enable=false
+ddc_file=""
+graphiceq_enable=true
+graphiceq_param="GraphicEQ: 25 8; 40 8; 63 7; 100 6; 160 4; 250 2; 400 1; 630 1; 1000 2; 1600 3; 2500 3; 4000 3; 6300 2; 10000 1; 16000 0"
+liveprog_enable=false
+liveprog_file=""
+master_enable=true
+master_limrelease=30
+master_limthreshold=-1
+master_postgain=10
+reverb_enable=false
+stereowide_enable=false
+stereowide_level=55
+tone_enable=false
+tone_eq=""
+tone_filtertype=0
+tone_interpolation=0
+tube_enable=false
+tube_pregain=200
dots/config/niri/config.kdl
@@ -91,6 +91,7 @@ spawn-at-startup "waybar"
// Disabled - using FIDO2 keys with ssh-agent instead of PIV with yubikey-agent
// spawn-at-startup "yubikey-agent" "-l" "/run/user/1000/yubikey-agent/yubikey-agent.sock"
spawn-at-startup "swaybg" "-i" "/home/vincent/desktop/pictures/lockscreen"
+spawn-at-startup "jamesdsp" "-t"
prefer-no-csd
systems/common/services/pipewire.nix
@@ -22,23 +22,6 @@
["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
}
'')
- # ALSA soft-mixer support for proper hardware mixer control
- # Fixes issues with ASUS laptops where hardware amplifiers aren't
- # properly controlled by PipeWire (e.g., G14 AMP1/AMP2)
- (pkgs.writeTextDir "share/wireplumber/wireplumber.conf.d/99-alsasoftvol.conf" ''
- monitor.alsa.rules = [
- {
- matches = [
- { device.name = "~alsa_card.*" }
- ]
- actions = {
- update-props = {
- api.alsa.soft-mixer = true
- }
- }
- }
- ]
- '')
];
};
};
systems/okinawa/extra.nix
@@ -202,8 +202,9 @@
python3
uv
- # Audio utilities for G14 fix
+ # Audio utilities for G14
alsa-utils # amixer, alsactl for AMP control
+ jamesdsp # DSP/EQ to replace Dolby Atmos (use with asus-jamesdsp presets)
];
# Prometheus node exporter (configured in common module)
@@ -217,8 +218,7 @@
};
# ASUS G14 2022 Audio Fix
- # Fixes subwoofer/speaker volume sync issues where hardware amplifiers
- # (AMP1/AMP2) don't follow system volume controls
+ # Sets ALSA mixer levels at boot and after resume
systemd.services.asus-g14-audio-fix = {
description = "ASUS G14 Audio Amplifier Initialization";
after = [
@@ -234,28 +234,27 @@
Type = "oneshot";
RemainAfterExit = true;
ExecStart = pkgs.writeShellScript "g14-audio-init" ''
- # Find the correct card (Ryzen HD Audio Controller)
- CARD=$(${pkgs.alsa-utils}/bin/aplay -l | grep "Ryzen HD Audio Controller" | head -1 | sed 's/card \([0-9]\).*/\1/')
+ # Find the ALC285 audio card (internal speakers)
+ CARD=$(${pkgs.alsa-utils}/bin/aplay -l | grep "ALC285" | head -1 | sed 's/card \([0-9]\).*/\1/')
if [ -z "$CARD" ]; then
- echo "ERROR: Could not find Ryzen HD Audio Controller card"
+ echo "ERROR: Could not find ALC285 audio card"
exit 1
fi
echo "Initializing G14 audio on card $CARD"
- # Set Master volume
- ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset Master 80% unmute || true
+ # Set Master volume to 100% and unmute
+ ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset Master 100% unmute || true
- # Set AMP1 Speaker (subwoofer control)
- ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset 'AMP1 Speaker' 100% unmute || true
-
- # Set AMP2 Speaker (subwoofer control)
- ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset 'AMP2 Speaker' 100% unmute || true
-
- # Additional common controls
+ # Set Speaker volume (tweeters)
${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset Speaker 100% unmute || true
- ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset Headphone 80% unmute || true
+
+ # Set Bass Speaker (subwoofers)
+ ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset 'Bass Speaker' unmute || true
+
+ # Set Headphone volume
+ ${pkgs.alsa-utils}/bin/amixer -c "$CARD" sset Headphone 100% unmute || true
echo "G14 audio initialization complete"
'';