[vlc-devel] [PATCH] lpcm bd: fix 24 bit stereo decoding
Rafaël Carré
funman at videolan.org
Tue Mar 25 10:02:16 CET 2014
Hello,
On 03/25/14 06:14, Tristan Matthews wrote:
> Fixes #10265
> ---
> modules/codec/lpcm.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/modules/codec/lpcm.c b/modules/codec/lpcm.c
> index eb9793f..24c8555 100644
> --- a/modules/codec/lpcm.c
> +++ b/modules/codec/lpcm.c
> @@ -1117,10 +1117,12 @@ static void BdExtract( block_t *p_aout_buffer, block_t *p_block,
> if (i_bits == 16) {
> swab( p_src, p_dst, (i_channels + i_channels_padding) * i_bits / 8 );
> } else {
> - p_dst[0] = 0;
> - p_dst[1] = p_src[2];
> - p_dst[2] = p_src[1];
> - p_dst[3] = p_src[0];
> + for (unsigned i = 0; i < i_channels; ++i) {
> + p_dst[i * 4] = 0;
> + p_dst[1 + (i * 4)] = p_src[2 + (i * 3)];
> + p_dst[2 + (i * 4)] = p_src[1 + (i * 3)];
> + p_dst[3 + (i * 4)] = p_src[i * 3];
> + }
> }
> #endif
> p_src += (i_channels + i_channels_padding) * i_bits / 8;
>
Looks OK.
More information about the vlc-devel
mailing list