Skip to content
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

Sas: Add option to control reverb volume #14711

Merged
merged 1 commit into from
Aug 10, 2021

Conversation

unknownbrackets
Copy link
Collaborator

This also allows you to turn it off. Some don't like the reverb effects (which are probably inaccurate still), so while not a fix, this does provide another option. See for example #8645 or #10246.

It's another option but it is a preference some people want to adjust, and audio settings aren't too crowded.

Fixes #14328.

-[Unknown]

This also allows you to turn it off.
@unknownbrackets unknownbrackets added this to the v1.12.0 milestone Aug 10, 2021
@hrydgard
Copy link
Owner

Yeah, since the emulation is so inaccurate, this makes sense.

@hrydgard hrydgard added the Audio label Aug 10, 2021
@hrydgard hrydgard merged commit d62899e into hrydgard:master Aug 10, 2021
@unknownbrackets unknownbrackets deleted the reverb-volume branch October 13, 2021 03:48
@OCRBonk
Copy link

OCRBonk commented Jan 23, 2022

This is a neat setting. I was hoping this would allow me to turn up the Reverb volume in Final Fantasy Tactics since even on real hardware it's nothing even close to the PS1 version. But turning it up amplifies a lot of the problems with the reverb and causes the already audible aliasing to become even worse.

Turning it to 0 is nice but no reverb then. That had me thinking though. How hard would it be to add support for VST 2/3 plugins so we can turn the reverb emulation off. And at least use ;While not accurate; nice sounding reverb. There are a lot of great paid and free Reverb VST plugins and they are always low latency on the CPU at least in a DAW setting.

I know someone else mentioned about potentially trying to design tests to model the behavior of the reverb on real hardware.
Is it the testing part of that equation the more time consuming and larger part of the work? Or just designing the tests?

@unknownbrackets
Copy link
Collaborator Author

I created some samples of the reverb based on a simple tone and our results are pretty far off currently. But it's an equation with a lot of variables, so modeling it to get it right is hard... ideally I'd like to make them exactly accurate.

Some mode to have higher quality reverb doesn't sound bad at all. Ideally paired with accurate reverb...

-[Unknown]

@OCRBonk
Copy link

OCRBonk commented Jan 23, 2022

I'm not sure how accurate it would end up because I assume the PSP's reverb hardware is configurable(?), but there is the possibility of captured impulses played back through an audio plugin (Say a 1khz sine wave at xdB volume) like what is done to model things like the frequency response of a space in real life or the response of a particular loudspeaker.
Impulses are usually very small in size, while not ideal perhaps it would be possible to build a per game database where the parameters a game uses are logged and plugged into a homebrew program on real hardware and then an impulse response is recorded based on how those parameters change the behavior of the reverb unit.
Of course this is assuming games only use one setting because i'm not a programmer by any means. But i'm sure there are probably games that adjust and use different settings?

The other inaccurate idea is just VST plugins built into the audio mixing chain and simply processing whatever audio is sent before final output. (IE: Turn reverb volume to zero, use TAL-Reverb-4 as your plugin and dial settings to taste). The reverb wouldn't sound anything like real hardware but at least the reverb would sound pleasant.

@unknownbrackets
Copy link
Collaborator Author

There are 10 presets (like echo, room, studio, pipe, etc.) games can use, and that's it. The game can't tune the parameters individually, just choose a preset and turn on/off.

-[Unknown]

@OCRBonk
Copy link

OCRBonk commented Jan 24, 2022

That would make getting impulse responses a lot simpler if there is just 10 presets.
I don't know how much work it would be to code everything necessary. (A simple homebrew program on real hardware to do nothing but play sweeps or a tone for each of the 10 presets from here for example https://www.audioease.com/altiverb/sampling.php and capture the responses. Something I could do with my recording gear for example. Programming in VST support to use with a convolution reverb or your own system to use the impulses with ,etc)

But perhaps it is a worthwhile alternative since reverse engineering the asic itself is not viable.
Food for thought.

@unknownbrackets
Copy link
Collaborator Author

Yeah, here are the samples I already pulled (from a simple tone):
reverb_tone_samples.zip

-[Unknown]

@OCRBonk
Copy link

OCRBonk commented Jan 28, 2022

I'll try plugging these into a convolution reverb and see how they sound when I have a chance.

@OCRBonk
Copy link

OCRBonk commented Feb 1, 2022

So I gave these a shot and didn't quite work out right.
Perhaps how the impulse is generated needs some adjustment? (Maybe doing a sine wave sweep will produce a better result?)
Here's what one of the impulses sounded like full on wet.
https://drive.google.com/file/d/1r9OcyiUgkCexNzDwhuuLsZkqs2-d4C78/view?usp=sharing
Vs an impulse of a reverb unit
https://drive.google.com/file/d/17eWFVi8rNAYRIhEEnuELf2yNNUWlr2XD/view?usp=sharing
And for fun a Guitar Amp Cab
https://drive.google.com/file/d/1Dyiwx0RlKAKGuccm0zRvq_5dYYdJ1R5g/view?usp=sharing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Audio Reverb Level Adjustment for Users
3 participants