Add -profile [profile] command line option

A user requested it, and it was super quick and easy, so I did it.

Also, renamed an unusual variable isSTEREO to isStereo.
master
jp9000 2014-03-07 20:13:24 -07:00
parent a1db3bd683
commit dfc96d088e
4 changed files with 26 additions and 17 deletions

View File

@ -207,14 +207,17 @@ void InvertPre47Scenes()
}
}
void SetupIni()
void SetupIni(CTSTR profile)
{
//first, find out which profile we're using
String strProfile = GlobalConfig->GetString(TEXT("General"), TEXT("Profile"));
String strProfile = profile ? profile : GlobalConfig->GetString(TEXT("General"), TEXT("Profile"));
DWORD lastVersion = GlobalConfig->GetInt(TEXT("General"), TEXT("LastAppVersion"));
String strIni;
if (profile)
GlobalConfig->SetString(TEXT("General"), TEXT("Profile"), profile);
//--------------------------------------------
// 0.47a fix (invert sources in all scenes)
@ -291,7 +294,7 @@ void SetupIni()
AppConfig->SetInt (TEXT("Audio Encoding"), TEXT("Format"), 1);
AppConfig->SetString(TEXT("Audio Encoding"), TEXT("Bitrate"), TEXT("128"));
AppConfig->SetInt (TEXT("Audio Encoding"), TEXT("isSTEREO"), 1);
AppConfig->SetInt (TEXT("Audio Encoding"), TEXT("isStereo"), 1);
AppConfig->SetInt (TEXT("Publish"), TEXT("Service"), 0);
AppConfig->SetInt (TEXT("Publish"), TEXT("Mode"), 0);
@ -413,6 +416,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
int numArgs;
LPWSTR *args = CommandLineToArgvW(GetCommandLineW(), &numArgs);
LPWSTR profile = NULL;
bool bDisableMutex = false;
@ -424,10 +428,13 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
bIsPortable = true;
else if (scmpi(args[i], TEXT("-start")) == 0)
bStreamOnStart = true;
else if (scmpi(args[i], L"-profile") == 0)
{
if (++i < numArgs)
profile = args[i];
}
}
LocalFree(args);
//------------------------------------------------------------
//make sure only one instance of the application can be open at a time
@ -552,7 +559,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
//--------------------------------------------
AppConfig = new ConfigFile;
SetupIni();
SetupIni(profile);
//--------------------------------------------
@ -680,5 +687,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
CloseHandle(hOBSMutex);
LocalFree(args);
return 0;
}

View File

@ -588,7 +588,7 @@ class OBS
UINT sampleRateHz;
UINT audioChannels;
BOOL isSTEREO;
BOOL isStereo;
AudioEncoder *audioEncoder;

View File

@ -477,9 +477,9 @@ retryHookTestV2:
//------------------------------------------------------------------
BOOL isSTEREO = AppConfig->GetInt(L"Audio Encoding", L"isSTEREO", 1);
BOOL isStereo = AppConfig->GetInt(L"Audio Encoding", L"isStereo", 1);
switch (isSTEREO) {
switch (isStereo) {
case 0: audioChannels = 1; break;
default:
case 1: audioChannels = 2; break;

View File

@ -116,7 +116,7 @@ void SettingsEncoding::ApplySettings()
int curSelCh = (int)SendMessage(GetDlgItem(hwnd, IDC_AUDIOCHANNEL), CB_GETCURSEL, 0, 0);
if(curSelCh != CB_ERR)
AppConfig->SetInt(TEXT("Audio Encoding"), TEXT("isSTEREO"), curSelCh);
AppConfig->SetInt(TEXT("Audio Encoding"), TEXT("isStereo"), curSelCh);
bool bUseCBR = SendMessage(GetDlgItem(hwnd, IDC_USECBR), BM_GETCHECK, 0, 0) == BST_CHECKED;
AppConfig->SetInt(TEXT("Video Encoding"), TEXT("UseCBR"), bUseCBR);
@ -277,15 +277,15 @@ INT_PTR SettingsEncoding::ProcMessage(UINT message, WPARAM wParam, LPARAM lParam
SendMessage(hwndTemp, CB_ADDSTRING, 0, (LPARAM)TEXT("mono"));
SendMessage(hwndTemp, CB_ADDSTRING, 0, (LPARAM)TEXT("stereo"));
LoadSettingComboInt(hwndTemp, TEXT("Audio Encoding"), TEXT("isSTEREO"), 1, 1);
LoadSettingComboInt(hwndTemp, TEXT("Audio Encoding"), TEXT("isStereo"), 1, 1);
//--------------------------------------------
hwndTemp = GetDlgItem(hwnd, IDC_AUDIOBITRATE);
BOOL isSTEREO = SendMessage(GetDlgItem(hwnd, IDC_AUDIOCHANNEL), CB_GETCURSEL, 0, 0) == 1;
BOOL isStereo = SendMessage(GetDlgItem(hwnd, IDC_AUDIOCHANNEL), CB_GETCURSEL, 0, 0) == 1;
if (isSTEREO)
if (isStereo)
{
SendMessage(hwndTemp, CB_ADDSTRING, 0, (LPARAM)TEXT("48"));
SendMessage(hwndTemp, CB_ADDSTRING, 0, (LPARAM)TEXT("64"));
@ -309,7 +309,7 @@ INT_PTR SettingsEncoding::ProcMessage(UINT message, WPARAM wParam, LPARAM lParam
SendMessage(hwndTemp, CB_ADDSTRING, 0, (LPARAM)TEXT("160"));
}
LoadSettingComboString(hwndTemp, TEXT("Audio Encoding"), TEXT("Bitrate"), isSTEREO ? TEXT("96") : TEXT("48"));
LoadSettingComboString(hwndTemp, TEXT("Audio Encoding"), TEXT("Bitrate"), isStereo ? TEXT("96") : TEXT("48"));
//--------------------------------------------
@ -351,9 +351,9 @@ INT_PTR SettingsEncoding::ProcMessage(UINT message, WPARAM wParam, LPARAM lParam
HWND hwndAudioBitrate = GetDlgItem(hwnd, IDC_AUDIOBITRATE);
SendMessage(hwndAudioBitrate, CB_RESETCONTENT, 0, 0);
BOOL isSTEREO = SendMessage(GetDlgItem(hwnd, IDC_AUDIOCHANNEL), CB_GETCURSEL, 0, 0) == 1;
BOOL isStereo = SendMessage(GetDlgItem(hwnd, IDC_AUDIOCHANNEL), CB_GETCURSEL, 0, 0) == 1;
if (isSTEREO)
if (isStereo)
{
SendMessage(hwndAudioBitrate, CB_ADDSTRING, 0, (LPARAM)TEXT("48"));
SendMessage(hwndAudioBitrate, CB_ADDSTRING, 0, (LPARAM)TEXT("64"));
@ -377,7 +377,7 @@ INT_PTR SettingsEncoding::ProcMessage(UINT message, WPARAM wParam, LPARAM lParam
SendMessage(hwndAudioBitrate, CB_ADDSTRING, 0, (LPARAM)TEXT("160"));
}
SendMessage(hwndAudioBitrate, CB_SETCURSEL, isSTEREO ? 3 : 2, 0);
SendMessage(hwndAudioBitrate, CB_SETCURSEL, isStereo ? 3 : 2, 0);
bDataChanged = true;
}