- Added a configurable reverb volume boost, sounds nice in some games :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2620 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
ramapcsx2 2010-02-21 17:44:48 +00:00
parent 1b00ce0803
commit 5dba50645b
7 changed files with 32 additions and 10 deletions

View File

@ -62,7 +62,7 @@ extern wchar_t MemDumpFileName[255];
extern wchar_t RegDumpFileName[255];
extern int Interpolation;
extern int ReverbBoost;
extern bool EffectsDisabled;
extern u32 OutputModule;

View File

@ -64,7 +64,7 @@ int Interpolation = 1;
1. linear interpolation
2. cubic interpolation
*/
int ReverbBoost = 0;
bool EffectsDisabled = false;
// OUTPUT

View File

@ -65,7 +65,7 @@ extern wchar_t MemDumpFileName[255];
extern wchar_t RegDumpFileName[255];
extern int Interpolation;
extern int ReverbBoost;
extern bool EffectsDisabled;
extern int AutoDMAPlayRate[2];

View File

@ -617,9 +617,18 @@ StereoOut32 V_Core::Mix( const VoiceMixSet& inVoices, const StereoOut32& Input,
WaveDump::WriteCore( Index, CoreSrc_PostReverb, RV );
// Boost reverb volume
int temp = 1;
switch (ReverbBoost)
{
case 0: break;
case 1: temp = 2;
case 2: temp = 4;
case 3: temp = 8;
}
// Mix Dry + Wet
// (master volume is applied later to the result of both outputs added together).
return TD + ApplyVolume( RV, FxVol );
return TD + ApplyVolume( RV*temp, FxVol );
}
// used to throttle the output rate of cache stat reports

View File

@ -33,7 +33,7 @@ int Interpolation = 1;
1. linear interpolation
2. cubic interpolation
*/
int ReverbBoost = 0;
bool EffectsDisabled = false;
// OUTPUT
@ -57,6 +57,7 @@ bool StereoExpansionEnabled = false;
void ReadSettings()
{
Interpolation = CfgReadInt( L"MIXING",L"Interpolation", 1 );
ReverbBoost = CfgReadInt( L"MIXING",L"Reverb_Boost", 0 );
timeStretchDisabled = CfgReadBool( L"OUTPUT", L"Disable_Timestretch", false );
EffectsDisabled = CfgReadBool( L"MIXING", L"Disable_Effects", false );
@ -102,6 +103,7 @@ void ReadSettings()
void WriteSettings()
{
CfgWriteInt(L"MIXING",L"Interpolation",Interpolation);
CfgWriteInt(L"MIXING",L"Reverb_Boost",ReverbBoost);
CfgWriteBool(L"MIXING",L"Disable_Effects",EffectsDisabled);
@ -141,6 +143,13 @@ BOOL CALLBACK ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"1 - Linear (recommended)" );
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"2 - Cubic (slower/maybe better)" );
SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_SETCURSEL,Interpolation,0 );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_RESETCONTENT,0,0 );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_ADDSTRING,0,(LPARAM) L"1X - Normal Reverb Volume" );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_ADDSTRING,0,(LPARAM) L"2X - Reverb Volume * 2" );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_ADDSTRING,0,(LPARAM) L"4X - Reverb Volume * 4" );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_ADDSTRING,0,(LPARAM) L"8X - Reverb Volume * 8" );
SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_SETCURSEL,ReverbBoost,0 );
SendDialogMsg( hWnd, IDC_OUTPUT, CB_RESETCONTENT,0,0 );
@ -185,6 +194,7 @@ BOOL CALLBACK ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
Clampify( SndOutLatencyMS, LATENCY_MIN, LATENCY_MAX );
Interpolation = (int)SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_GETCURSEL,0,0 );
ReverbBoost = (int)SendDialogMsg( hWnd, IDC_REVERB_BOOST, CB_GETCURSEL,0,0 );
OutputModule = (int)SendDialogMsg( hWnd, IDC_OUTPUT, CB_GETCURSEL,0,0 );
WriteSettings();

View File

@ -52,7 +52,7 @@ FONT 8, "MS Shell Dlg", 400, 0, 0x0
BEGIN
PUSHBUTTON "OK",IDOK,200,256,54,15,NOT WS_TABSTOP
PUSHBUTTON "Cancel",IDCANCEL,259,256,54,15,NOT WS_TABSTOP
GROUPBOX "Mixing Settings",IDC_STATIC,6,5,130,99
GROUPBOX "Mixing Settings",IDC_STATIC,6,5,130,115
GROUPBOX "Output Settings",IDC_STATIC,142,5,172,247
COMBOBOX IDC_OUTPUT,164,26,126,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Configure...",IDC_OUTCONF,236,40,54,12
@ -64,17 +64,19 @@ BEGIN
LTEXT "Latency:",IDC_STATIC,181,62,33,9,NOT WS_GROUP
LTEXT "Interpolation:",IDC_STATIC,12,16,55,10,NOT WS_GROUP
LTEXT "Module:",IDC_STATIC,161,16,50,9,NOT WS_GROUP
LTEXT "(speedup!) Skips reverb and stereo delay effects processing, but won't sound as good in most games.",IDC_STATIC,26,60,104,36
LTEXT "(speedup!) Skips reverb effects processing, but won't sound as good in most games.",IDC_STATIC,26,60,104,36
LTEXT "(currently requires manual configuration via the ini file)",IDC_STATIC,162,229,146,20
CTEXT "100 ms (avg)",IDC_LATENCY_LABEL,215,62,58,9
LTEXT "Timestretching helps reduce latency and usually eliminates audio skips.",IDC_STATIC,162,109,146,20
CONTROL 116,IDC_STATIC,"Static",SS_BITMAP,7,196,117,52,WS_EX_CLIENTEDGE
PUSHBUTTON "Advanced...",IDC_OPEN_CONFIG_SOUNDTOUCH,219,130,84,12
PUSHBUTTON "Configure Debug Options...",IDC_OPEN_CONFIG_DEBUG,14,131,108,14
CHECKBOX "Enable Debug Options",IDC_DEBUG_ENABLE,14,117,104,10,NOT WS_TABSTOP
GROUPBOX "",IDC_STATIC,6,107,129,46
PUSHBUTTON "Configure Debug Options...",IDC_OPEN_CONFIG_DEBUG,14,167,108,14
CHECKBOX "Enable Debug Options",IDC_DEBUG_ENABLE,14,153,104,10,NOT WS_TABSTOP
GROUPBOX "",IDC_STATIC,6,143,129,46
CONTROL "Enable Audio Expansion",IDC_EXPANSION_ENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,150,152,135,10
LTEXT "Audio expansion to 5.1. Currently for XAudio2 only. WIP.",IDC_STATIC,162,164,146,44
COMBOBOX IDC_REVERB_BOOST,14,99,114,84,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Reverb Boost Factor",IDC_STATIC,12,88,75,10,NOT WS_GROUP
END
IDD_DEBUG DIALOGEX 0, 0, 326, 525

View File

@ -22,6 +22,7 @@
#define IDC_DEBUG 1010
#define IDC_DEBUG_ENABLE 1010
#define IDC_INTERPOLATE 1011
#define IDC_REVERB_BOOST 1012
#define IDC_OUTPUT 1013
#define IDC_BUFFERS_SLIDER 1014
#define IDC_MSGKEY 1020