//acmopt.szFormatTag =; // not valid until the format is chosen
@@ -303,7+306,7 @@ static int AVIOutput_AllocateAudio (void)
//ACM_FORMATENUMF_WBITSPERSAMPLE // MP3 doesn't apply so it will be removed from codec selection
//ACM_FORMATENUMF_SUGGEST // with this flag set, only MP3 320kbps is displayed, which is closest to the source format
- acmopt.pwfxEnum = &wfxSrc;
+ acmopt.pwfxEnum = &wfxSrc.Format;
return 1;
}
@@ -385,7+388,6 @@ int AVIOutput_ChooseAudioCodec (HWND hwnd, char *s, int len)
return 0;
acmopt.hwndOwner = hwnd;
- acmopt.pfnHook = acmFilterChooseHookProc;
switch (acmFormatChoose (&acmopt))
{
@@ -424,7+426,7 @@ int AVIOutput_ChooseAudioCodec (HWND hwnd, char *s, int len)
break;
case MMSYSERR_NODRIVER:
- MessageBox (hwnd, "A suitable driver is not available to provide valid format selections.", VersionStr, MB_OK | MB_ICONERROR | MB_APPLMODAL | MB_SETFOREGROUND);
+ MessageBox (hwnd, "A suitable driver is not available to provide valid format selections.\n(Unsupported channel-mode selected in Sound-panel?)", VersionStr, MB_OK | MB_ICONERROR | MB_APPLMODAL | MB_SETFOREGROUND);
break;
default:
@@ -743,8+745,8 @@ void AVIOutput_WriteAudio (uae_u8 *sndbuffer, int sndbufsize)
if (!avioutput_audio || !avioutput_enabled)
return;
- if (skipsample > 0 && size > wfxSrc.nBlockAlign) {
- size -= wfxSrc.nBlockAlign;
+ if (skipsample > 0 && size > wfxSrc.Format.nBlockAlign) {