From dcb7e23e4d8d50b3b7b2306d5ace00edaa8de037 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Mon, 13 May 2024 18:19:43 +0300 Subject: [PATCH] Choose Audio Codec/Choose Video Codec translation support --- od-win32/avioutput.cpp | 13 +++++++++++-- od-win32/resources/resource.h | 2 ++ od-win32/resources/winuae.rc | 2 ++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/od-win32/avioutput.cpp b/od-win32/avioutput.cpp index 690dd382..b78f80ca 100644 --- a/od-win32/avioutput.cpp +++ b/od-win32/avioutput.cpp @@ -42,6 +42,8 @@ Copyright(c) 2001 - 2002; #include "savestate.h" #include "gfxboard.h" +void WIN32GUI_LoadUIString(DWORD id, TCHAR *string, DWORD dwStringLen); + #define MAX_AVI_SIZE (0x80000000 - 0x1000000) static smp_comm_pipe workindex; @@ -111,6 +113,7 @@ static PAVISTREAM AVIAudioStream = NULL; // compressed stream pointer static HACMSTREAM has = NULL; // stream handle that can be used to perform conversions static ACMSTREAMHEADER ash; static ACMFORMATCHOOSE acmopt; +static TCHAR acmopt_title[MAX_PATH]; static WAVEFORMATEXTENSIBLE wfxSrc; // source audio format static LPWAVEFORMATEX pwfxDst = NULL; // pointer to destination audio format static DWORD wfxMaxFmtSize; @@ -356,7 +359,8 @@ static int AVIOutput_AllocateAudio (bool immediate) acmopt.fdwStyle = ACMFORMATCHOOSE_STYLEF_INITTOWFXSTRUCT; acmopt.pwfx = pwfxDst; acmopt.cbwfx = wfxMaxFmtSize; - acmopt.pszTitle = _T("Choose Audio Codec"); + WIN32GUI_LoadUIString(IDS_CHOOSE_AUDIO_CODEC, acmopt_title, sizeof(acmopt_title) / sizeof(TCHAR)); + acmopt.pszTitle = acmopt_title; //acmopt.szFormatTag =; // not valid until the format is chosen //acmopt.szFormat =; // not valid until the format is chosen @@ -699,6 +703,9 @@ int AVIOutput_GetVideoCodec(TCHAR *name, int len) int AVIOutput_ChooseVideoCodec (HWND hwnd, TCHAR *s, int len) { + TCHAR tmp1[MAX_PATH]; + char tmp2[MAX_PATH]; + AVIOutput_Initialize(); AVIOutput_End(); @@ -717,7 +724,9 @@ int AVIOutput_ChooseVideoCodec (HWND hwnd, TCHAR *s, int len) pcompvars->lQ = 10000; // 10000 is maximum quality setting or ICQUALITY_DEFAULT for default pcompvars->lKey = avioutput_fps; // default to one key frame per second, every (FPS) frames pcompvars->dwFlags = 0; - if (ICCompressorChoose (hwnd, ICMF_CHOOSE_DATARATE | ICMF_CHOOSE_KEYFRAME, lpbi, NULL, pcompvars, "Choose Video Codec") == TRUE) { + WIN32GUI_LoadUIString(IDS_CHOOSE_VIDEO_CODEC, tmp1, sizeof(tmp1) / sizeof(TCHAR)); + ua_copy(tmp2, sizeof(tmp2), tmp1); + if (ICCompressorChoose(hwnd, ICMF_CHOOSE_DATARATE | ICMF_CHOOSE_KEYFRAME, lpbi, NULL, pcompvars, tmp2) == TRUE) { UAEREG *avikey; LRESULT ss; uae_u8 *state; diff --git a/od-win32/resources/resource.h b/od-win32/resources/resource.h index ff3012ae..8ef450d3 100644 --- a/od-win32/resources/resource.h +++ b/od-win32/resources/resource.h @@ -438,6 +438,8 @@ #define IDS_SOUND_FILTER_ON_FIXEDONLY 443 #define IDS_MISCLISTITEMS5 444 #define IDS_MISCLISTITEMS6 445 +#define IDS_CHOOSE_AUDIO_CODEC 446 +#define IDS_CHOOSE_VIDEO_CODEC 447 #define IDS_QS_MODELS 1000 #define IDS_QS_MODEL_A500 1001 #define IDS_QS_MODEL_A500P 1002 diff --git a/od-win32/resources/winuae.rc b/od-win32/resources/winuae.rc index b78bbd5c..7795722b 100644 --- a/od-win32/resources/winuae.rc +++ b/od-win32/resources/winuae.rc @@ -2242,6 +2242,8 @@ BEGIN IDS_SOUND_FILTER_ON_FIXEDONLY "Always on (Fixed only)" IDS_MISCLISTITEMS5 "Hide all UAE autoconfig boards\nRight Control = Right Windows key\nWindows shutdown/logoff notification\nWarn when attempting to close window\nPower led dims when audio filter is disabled\nAutomatically capture mouse when window is activated\nDebug memory space\n" IDS_MISCLISTITEMS6 "Force hard reset if CPU halted\nA600/A1200/A4000 IDE scsi.device disable\nWarp mode reset\nGUI gamepad control\nDefault on screen keyboard (Pad button 4)\n" + IDS_CHOOSE_AUDIO_CODEC "Choose Audio Codec" + IDS_CHOOSE_VIDEO_CODEC "Choose Video Codec" END #endif // English (United Kingdom) resources -- 2.47.3