From bceb9e7ecc3c894ce0755f777546105920dc8c06 Mon Sep 17 00:00:00 2001
From: Martin Vignali <martin.vignali@gmail.com>
Date: Sat, 17 Nov 2018 23:37:00 +0100
Subject: [PATCH 08/13] avcodec/proresdec : make inline func for unpack alpha

---
 libavcodec/proresdec2.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/libavcodec/proresdec2.c b/libavcodec/proresdec2.c
index 94323df128..40d15720ba 100644
--- a/libavcodec/proresdec2.c
+++ b/libavcodec/proresdec2.c
@@ -46,9 +46,8 @@ static void permute(uint8_t *dst, const uint8_t *src, const uint8_t permutation[
         dst[i] = permutation[src[i]];
 }
 
-static void unpack_alpha_10(GetBitContext *gb, uint16_t *dst, int num_coeffs,
-                            const int num_bits)
-{
+static void inline unpack_alpha(GetBitContext *gb, uint16_t *dst, int num_coeffs,
+                                const int num_bits, const int decode_precision) {
     const int mask = (1 << num_bits) - 1;
     int i, idx, val, alpha_val;
 
@@ -86,11 +85,20 @@ static void unpack_alpha_10(GetBitContext *gb, uint16_t *dst, int num_coeffs,
         } else {
             for (i = 0; i < val; i++)
                 dst[idx++] = (alpha_val << 2) | (alpha_val >> 6);
-
         }
     } while (idx < num_coeffs);
 }
 
+static void unpack_alpha_10(GetBitContext *gb, uint16_t *dst, int num_coeffs,
+                            const int num_bits)
+{
+    if (num_bits == 16) {
+        unpack_alpha(gb, dst, num_coeffs, 16, 10);
+    } else { /* 8 bits alpha */
+        unpack_alpha(gb, dst, num_coeffs, 8, 10);
+    }
+}
+
 static av_cold int decode_init(AVCodecContext *avctx)
 {
     int ret = 0;
-- 
2.14.3 (Apple Git-98)

