-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
96/192 kHz models are severely high passed #62
Comments
That's likely the DC blocker (which correct the model's DC offset). The coefficient should be based on the sample rate. |
Can you try the latest version? I just made a change to adjust the dc blocker coefficient based on sample rate. It should be mostly the same (actually a bit less aggressive) at 48k, but much less aggressive at higher rates. |
Great job! Is it possible to lower it somewhat more without dc happening? I feel pretty certain that I hear the very lowest of lows are taken out at 96/192 when I use EQ models. |
I don't know how to properly measure or visualize these very low frequencies so all I can do is listen and do changes. This might lead to placebo effect but I believe that Please correct my assumptions and possible placebos. |
There are a couple of things that can be done to actually measure things. To compare the lv2 with the official NAM plugin, you can run the same audio through both and null test them. To do that, you subtract one from the other and then look at the frequency spectrum of the diff. To measure the impact of the lv2 dc blocker, you would want to run full spectrum noise through the plugin with no model loaded and see what effect it has. If the impacted low frequency range is larger at higher sample rates, then my coefficient scaling isn't working correctly. |
I will probably do a null test soon and in the mean time I will continue using the value 55.0 and see if I get any DC issues. I will let you know when I have done any comparisons. Regards. |
Btw, checking for DC offset is easy. Just look at the resulting waveform and see if it is centered on zero or not. |
I did some frequency analysis, and the dc blocker is definitely cutting out more low end than I'd like. I'll look into alternatives. |
Strangely, I'm not seeing DC offsets now even with the DC blocker code completely removed. It definitely used to be a problem: |
Interesting! I will try it with many different LSTM settings (num_layers_, hidden_size, etc) and see if I get any issues. |
I'm seeing the same behavior (no DC offset even with DC offset correction code removed) in the official NAM plugin. |
I tried with a really old version of the lv2 plugin, and I still couldn't get a DC offset to happen. Maybe I'm just not trying the right models (although I recall the issue being pretty pervasive). If you can get a DC offset, please share the model. |
I will do that! |
I haven't experienced any DC issues yet with a value of 25.0. I am interested though in what I need to change to disable it completely like you mentioned. |
You just need to comment out the whole DC blocker loop: neural-amp-modeler-lv2/src/nam_plugin.cpp Lines 293 to 302 in 72fd4a1
|
Thank you once again! |
The current settings affect the low frequencies too much in my opinion. Try nulling a model loaded in neural-amp-modeler-lv2 against the captured file. Now also try the same model with with e.g. Ratatouille lv2 or the official plugin. |
I'd been planning to revisit this once I had a model that was showing dc offset issues so that I could see what (if any) trade-off a subtler high pass has. I haven't been able to find a model that has dc offset issues, though. I may just remove the dc blocker all together. |
I went ahead and removed the dc blocker, since it seemed to be doing more harm than good. |
I noticed that models that are 96/192 kHz are severely high passed compared to the official NAM VST3. The attached files was rendered at 192kHz and then resampled down to 48 kHz AAC/MP4.
First half is VST3 and second one is LV2 (win64):
vst_vs_lv2.mp4
Model used:
lstm-192khz.nam.zip
Update: No model is needed to be loaded to achieve the high pass.
The text was updated successfully, but these errors were encountered: