trummerschlunk / master_me

automatic mastering plugin for live streaming, podcasts and internet radio.
GNU General Public License v3.0
538 stars 22 forks source link

presets #55

Closed trummerschlunk closed 2 years ago

trummerschlunk commented 2 years ago

there are two kinds of presets:

todo on dsp/faust side:

todo on gui side:

trummerschlunk commented 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'.

falkTX commented 2 years ago

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.

trummerschlunk commented 2 years ago

ok, I'll tweak in plugin and make screenshots.

falkTX commented 2 years ago

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?

trummerschlunk commented 2 years ago

sure, if the button is available in the macOS VST version.

trummerschlunk commented 2 years ago

Presets coming really nicely. Investigated loudness standards.

Presets will probably be: EBU R128 (-23) YOUTUBE (-14) APPLE PODCASTS (-16) MUSIC mild MUSIC compressed

trummerschlunk commented 2 years ago

Here is a comparison of loudness standards: https://youlean.co/loudness-standards-full-comparison-table/

x42 commented 2 years ago

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

trummerschlunk commented 2 years ago

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

falkTX commented 2 years ago

the "-x LUFS" text is to be part of the button?

trummerschlunk commented 2 years ago

Yes, please!

trummerschlunk commented 2 years ago

Let's change the last two to:

SPEECH GENERAL -16 LUFS

MUSIC GENERAL -16 LUFS

trummerschlunk commented 2 years ago

YOUTUBE -14 LUFS

APPLE PODCASTS -16 LUFS

EBU R128 -23 LUFS

SPEECH GENERAL -16 LUFS

MUSIC GENERAL -16 LUFS

falkTX commented 2 years ago

So this..

image

trummerschlunk commented 2 years ago

great!

falkTX commented 2 years ago

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 ===

trummerschlunk commented 2 years ago

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 ===

falkTX commented 2 years ago

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.

trummerschlunk commented 2 years ago

not doing any more 'expert' presets for now. maybe later for use in DAW.

falkTX commented 2 years ago

LV2 presets added in 529ca44bbbfd5773d0be9cf09881b60eb3ebb571 Closing this now