Closed trummerschlunk closed 2 years ago
I found that the only comfortable way for me to design and tweak presets is in reaper+plugin. Hope this works for transferring them to the 'easy preset buttons'.
not really, reaper has its own weird format when saving state. and I dont think it can export lv2 presets at the moment.
a screenshot of the advanced settings could do perhaps, then we just manually write down the values.
ok, I'll tweak in plugin and make screenshots.
I can make this easy for us and have a button that just prints current values to terminal, in a way that is appropriate for constructing presets.. you can though save in whatever interim format you need at the moment. then when my side is ready you load the presets made in reaper and press the button. would that work?
sure, if the button is available in the macOS VST version.
Presets coming really nicely. Investigated loudness standards.
Presets will probably be: EBU R128 (-23) YOUTUBE (-14) APPLE PODCASTS (-16) MUSIC mild MUSIC compressed
Here is a comparison of loudness standards: https://youlean.co/loudness-standards-full-comparison-table/
In addition to youlean, the following may also come in handy: https://www.masteringthemix.com/blogs/learn/76296773-mastering-audio-for-soundcloud-itunes-spotify-and-youtube
Here are the labels for the presets:
YOUTUBE -14 LUFS
APPLE PODCASTS -16 LUFS
EBU R128 -23 LUFS
MUSIC -16 LUFS
MUSIC COMPRESSED -16 LUFS
the "-x LUFS" text is to be part of the button?
Yes, please!
Let's change the last two to:
SPEECH GENERAL -16 LUFS
MUSIC GENERAL -16 LUFS
YOUTUBE -14 LUFS
APPLE PODCASTS -16 LUFS
EBU R128 -23 LUFS
SPEECH GENERAL -16 LUFS
MUSIC GENERAL -16 LUFS
So this..
great!
ok there is a very crude way to export the current plugin parameters now, starting with 8a42c5cd60a7b883c2a8783f5422a4a5b953771f
simply start the host via terminal, and click on any empty area of the plugin gui. there will be some values printed on the terminal, just post them here and I will put them in the plugin code.
output will be like this:
==== preset data start === 0,-18,0,0,0,0,0,0,0,-90,0,50,500,0,5,0,0,600,1,0,20,-14,20,20,0,20,-6,20,200,6,60,50,0,100,0,10,-6,15,150,12,60,60,10,-12,3,30,12,30,8000,1,0,80,6,1,40,8,50,0,0,-1,75, ==== preset data end ===
Preset 1: YOUTUBE -14LUFS ==== preset data start === 0,-14.0707969666,0,0,0,0,1,0,1,-90,0.982031285763,50,500,0,20.0463275909,0.0358128212392,0,600,1,0,50.4114837646,-20.0030231476,30.0247039795,30.0406150818,1,15.7516555786,-5.97815847397,5.00165510178,49.9614524841,8.97562217712,60,50,0,50.8553619385,0,20.1386947632,-5.99849796295,10.012336731,79.9935760498,12,70.5796813965,60,40.6058197021,-8.02368450165,0,50.0002937317,12,30,8000,1.01593780518,0,80,3.00375056267,1.01718783379,40,2.97500610352,50,0,0,-1,75, ==== preset data end ===
Preset 2: APPLE PODCASTS -16 LUFS ==== preset data start === 0,-16.0583839417,0,0,0,0,1,0,1,-90,0.982031285763,50,500,0,20.0463275909,0.0358128212392,0,600,1,0,50.4114837646,-20.0030231476,30.0247039795,30.0406150818,1,15.7516555786,-5.97815847397,5.00165510178,49.9614524841,8.97562217712,60,50,0,50.8553619385,0,20.1386947632,-5.99849796295,10.012336731,79.9935760498,12,70.5796813965,60,40.6058197021,-8.02368450165,0,50.0002937317,12,30,8000,1.01593780518,0,80,3.00375056267,1.01718783379,40,2.97500610352,50,0,0,-1,75, ==== preset data end ===
Preset 3: EBU R128 -23 LUFS ==== preset data start === 0,-23.9793319702,0,0,0,0,1,0,1,-90,0.982031285763,50,500,0,20.0463275909,0.0358128212392,0,600,1,0,40.4269485474,-20.0030231476,30.0247039795,30.0406150818,1,15.7516555786,-5.97815847397,5.00165510178,49.9614524841,8.97562217712,60,50,0,50.8553619385,0,20.1386947632,-5.99849796295,10.012336731,79.9935760498,12,70.5796813965,60,40.6058197021,-8.02368450165,0,50.0002937317,12,30,8000,1.01593780518,0,80,3.00375056267,1.01718783379,40,2.97500610352,50,0,0,-1,75, ==== preset data end ===
Preset 4: SPEECH GENERAL -16 LUFS ==== preset data start === 0,-16.2320365906,0,0,0,0,1,0,1,-90,0.982031285763,50,500,0,20.0463275909,0.0358128212392,0,600,1,0,40.4269485474,-20.0030231476,30.0247039795,30.0406150818,0,15.7516555786,-5.97815847397,5.00165510178,49.9614524841,8.97562217712,60,50,0,50.8553619385,0,20.1386947632,-5.00438022614,10.012336731,79.9935760498,12,70.5796813965,60,40.6058197021,-6.96862411499,0,50.0002937317,12,30,8000,1.01593780518,0,80,3.00375056267,1.01718783379,40,2.97500610352,50.8256835938,0,0,-1,75, ==== preset data end ===
Preset 5: MUSIC GENERAL -16 LUFS ==== preset data start === 0,-16.0467948914,0,0,0,0,0,0,1,-90,0,50,430.530334473,0,5,0.0358128212392,0.958782374859,600,1,0,20.4575080872,-10.0470380783,10.0178747177,10.0129928589,0,20,-3.95123386383,19.9961719513,339.953308105,6,60,50.6209564209,0,50.8553619385,0,10,-3.0194978714,15,150,12,70.5796813965,60,30.2618713379,-12,7.97187042236,30.0273475647,12.0075139999,30,8000,1.01593780518,0,80,5.99455833435,3.00781130791,40,2.97500610352,50,0,0,-1,75, ==== preset data end ===
Presets are added now, I cleaned them up a bit because 5.994 is pretty much 6 (also shown on the gui as such). Hopefully you dont need to regen those presets so soon..
Active preset detection is in place too. So if you load a preset and change values, the preset button will become unactive, but if you later change values to ones that match the preset the button will be activate again. It uses a quick memory comparison, as to not waste a lot of cpu comparing 60 values * all presets every time a little knob changes. So there is the side-effect of, for example, gate with different values but being bypassed (thus values wouldnt matter) not matching the active state.
Still need to export LV2 presets. Also VST2 under DPF does not expose such presets to the host, because of how VST2 typically does things making it extremely memory wasteful (so there will be a single, "default" preset for VST2 seen by the host). Preset buttons will always work via plugin GUI though.
not doing any more 'expert' presets for now. maybe later for use in DAW.
LV2 presets added in 529ca44bbbfd5773d0be9cf09881b60eb3ebb571 Closing this now
there are two kinds of presets:
todo on dsp/faust side:
todo on gui side: