diff --git a/libavcodec/alsdec.c b/libavcodec/alsdec.c
index f9eea8d5eaaaf3a03aac1acd82e0f84f7b013296..dd3278de5e0a1e6d0d3d13f755aa6e27d23859e0 100644
--- a/libavcodec/alsdec.c
+++ b/libavcodec/alsdec.c
@@ -739,7 +739,7 @@ static int decode_var_block_data(ALSDecContext *ctx, ALSBlockData *bd)
             y = 1 << 19;
 
             for (sb = 0; sb < smp; sb++)
-                y += MUL64(lpc_cof[sb],raw_samples[smp - (sb + 1)]);
+                y += MUL64(lpc_cof[sb], *(raw_samples + smp - (sb + 1)));
 
             raw_samples[smp] -= y >> 20;
             parcor_to_lpc(smp, quant_cof, lpc_cof);
@@ -780,7 +780,7 @@ static int decode_var_block_data(ALSDecContext *ctx, ALSBlockData *bd)
         y = 1 << 19;
 
         for (sb = 0; sb < opt_order; sb++)
-            y += MUL64(bd->lpc_cof[sb],raw_samples[smp - (sb + 1)]);
+            y += MUL64(bd->lpc_cof[sb], *(raw_samples + smp - (sb + 1)));
 
         raw_samples[smp] -= y >> 20;
     }