From: Toni Wilen Date: Tue, 19 May 2015 16:38:52 +0000 (+0300) Subject: Audio codec can be disabled. X-Git-Tag: 3100~21 X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=8eb800c0c1e9926fe17082dd5cc3c8db149f5a6f;p=francis%2Fwinuae.git Audio codec can be disabled. --- diff --git a/od-win32/avioutput.cpp b/od-win32/avioutput.cpp index f19601e9..b2af41cb 100644 --- a/od-win32/avioutput.cpp +++ b/od-win32/avioutput.cpp @@ -99,6 +99,7 @@ static struct avientry *avientries[AVIENTRY_MAX + 1]; /* audio */ static int FirstAudio; +static bool audio_validated; static DWORD dwAudioInputRemaining; static unsigned int StreamSizeAudio; // audio write position static double StreamSizeAudioExpected, StreamSizeAudioGot; @@ -274,6 +275,7 @@ void AVIOutput_SetSettings (void) void AVIOutput_ReleaseAudio (void) { + audio_validated = false; } static void AVIOutput_FreeAudioDstFormat () @@ -284,7 +286,7 @@ static void AVIOutput_FreeAudioDstFormat () static int AVIOutput_AudioAllocated (void) { - return pwfxDst ? 1 : 0; + return pwfxDst && audio_validated; } static int AVIOutput_AllocateAudio (void) @@ -364,6 +366,7 @@ static int AVIOutput_ValidateAudio (WAVEFORMATEX *wft, TCHAR *name, int len) ACMFORMATTAGDETAILS aftd; ACMFORMATDETAILS afd; + audio_validated = false; memset(&aftd, 0, sizeof (ACMFORMATTAGDETAILS)); aftd.cbStruct = sizeof (ACMFORMATTAGDETAILS); aftd.dwFormatTag = wft->wFormatTag; @@ -382,6 +385,7 @@ static int AVIOutput_ValidateAudio (WAVEFORMATEX *wft, TCHAR *name, int len) if (name) _stprintf (name, _T("%s %s"), aftd.szFormatTag, afd.szFormat); + audio_validated = true; return 1; } @@ -409,8 +413,6 @@ static int AVIOutput_GetAudioFromRegistry (WAVEFORMATEX *wft) return ok; } - - static int AVIOutput_GetAudioCodecName (WAVEFORMATEX *wft, TCHAR *name, int len) { return AVIOutput_ValidateAudio (wft, name, len);