[PATCH v2 1/2] imaadp32.acm: Fix block size calculations.

Andrew Eikum aeikum at codeweavers.com
Fri Jun 9 08:48:03 CDT 2017


Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>

On Thu, Jun 08, 2017 at 10:15:20AM -0500, Zebediah Figura wrote:
> v2: keep more transparent math
> Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
> ---
>  dlls/imaadp32.acm/imaadp32.c | 11 ++---------
>  1 file changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/dlls/imaadp32.acm/imaadp32.c b/dlls/imaadp32.acm/imaadp32.c
> index 78a0ac4c6c..7f4c5ea6cc 100644
> --- a/dlls/imaadp32.acm/imaadp32.c
> +++ b/dlls/imaadp32.acm/imaadp32.c
> @@ -154,7 +154,7 @@ static void     init_wfx_ima_adpcm(IMAADPCMWAVEFORMAT* awfx/*, DWORD nba*/)
>      }
>      pwfx->cbSize = sizeof(WORD);
>  
> -    awfx->wSamplesPerBlock = (pwfx->nBlockAlign - (4 * pwfx->nChannels) * 2) / pwfx->nChannels + 1;
> +    awfx->wSamplesPerBlock = (pwfx->nBlockAlign - (4 * pwfx->nChannels)) * (2 / pwfx->nChannels) + 1;
>      pwfx->nAvgBytesPerSec = (pwfx->nSamplesPerSec * pwfx->nBlockAlign) / awfx->wSamplesPerBlock;
>  }
>  
> @@ -631,14 +631,7 @@ static	LRESULT	ADPCM_FormatDetails(PACMFORMATDETAILSW afd, DWORD dwQuery)
>  	    afd->pwfx->nChannels = ADPCM_Formats[afd->dwFormatIndex].nChannels;
>  	    afd->pwfx->nSamplesPerSec = ADPCM_Formats[afd->dwFormatIndex].rate;
>  	    afd->pwfx->wBitsPerSample = ADPCM_Formats[afd->dwFormatIndex].nBits;
> -	    afd->pwfx->nBlockAlign = 1024;
> -	    /* we got 4 bits per sample */
> -	    afd->pwfx->nAvgBytesPerSec =
> -		(afd->pwfx->nSamplesPerSec * 4) / 8;
> -            if (afd->cbwfx >= sizeof(WAVEFORMATEX))
> -                afd->pwfx->cbSize = sizeof(WORD);
> -            if (afd->cbwfx >= sizeof(IMAADPCMWAVEFORMAT))
> -                ((IMAADPCMWAVEFORMAT*)afd->pwfx)->wSamplesPerBlock = (1024 - 4 * afd->pwfx->nChannels) * (2 / afd->pwfx->nChannels) + 1;
> +	    init_wfx_ima_adpcm((IMAADPCMWAVEFORMAT *)afd->pwfx);
>  	    break;
>  	default:
>              WARN("Unsupported tag %08x\n", afd->dwFormatTag);
> -- 
> 2.13.0
> 
> 
> 



More information about the wine-patches mailing list