vpx_scale: sync from experimental
authorJohn Koleszar <jkoleszar@google.com>
Fri, 2 Nov 2012 02:14:42 +0000 (19:14 -0700)
committerJohn Koleszar <jkoleszar@google.com>
Fri, 2 Nov 2012 15:46:37 +0000 (08:46 -0700)
Import changes made on the experimental branch in preparation for
merging the two branches.

Change-Id: I7b5b8fb4fca155cb1d72e7ba13eef18e6a94a298

12 files changed:
vpx_scale/arm/neon/yv12extend_arm.c
vpx_scale/generic/bicubic_scaler.c
vpx_scale/generic/gen_scalers.c
vpx_scale/generic/vpxscale.c
vpx_scale/generic/yv12config.c
vpx_scale/generic/yv12extend.c
vpx_scale/include/generic/vpxscale_arbitrary.h
vpx_scale/scale_mode.h
vpx_scale/vpxscale.h
vpx_scale/win32/scaleopt.c
vpx_scale/win32/scalesystemdependent.c
vpx_scale/yv12config.h

index 6f34ce3..eabd495 100644 (file)
@@ -8,15 +8,14 @@
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
-#include "vpx_rtcd.h"
+#include "./vpx_rtcd.h"
 
 extern void vp8_yv12_copy_frame_func_neon(struct yv12_buffer_config *src_ybc,
                                           struct yv12_buffer_config *dst_ybc);
 
 void vp8_yv12_copy_frame_neon(struct yv12_buffer_config *src_ybc,
-                              struct yv12_buffer_config *dst_ybc)
-{
-    vp8_yv12_copy_frame_func_neon(src_ybc, dst_ybc);
+                              struct yv12_buffer_config *dst_ybc) {
+  vp8_yv12_copy_frame_func_neon(src_ybc, dst_ybc);
 
-    vp8_yv12_extend_frame_borders_neon(dst_ybc);
+  vp8_yv12_extend_frame_borders_neon(dst_ybc);
 }
index 4468e9d..c116740 100644 (file)
@@ -46,245 +46,229 @@ static float a = -0.6;
 //         3     2
 // C0 = a*t - a*t
 //
-static short c0_fixed(unsigned int t)
-{
-    // put t in Q16 notation
-    unsigned short v1, v2;
-
-    // Q16
-    v1 = (a_i * t) >> 16;
-    v1 = (v1 * t) >> 16;
-
-    // Q16
-    v2 = (a_i * t) >> 16;
-    v2 = (v2 * t) >> 16;
-    v2 = (v2 * t) >> 16;
-
-    // Q12
-    return -((v1 - v2) >> 4);
+static short c0_fixed(unsigned int t) {
+  // put t in Q16 notation
+  unsigned short v1, v2;
+
+  // Q16
+  v1 = (a_i * t) >> 16;
+  v1 = (v1 * t) >> 16;
+
+  // Q16
+  v2 = (a_i * t) >> 16;
+  v2 = (v2 * t) >> 16;
+  v2 = (v2 * t) >> 16;
+
+  // Q12
+  return -((v1 - v2) >> 4);
 }
 
 //                     2          3
 // C1 = a*t + (3-2*a)*t  - (2-a)*t
 //
-static short c1_fixed(unsigned int t)
-{
-    unsigned short v1, v2, v3;
-    unsigned short two, three;
-
-    // Q16
-    v1 = (a_i * t) >> 16;
-
-    // Q13
-    two = 2 << 13;
-    v2 = two - (a_i >> 3);
-    v2 = (v2 * t) >> 16;
-    v2 = (v2 * t) >> 16;
-    v2 = (v2 * t) >> 16;
-
-    // Q13
-    three = 3 << 13;
-    v3 = three - (2 * (a_i >> 3));
-    v3 = (v3 * t) >> 16;
-    v3 = (v3 * t) >> 16;
-
-    // Q12
-    return (((v1 >> 3) - v2 + v3) >> 1);
+static short c1_fixed(unsigned int t) {
+  unsigned short v1, v2, v3;
+  unsigned short two, three;
+
+  // Q16
+  v1 = (a_i * t) >> 16;
+
+  // Q13
+  two = 2 << 13;
+  v2 = two - (a_i >> 3);
+  v2 = (v2 * t) >> 16;
+  v2 = (v2 * t) >> 16;
+  v2 = (v2 * t) >> 16;
+
+  // Q13
+  three = 3 << 13;
+  v3 = three - (2 * (a_i >> 3));
+  v3 = (v3 * t) >> 16;
+  v3 = (v3 * t) >> 16;
+
+  // Q12
+  return (((v1 >> 3) - v2 + v3) >> 1);
 
 }
 
 //                 2          3
 // C2 = 1 - (3-a)*t  + (2-a)*t
 //
-static short c2_fixed(unsigned int t)
-{
-    unsigned short v1, v2, v3;
-    unsigned short two, three;
-
-    // Q13
-    v1 = 1 << 13;
-
-    // Q13
-    three = 3 << 13;
-    v2 = three - (a_i >> 3);
-    v2 = (v2 * t) >> 16;
-    v2 = (v2 * t) >> 16;
-
-    // Q13
-    two = 2 << 13;
-    v3 = two - (a_i >> 3);
-    v3 = (v3 * t) >> 16;
-    v3 = (v3 * t) >> 16;
-    v3 = (v3 * t) >> 16;
-
-    // Q12
-    return (v1 - v2 + v3) >> 1;
+static short c2_fixed(unsigned int t) {
+  unsigned short v1, v2, v3;
+  unsigned short two, three;
+
+  // Q13
+  v1 = 1 << 13;
+
+  // Q13
+  three = 3 << 13;
+  v2 = three - (a_i >> 3);
+  v2 = (v2 * t) >> 16;
+  v2 = (v2 * t) >> 16;
+
+  // Q13
+  two = 2 << 13;
+  v3 = two - (a_i >> 3);
+  v3 = (v3 * t) >> 16;
+  v3 = (v3 * t) >> 16;
+  v3 = (v3 * t) >> 16;
+
+  // Q12
+  return (v1 - v2 + v3) >> 1;
 }
 
 //                 2      3
 // C3 = a*t - 2*a*t  + a*t
 //
-static short c3_fixed(unsigned int t)
-{
-    int v1, v2, v3;
+static short c3_fixed(unsigned int t) {
+  int v1, v2, v3;
 
-    // Q16
-    v1 = (a_i * t) >> 16;
+  // Q16
+  v1 = (a_i * t) >> 16;
 
-    // Q15
-    v2 = 2 * (a_i >> 1);
-    v2 = (v2 * t) >> 16;
-    v2 = (v2 * t) >> 16;
+  // Q15
+  v2 = 2 * (a_i >> 1);
+  v2 = (v2 * t) >> 16;
+  v2 = (v2 * t) >> 16;
 
-    // Q16
-    v3 = (a_i * t) >> 16;
-    v3 = (v3 * t) >> 16;
-    v3 = (v3 * t) >> 16;
+  // Q16
+  v3 = (a_i * t) >> 16;
+  v3 = (v3 * t) >> 16;
+  v3 = (v3 * t) >> 16;
 
-    // Q12
-    return ((v2 - (v1 >> 1) - (v3 >> 1)) >> 3);
+  // Q12
+  return ((v2 - (v1 >> 1) - (v3 >> 1)) >> 3);
 }
 #else
 //          3     2
 // C0 = -a*t + a*t
 //
-float C0(float t)
-{
-    return -a * t * t * t + a * t * t;
+float C0(float t) {
+  return -a * t * t * t + a * t * t;
 }
 
 //                      2          3
 // C1 = -a*t + (2*a+3)*t  - (a+2)*t
 //
-float C1(float t)
-{
-    return -(a + 2.0f) * t * t * t + (2.0f * a + 3.0f) * t * t - a * t;
+float C1(float t) {
+  return -(a + 2.0f) * t * t * t + (2.0f * a + 3.0f) * t * t - a * t;
 }
 
 //                 2          3
 // C2 = 1 - (a+3)*t  + (a+2)*t
 //
-float C2(float t)
-{
-    return (a + 2.0f) * t * t * t - (a + 3.0f) * t * t + 1.0f;
+float C2(float t) {
+  return (a + 2.0f) * t * t * t - (a + 3.0f) * t * t + 1.0f;
 }
 
 //                 2      3
 // C3 = a*t - 2*a*t  + a*t
 //
-float C3(float t)
-{
-    return a * t * t * t - 2.0f * a * t * t + a * t;
+float C3(float t) {
+  return a * t * t * t - 2.0f * a * t * t + a * t;
 }
 #endif
 
 #if 0
-int compare_real_fixed()
-{
-    int i, errors = 0;
-    float mult = 1.0 / 10000.0;
-    unsigned int fixed_mult = mult * 4294967296;//65536;
-    unsigned int phase_offset_int;
-    float phase_offset_real;
-
-    for (i = 0; i < 10000; i++)
-    {
-        int fixed0, fixed1, fixed2, fixed3, fixed_total;
-        int real0, real1, real2, real3, real_total;
-
-        phase_offset_real = (float)i * mult;
-        phase_offset_int = (fixed_mult * i) >> 16;
+int compare_real_fixed() {
+  int i, errors = 0;
+  float mult = 1.0 / 10000.0;
+  unsigned int fixed_mult = mult * 4294967296;// 65536;
+  unsigned int phase_offset_int;
+  float phase_offset_real;
+
+  for (i = 0; i < 10000; i++) {
+    int fixed0, fixed1, fixed2, fixed3, fixed_total;
+    int real0, real1, real2, real3, real_total;
+
+    phase_offset_real = (float)i * mult;
+    phase_offset_int = (fixed_mult * i) >> 16;
 //      phase_offset_int = phase_offset_real * 65536;
 
-        fixed0 = c0_fixed(phase_offset_int);
-        real0 = C0(phase_offset_real) * 4096.0;
+    fixed0 = c0_fixed(phase_offset_int);
+    real0 = C0(phase_offset_real) * 4096.0;
 
-        if ((abs(fixed0) > (abs(real0) + 1)) || (abs(fixed0) < (abs(real0) - 1)))
-            errors++;
+    if ((abs(fixed0) > (abs(real0) + 1)) || (abs(fixed0) < (abs(real0) - 1)))
+      errors++;
 
-        fixed1 = c1_fixed(phase_offset_int);
-        real1 = C1(phase_offset_real) * 4096.0;
+    fixed1 = c1_fixed(phase_offset_int);
+    real1 = C1(phase_offset_real) * 4096.0;
 
-        if ((abs(fixed1) > (abs(real1) + 1)) || (abs(fixed1) < (abs(real1) - 1)))
-            errors++;
+    if ((abs(fixed1) > (abs(real1) + 1)) || (abs(fixed1) < (abs(real1) - 1)))
+      errors++;
 
-        fixed2 = c2_fixed(phase_offset_int);
-        real2 = C2(phase_offset_real) * 4096.0;
+    fixed2 = c2_fixed(phase_offset_int);
+    real2 = C2(phase_offset_real) * 4096.0;
 
-        if ((abs(fixed2) > (abs(real2) + 1)) || (abs(fixed2) < (abs(real2) - 1)))
-            errors++;
+    if ((abs(fixed2) > (abs(real2) + 1)) || (abs(fixed2) < (abs(real2) - 1)))
+      errors++;
 
-        fixed3 = c3_fixed(phase_offset_int);
-        real3 = C3(phase_offset_real) * 4096.0;
+    fixed3 = c3_fixed(phase_offset_int);
+    real3 = C3(phase_offset_real) * 4096.0;
 
-        if ((abs(fixed3) > (abs(real3) + 1)) || (abs(fixed3) < (abs(real3) - 1)))
-            errors++;
+    if ((abs(fixed3) > (abs(real3) + 1)) || (abs(fixed3) < (abs(real3) - 1)))
+      errors++;
 
-        fixed_total = fixed0 + fixed1 + fixed2 + fixed3;
-        real_total = real0 + real1 + real2 + real3;
+    fixed_total = fixed0 + fixed1 + fixed2 + fixed3;
+    real_total = real0 + real1 + real2 + real3;
 
-        if ((fixed_total > 4097) || (fixed_total < 4094))
-            errors ++;
+    if ((fixed_total > 4097) || (fixed_total < 4094))
+      errors++;
 
-        if ((real_total > 4097) || (real_total < 4095))
-            errors ++;
-    }
+    if ((real_total > 4097) || (real_total < 4095))
+      errors++;
+  }
 
-    return errors;
+  return errors;
 }
 #endif
 
 // Find greatest common denominator between two integers.  Method used here is
 //  slow compared to Euclid's algorithm, but does not require any division.
-int gcd(int a, int b)
-{
-    // Problem with this algorithm is that if a or b = 0 this function
-    //  will never exit.  Don't want to return 0 because any computation
-    //  that was based on a common denoninator and tried to reduce by
-    //  dividing by 0 would fail.  Best solution that could be thought of
-    //  would to be fail by returing a 1;
-    if (a <= 0 || b <= 0)
-        return 1;
-
-    while (a != b)
-    {
-        if (b > a)
-            b = b - a;
-        else
-        {
-            int tmp = a;//swap large and
-            a = b; //small
-            b = tmp;
-        }
+int gcd(int a, int b) {
+  // Problem with this algorithm is that if a or b = 0 this function
+  //  will never exit.  Don't want to return 0 because any computation
+  //  that was based on a common denoninator and tried to reduce by
+  //  dividing by 0 would fail.  Best solution that could be thought of
+  //  would to be fail by returing a 1;
+  if (a <= 0 || b <= 0)
+    return 1;
+
+  while (a != b) {
+    if (b > a)
+      b = b - a;
+    else {
+      int tmp = a;// swap large and
+      a = b; // small
+      b = tmp;
     }
+  }
 
-    return b;
+  return b;
 }
 
-void bicubic_coefficient_init()
-{
-    vpx_memset(&g_b_scaler, 0, sizeof(BICUBIC_SCALER_STRUCT));
-    g_first_time = 0;
+void bicubic_coefficient_init() {
+  vpx_memset(&g_b_scaler, 0, sizeof(BICUBIC_SCALER_STRUCT));
+  g_first_time = 0;
 }
 
-void bicubic_coefficient_destroy()
-{
-    if (!g_first_time)
-    {
-        vpx_free(g_b_scaler.l_w);
+void bicubic_coefficient_destroy() {
+  if (!g_first_time) {
+    vpx_free(g_b_scaler.l_w);
 
-        vpx_free(g_b_scaler.l_h);
+    vpx_free(g_b_scaler.l_h);
 
-        vpx_free(g_b_scaler.l_h_uv);
+    vpx_free(g_b_scaler.l_h_uv);
 
-        vpx_free(g_b_scaler.c_w);
+    vpx_free(g_b_scaler.c_w);
 
-        vpx_free(g_b_scaler.c_h);
+    vpx_free(g_b_scaler.c_h);
 
-        vpx_free(g_b_scaler.c_h_uv);
+    vpx_free(g_b_scaler.c_h_uv);
 
-        vpx_memset(&g_b_scaler, 0, sizeof(BICUBIC_SCALER_STRUCT));
-    }
+    vpx_memset(&g_b_scaler, 0, sizeof(BICUBIC_SCALER_STRUCT));
+  }
 }
 
 // Create the coeffients that will be used for the cubic interpolation.
@@ -292,311 +276,294 @@ void bicubic_coefficient_destroy()
 //  regimes the phase offsets will be different.  There are 4 coefficents
 //  for each point, two on each side.  The layout is that there are the
 //  4 coefficents for each phase in the array and then the next phase.
-int bicubic_coefficient_setup(int in_width, int in_height, int out_width, int out_height)
-{
-    int i;
+int bicubic_coefficient_setup(int in_width, int in_height, int out_width, int out_height) {
+  int i;
 #ifdef FIXED_POINT
-    int phase_offset_int;
-    unsigned int fixed_mult;
-    int product_val = 0;
+  int phase_offset_int;
+  unsigned int fixed_mult;
+  int product_val = 0;
 #else
-    float phase_offset;
+  float phase_offset;
 #endif
-    int gcd_w, gcd_h, gcd_h_uv, d_w, d_h, d_h_uv;
+  int gcd_w, gcd_h, gcd_h_uv, d_w, d_h, d_h_uv;
 
-    if (g_first_time)
-        bicubic_coefficient_init();
+  if (g_first_time)
+    bicubic_coefficient_init();
 
 
-    // check to see if the coefficents have already been set up correctly
-    if ((in_width == g_b_scaler.in_width) && (in_height == g_b_scaler.in_height)
-        && (out_width == g_b_scaler.out_width) && (out_height == g_b_scaler.out_height))
-        return 0;
+  // check to see if the coefficents have already been set up correctly
+  if ((in_width == g_b_scaler.in_width) && (in_height == g_b_scaler.in_height)
+      && (out_width == g_b_scaler.out_width) && (out_height == g_b_scaler.out_height))
+    return 0;
 
-    g_b_scaler.in_width = in_width;
-    g_b_scaler.in_height = in_height;
-    g_b_scaler.out_width = out_width;
-    g_b_scaler.out_height = out_height;
+  g_b_scaler.in_width = in_width;
+  g_b_scaler.in_height = in_height;
+  g_b_scaler.out_width = out_width;
+  g_b_scaler.out_height = out_height;
 
-    // Don't want to allow crazy scaling, just try and prevent a catastrophic
-    //  failure here.  Want to fail after setting the member functions so if
-    //  if the scaler is called the member functions will not scale.
-    if (out_width <= 0 || out_height <= 0)
-        return -1;
+  // Don't want to allow crazy scaling, just try and prevent a catastrophic
+  //  failure here.  Want to fail after setting the member functions so if
+  //  if the scaler is called the member functions will not scale.
+  if (out_width <= 0 || out_height <= 0)
+    return -1;
 
-    // reduce in/out width and height ratios using the gcd
-    gcd_w = gcd(out_width, in_width);
-    gcd_h = gcd(out_height, in_height);
-    gcd_h_uv = gcd(out_height, in_height / 2);
+  // reduce in/out width and height ratios using the gcd
+  gcd_w = gcd(out_width, in_width);
+  gcd_h = gcd(out_height, in_height);
+  gcd_h_uv = gcd(out_height, in_height / 2);
 
-    // the numerator width and height are to be saved in
-    //  globals so they can be used during the scaling process
-    //  without having to be recalculated.
-    g_b_scaler.nw = out_width / gcd_w;
-    d_w = in_width / gcd_w;
+  // the numerator width and height are to be saved in
+  //  globals so they can be used during the scaling process
+  //  without having to be recalculated.
+  g_b_scaler.nw = out_width / gcd_w;
+  d_w = in_width / gcd_w;
 
-    g_b_scaler.nh = out_height / gcd_h;
-    d_h = in_height / gcd_h;
+  g_b_scaler.nh = out_height / gcd_h;
+  d_h = in_height / gcd_h;
 
-    g_b_scaler.nh_uv = out_height / gcd_h_uv;
-    d_h_uv = (in_height / 2) / gcd_h_uv;
+  g_b_scaler.nh_uv = out_height / gcd_h_uv;
+  d_h_uv = (in_height / 2) / gcd_h_uv;
 
-    // allocate memory for the coefficents
-    vpx_free(g_b_scaler.l_w);
+  // allocate memory for the coefficents
+  vpx_free(g_b_scaler.l_w);
 
-    vpx_free(g_b_scaler.l_h);
+  vpx_free(g_b_scaler.l_h);
 
-    vpx_free(g_b_scaler.l_h_uv);
+  vpx_free(g_b_scaler.l_h_uv);
 
-    g_b_scaler.l_w = (short *)vpx_memalign(32, out_width * 2);
-    g_b_scaler.l_h = (short *)vpx_memalign(32, out_height * 2);
-    g_b_scaler.l_h_uv = (short *)vpx_memalign(32, out_height * 2);
+  g_b_scaler.l_w = (short *)vpx_memalign(32, out_width * 2);
+  g_b_scaler.l_h = (short *)vpx_memalign(32, out_height * 2);
+  g_b_scaler.l_h_uv = (short *)vpx_memalign(32, out_height * 2);
 
-    vpx_free(g_b_scaler.c_w);
+  vpx_free(g_b_scaler.c_w);
 
-    vpx_free(g_b_scaler.c_h);
+  vpx_free(g_b_scaler.c_h);
 
-    vpx_free(g_b_scaler.c_h_uv);
+  vpx_free(g_b_scaler.c_h_uv);
 
-    g_b_scaler.c_w = (short *)vpx_memalign(32, g_b_scaler.nw * 4 * 2);
-    g_b_scaler.c_h = (short *)vpx_memalign(32, g_b_scaler.nh * 4 * 2);
-    g_b_scaler.c_h_uv = (short *)vpx_memalign(32, g_b_scaler.nh_uv * 4 * 2);
+  g_b_scaler.c_w = (short *)vpx_memalign(32, g_b_scaler.nw * 4 * 2);
+  g_b_scaler.c_h = (short *)vpx_memalign(32, g_b_scaler.nh * 4 * 2);
+  g_b_scaler.c_h_uv = (short *)vpx_memalign(32, g_b_scaler.nh_uv * 4 * 2);
 
-    g_b_scaler.hbuf = g_hbuf;
-    g_b_scaler.hbuf_uv = g_hbuf_uv;
+  g_b_scaler.hbuf = g_hbuf;
+  g_b_scaler.hbuf_uv = g_hbuf_uv;
 
-    // Set up polyphase filter taps.  This needs to be done before
-    //  the scaling because of the floating point math required.  The
-    //  coefficients are multiplied by 2^12 so that fixed point math
-    //  can be used in the main scaling loop.
+  // Set up polyphase filter taps.  This needs to be done before
+  //  the scaling because of the floating point math required.  The
+  //  coefficients are multiplied by 2^12 so that fixed point math
+  //  can be used in the main scaling loop.
 #ifdef FIXED_POINT
-    fixed_mult = (1.0 / (float)g_b_scaler.nw) * 4294967296;
+  fixed_mult = (1.0 / (float)g_b_scaler.nw) * 4294967296;
 
-    product_val = 0;
+  product_val = 0;
 
-    for (i = 0; i < g_b_scaler.nw; i++)
-    {
-        if (product_val > g_b_scaler.nw)
-            product_val -= g_b_scaler.nw;
+  for (i = 0; i < g_b_scaler.nw; i++) {
+    if (product_val > g_b_scaler.nw)
+      product_val -= g_b_scaler.nw;
 
-        phase_offset_int = (fixed_mult * product_val) >> 16;
+    phase_offset_int = (fixed_mult * product_val) >> 16;
 
-        g_b_scaler.c_w[i*4]   = c3_fixed(phase_offset_int);
-        g_b_scaler.c_w[i*4+1] = c2_fixed(phase_offset_int);
-        g_b_scaler.c_w[i*4+2] = c1_fixed(phase_offset_int);
-        g_b_scaler.c_w[i*4+3] = c0_fixed(phase_offset_int);
+    g_b_scaler.c_w[i * 4]   = c3_fixed(phase_offset_int);
+    g_b_scaler.c_w[i * 4 + 1] = c2_fixed(phase_offset_int);
+    g_b_scaler.c_w[i * 4 + 2] = c1_fixed(phase_offset_int);
+    g_b_scaler.c_w[i * 4 + 3] = c0_fixed(phase_offset_int);
 
-        product_val += d_w;
-    }
+    product_val += d_w;
+  }
 
 
-    fixed_mult = (1.0 / (float)g_b_scaler.nh) * 4294967296;
+  fixed_mult = (1.0 / (float)g_b_scaler.nh) * 4294967296;
 
-    product_val = 0;
+  product_val = 0;
 
-    for (i = 0; i < g_b_scaler.nh; i++)
-    {
-        if (product_val > g_b_scaler.nh)
-            product_val -= g_b_scaler.nh;
+  for (i = 0; i < g_b_scaler.nh; i++) {
+    if (product_val > g_b_scaler.nh)
+      product_val -= g_b_scaler.nh;
 
-        phase_offset_int = (fixed_mult * product_val) >> 16;
+    phase_offset_int = (fixed_mult * product_val) >> 16;
 
-        g_b_scaler.c_h[i*4]   = c0_fixed(phase_offset_int);
-        g_b_scaler.c_h[i*4+1] = c1_fixed(phase_offset_int);
-        g_b_scaler.c_h[i*4+2] = c2_fixed(phase_offset_int);
-        g_b_scaler.c_h[i*4+3] = c3_fixed(phase_offset_int);
+    g_b_scaler.c_h[i * 4]   = c0_fixed(phase_offset_int);
+    g_b_scaler.c_h[i * 4 + 1] = c1_fixed(phase_offset_int);
+    g_b_scaler.c_h[i * 4 + 2] = c2_fixed(phase_offset_int);
+    g_b_scaler.c_h[i * 4 + 3] = c3_fixed(phase_offset_int);
 
-        product_val += d_h;
-    }
+    product_val += d_h;
+  }
 
-    fixed_mult = (1.0 / (float)g_b_scaler.nh_uv) * 4294967296;
+  fixed_mult = (1.0 / (float)g_b_scaler.nh_uv) * 4294967296;
 
-    product_val = 0;
+  product_val = 0;
 
-    for (i = 0; i < g_b_scaler.nh_uv; i++)
-    {
-        if (product_val > g_b_scaler.nh_uv)
-            product_val -= g_b_scaler.nh_uv;
+  for (i = 0; i < g_b_scaler.nh_uv; i++) {
+    if (product_val > g_b_scaler.nh_uv)
+      product_val -= g_b_scaler.nh_uv;
 
-        phase_offset_int = (fixed_mult * product_val) >> 16;
+    phase_offset_int = (fixed_mult * product_val) >> 16;
 
-        g_b_scaler.c_h_uv[i*4]   = c0_fixed(phase_offset_int);
-        g_b_scaler.c_h_uv[i*4+1] = c1_fixed(phase_offset_int);
-        g_b_scaler.c_h_uv[i*4+2] = c2_fixed(phase_offset_int);
-        g_b_scaler.c_h_uv[i*4+3] = c3_fixed(phase_offset_int);
+    g_b_scaler.c_h_uv[i * 4]   = c0_fixed(phase_offset_int);
+    g_b_scaler.c_h_uv[i * 4 + 1] = c1_fixed(phase_offset_int);
+    g_b_scaler.c_h_uv[i * 4 + 2] = c2_fixed(phase_offset_int);
+    g_b_scaler.c_h_uv[i * 4 + 3] = c3_fixed(phase_offset_int);
 
-        product_val += d_h_uv;
-    }
+    product_val += d_h_uv;
+  }
 
 #else
 
-    for (i = 0; i < g_nw; i++)
-    {
-        phase_offset = (float)((i * d_w) % g_nw) / (float)g_nw;
-        g_c_w[i*4]   = (C3(phase_offset) * 4096.0);
-        g_c_w[i*4+1] = (C2(phase_offset) * 4096.0);
-        g_c_w[i*4+2] = (C1(phase_offset) * 4096.0);
-        g_c_w[i*4+3] = (C0(phase_offset) * 4096.0);
-    }
-
-    for (i = 0; i < g_nh; i++)
-    {
-        phase_offset = (float)((i * d_h) % g_nh) / (float)g_nh;
-        g_c_h[i*4]   = (C0(phase_offset) * 4096.0);
-        g_c_h[i*4+1] = (C1(phase_offset) * 4096.0);
-        g_c_h[i*4+2] = (C2(phase_offset) * 4096.0);
-        g_c_h[i*4+3] = (C3(phase_offset) * 4096.0);
-    }
-
-    for (i = 0; i < g_nh_uv; i++)
-    {
-        phase_offset = (float)((i * d_h_uv) % g_nh_uv) / (float)g_nh_uv;
-        g_c_h_uv[i*4]   = (C0(phase_offset) * 4096.0);
-        g_c_h_uv[i*4+1] = (C1(phase_offset) * 4096.0);
-        g_c_h_uv[i*4+2] = (C2(phase_offset) * 4096.0);
-        g_c_h_uv[i*4+3] = (C3(phase_offset) * 4096.0);
-    }
+  for (i = 0; i < g_nw; i++) {
+    phase_offset = (float)((i * d_w) % g_nw) / (float)g_nw;
+    g_c_w[i * 4]   = (C3(phase_offset) * 4096.0);
+    g_c_w[i * 4 + 1] = (C2(phase_offset) * 4096.0);
+    g_c_w[i * 4 + 2] = (C1(phase_offset) * 4096.0);
+    g_c_w[i * 4 + 3] = (C0(phase_offset) * 4096.0);
+  }
+
+  for (i = 0; i < g_nh; i++) {
+    phase_offset = (float)((i * d_h) % g_nh) / (float)g_nh;
+    g_c_h[i * 4]   = (C0(phase_offset) * 4096.0);
+    g_c_h[i * 4 + 1] = (C1(phase_offset) * 4096.0);
+    g_c_h[i * 4 + 2] = (C2(phase_offset) * 4096.0);
+    g_c_h[i * 4 + 3] = (C3(phase_offset) * 4096.0);
+  }
+
+  for (i = 0; i < g_nh_uv; i++) {
+    phase_offset = (float)((i * d_h_uv) % g_nh_uv) / (float)g_nh_uv;
+    g_c_h_uv[i * 4]   = (C0(phase_offset) * 4096.0);
+    g_c_h_uv[i * 4 + 1] = (C1(phase_offset) * 4096.0);
+    g_c_h_uv[i * 4 + 2] = (C2(phase_offset) * 4096.0);
+    g_c_h_uv[i * 4 + 3] = (C3(phase_offset) * 4096.0);
+  }
 
 #endif
 
-    // Create an array that corresponds input lines to output lines.
-    //  This doesn't require floating point math, but it does require
-    //  a division and because hardware division is not present that
-    //  is a call.
-    for (i = 0; i < out_width; i++)
-    {
-        g_b_scaler.l_w[i] = (i * d_w) / g_b_scaler.nw;
+  // Create an array that corresponds input lines to output lines.
+  //  This doesn't require floating point math, but it does require
+  //  a division and because hardware division is not present that
+  //  is a call.
+  for (i = 0; i < out_width; i++) {
+    g_b_scaler.l_w[i] = (i * d_w) / g_b_scaler.nw;
 
-        if ((g_b_scaler.l_w[i] + 2) <= in_width)
-            g_b_scaler.max_usable_out_width = i;
+    if ((g_b_scaler.l_w[i] + 2) <= in_width)
+      g_b_scaler.max_usable_out_width = i;
 
-    }
+  }
 
-    for (i = 0; i < out_height + 1; i++)
-    {
-        g_b_scaler.l_h[i] = (i * d_h) / g_b_scaler.nh;
-        g_b_scaler.l_h_uv[i] = (i * d_h_uv) / g_b_scaler.nh_uv;
-    }
+  for (i = 0; i < out_height + 1; i++) {
+    g_b_scaler.l_h[i] = (i * d_h) / g_b_scaler.nh;
+    g_b_scaler.l_h_uv[i] = (i * d_h_uv) / g_b_scaler.nh_uv;
+  }
 
-    return 0;
+  return 0;
 }
 
 int bicubic_scale(int in_width, int in_height, int in_stride,
                   int out_width, int out_height, int out_stride,
-                  unsigned char *input_image, unsigned char *output_image)
-{
-    short *RESTRICT l_w, * RESTRICT l_h;
-    short *RESTRICT c_w, * RESTRICT c_h;
-    unsigned char *RESTRICT ip, * RESTRICT op;
-    unsigned char *RESTRICT hbuf;
-    int h, w, lw, lh;
-    int temp_sum;
-    int phase_offset_w, phase_offset_h;
-
-    c_w = g_b_scaler.c_w;
-    c_h = g_b_scaler.c_h;
-
-    op = output_image;
-
-    l_w = g_b_scaler.l_w;
-    l_h = g_b_scaler.l_h;
-
-    phase_offset_h = 0;
-
-    for (h = 0; h < out_height; h++)
-    {
-        // select the row to work on
-        lh = l_h[h];
-        ip = input_image + (in_stride * lh);
-
-        // vp8_filter the row vertically into an temporary buffer.
-        //  If the phase offset == 0 then all the multiplication
-        //  is going to result in the output equalling the input.
-        //  So instead point the temporary buffer to the input.
-        //  Also handle the boundry condition of not being able to
-        //  filter that last lines.
-        if (phase_offset_h && (lh < in_height - 2))
-        {
-            hbuf = g_b_scaler.hbuf;
-
-            for (w = 0; w < in_width; w++)
-            {
-                temp_sum =  c_h[phase_offset_h*4+3] * ip[w - in_stride];
-                temp_sum += c_h[phase_offset_h*4+2] * ip[w];
-                temp_sum += c_h[phase_offset_h*4+1] * ip[w + in_stride];
-                temp_sum += c_h[phase_offset_h*4]   * ip[w + 2*in_stride];
-
-                hbuf[w] = temp_sum >> 12;
-            }
-        }
-        else
-            hbuf = ip;
-
-        // increase the phase offset for the next time around.
-        if (++phase_offset_h >= g_b_scaler.nh)
-            phase_offset_h = 0;
-
-        // now filter and expand it horizontally into the final
-        //  output buffer
+                  unsigned char *input_image, unsigned char *output_image) {
+  short *RESTRICT l_w, * RESTRICT l_h;
+  short *RESTRICT c_w, * RESTRICT c_h;
+  unsigned char *RESTRICT ip, * RESTRICT op;
+  unsigned char *RESTRICT hbuf;
+  int h, w, lw, lh;
+  int temp_sum;
+  int phase_offset_w, phase_offset_h;
+
+  c_w = g_b_scaler.c_w;
+  c_h = g_b_scaler.c_h;
+
+  op = output_image;
+
+  l_w = g_b_scaler.l_w;
+  l_h = g_b_scaler.l_h;
+
+  phase_offset_h = 0;
+
+  for (h = 0; h < out_height; h++) {
+    // select the row to work on
+    lh = l_h[h];
+    ip = input_image + (in_stride * lh);
+
+    // vp8_filter the row vertically into an temporary buffer.
+    //  If the phase offset == 0 then all the multiplication
+    //  is going to result in the output equalling the input.
+    //  So instead point the temporary buffer to the input.
+    //  Also handle the boundry condition of not being able to
+    //  filter that last lines.
+    if (phase_offset_h && (lh < in_height - 2)) {
+      hbuf = g_b_scaler.hbuf;
+
+      for (w = 0; w < in_width; w++) {
+        temp_sum =  c_h[phase_offset_h * 4 + 3] * ip[w - in_stride];
+        temp_sum += c_h[phase_offset_h * 4 + 2] * ip[w];
+        temp_sum += c_h[phase_offset_h * 4 + 1] * ip[w + in_stride];
+        temp_sum += c_h[phase_offset_h * 4]   * ip[w + 2 * in_stride];
+
+        hbuf[w] = temp_sum >> 12;
+      }
+    } else
+      hbuf = ip;
+
+    // increase the phase offset for the next time around.
+    if (++phase_offset_h >= g_b_scaler.nh)
+      phase_offset_h = 0;
+
+    // now filter and expand it horizontally into the final
+    //  output buffer
+    phase_offset_w = 0;
+
+    for (w = 0; w < out_width; w++) {
+      // get the index to use to expand the image
+      lw = l_w[w];
+
+      temp_sum =  c_w[phase_offset_w * 4]   * hbuf[lw - 1];
+      temp_sum += c_w[phase_offset_w * 4 + 1] * hbuf[lw];
+      temp_sum += c_w[phase_offset_w * 4 + 2] * hbuf[lw + 1];
+      temp_sum += c_w[phase_offset_w * 4 + 3] * hbuf[lw + 2];
+      temp_sum = temp_sum >> 12;
+
+      if (++phase_offset_w >= g_b_scaler.nw)
         phase_offset_w = 0;
 
-        for (w = 0; w < out_width; w++)
-        {
-            // get the index to use to expand the image
-            lw = l_w[w];
-
-            temp_sum =  c_w[phase_offset_w*4]   * hbuf[lw - 1];
-            temp_sum += c_w[phase_offset_w*4+1] * hbuf[lw];
-            temp_sum += c_w[phase_offset_w*4+2] * hbuf[lw + 1];
-            temp_sum += c_w[phase_offset_w*4+3] * hbuf[lw + 2];
-            temp_sum = temp_sum >> 12;
+      // boundry conditions
+      if ((lw + 2) >= in_width)
+        temp_sum = hbuf[lw];
 
-            if (++phase_offset_w >= g_b_scaler.nw)
-                phase_offset_w = 0;
+      if (lw == 0)
+        temp_sum = hbuf[0];
 
-            // boundry conditions
-            if ((lw + 2) >= in_width)
-                temp_sum = hbuf[lw];
-
-            if (lw == 0)
-                temp_sum = hbuf[0];
-
-            op[w] = temp_sum;
-        }
-
-        op += out_stride;
+      op[w] = temp_sum;
     }
 
-    return 0;
+    op += out_stride;
+  }
+
+  return 0;
 }
 
-void bicubic_scale_frame_reset()
-{
-    g_b_scaler.out_width = 0;
-    g_b_scaler.out_height = 0;
+void bicubic_scale_frame_reset() {
+  g_b_scaler.out_width = 0;
+  g_b_scaler.out_height = 0;
 }
 
 void bicubic_scale_frame(YV12_BUFFER_CONFIG *src, YV12_BUFFER_CONFIG *dst,
-                         int new_width, int new_height)
-{
+                         int new_width, int new_height) {
 
-    dst->y_width = new_width;
-    dst->y_height = new_height;
-    dst->uv_width = new_width / 2;
-    dst->uv_height = new_height / 2;
+  dst->y_width = new_width;
+  dst->y_height = new_height;
+  dst->uv_width = new_width / 2;
+  dst->uv_height = new_height / 2;
 
-    dst->y_stride = dst->y_width;
-    dst->uv_stride = dst->uv_width;
+  dst->y_stride = dst->y_width;
+  dst->uv_stride = dst->uv_width;
 
-    bicubic_scale(src->y_width, src->y_height, src->y_stride,
-                  new_width, new_height, dst->y_stride,
-                  src->y_buffer, dst->y_buffer);
+  bicubic_scale(src->y_width, src->y_height, src->y_stride,
+                new_width, new_height, dst->y_stride,
+                src->y_buffer, dst->y_buffer);
 
-    bicubic_scale(src->uv_width, src->uv_height, src->uv_stride,
-                  new_width / 2, new_height / 2, dst->uv_stride,
-                  src->u_buffer, dst->u_buffer);
+  bicubic_scale(src->uv_width, src->uv_height, src->uv_stride,
+                new_width / 2, new_height / 2, dst->uv_stride,
+                src->u_buffer, dst->u_buffer);
 
-    bicubic_scale(src->uv_width, src->uv_height, src->uv_stride,
-                  new_width / 2, new_height / 2, dst->uv_stride,
-                  src->v_buffer, dst->v_buffer);
+  bicubic_scale(src->uv_width, src->uv_height, src->uv_stride,
+                new_width / 2, new_height / 2, dst->uv_stride,
+                src->v_buffer, dst->v_buffer);
 }
index 9beb162..60c21fb 100644 (file)
  *  SPECIAL NOTES : None.
  *
  ****************************************************************************/
-void vp8_horizontal_line_4_5_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width - 4; i += 4)
-    {
-        a = src[0];
-        b = src[1];
-        des [0] = (unsigned char) a;
-        des [1] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
-        c = src[2] * 154;
-        a = src[3];
-        des [2] = (unsigned char)((b * 102 + c + 128) >> 8);
-        des [3] = (unsigned char)((c + 102 * a + 128) >> 8);
-        b = src[4];
-        des [4] = (unsigned char)((a * 205 + 51 * b + 128) >> 8);
-
-        src += 4;
-        des += 5;
-    }
-
+void vp8_horizontal_line_4_5_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width - 4; i += 4) {
     a = src[0];
     b = src[1];
-    des [0] = (unsigned char)(a);
+    des [0] = (unsigned char) a;
     des [1] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
     c = src[2] * 154;
     a = src[3];
     des [2] = (unsigned char)((b * 102 + c + 128) >> 8);
     des [3] = (unsigned char)((c + 102 * a + 128) >> 8);
-    des [4] = (unsigned char)(a);
+    b = src[4];
+    des [4] = (unsigned char)((a * 205 + 51 * b + 128) >> 8);
+
+    src += 4;
+    des += 5;
+  }
+
+  a = src[0];
+  b = src[1];
+  des [0] = (unsigned char)(a);
+  des [1] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
+  c = src[2] * 154;
+  a = src[3];
+  des [2] = (unsigned char)((b * 102 + c + 128) >> 8);
+  des [3] = (unsigned char)((c + 102 * a + 128) >> 8);
+  des [4] = (unsigned char)(a);
 
 }
 
@@ -97,31 +92,31 @@ void vp8_horizontal_line_4_5_scale_c
  *                  the current band.
  *
  ****************************************************************************/
-void vp8_vertical_band_4_5_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c, d;
-    unsigned char *des = dest;
+void vp8_vertical_band_4_5_scale_c(unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c, d;
+  unsigned char *des = dest;
 
-    for (i = 0; i < dest_width; i++)
-    {
-        a = des [0];
-        b = des [dest_pitch];
+  for (i = 0; i < dest_width; i++) {
+    a = des [0];
+    b = des [dest_pitch];
 
-        des[dest_pitch] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
+    des[dest_pitch] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
 
-        c = des[dest_pitch*2] * 154;
-        d = des[dest_pitch*3];
+    c = des[dest_pitch * 2] * 154;
+    d = des[dest_pitch * 3];
 
-        des [dest_pitch*2] = (unsigned char)((b * 102 + c + 128) >> 8);
-        des [dest_pitch*3] = (unsigned char)((c + 102 * d + 128) >> 8);
+    des [dest_pitch * 2] = (unsigned char)((b * 102 + c + 128) >> 8);
+    des [dest_pitch * 3] = (unsigned char)((c + 102 * d + 128) >> 8);
 
-        /* First line in next band */
-        a = des [dest_pitch * 5];
-        des [dest_pitch * 4] = (unsigned char)((d * 205 + 51 * a + 128) >> 8);
+    /* First line in next band */
+    a = des [dest_pitch * 5];
+    des [dest_pitch * 4] = (unsigned char)((d * 205 + 51 * a + 128) >> 8);
 
-        des ++;
-    }
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -144,30 +139,30 @@ void vp8_vertical_band_4_5_scale_c(unsigned char *dest, unsigned int dest_pitch,
  *                  last band.
  *
  ****************************************************************************/
-void vp8_last_vertical_band_4_5_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c, d;
-    unsigned char *des = dest;
+void vp8_last_vertical_band_4_5_scale_c(unsigned char *dest,
+                                        unsigned int dest_pitch,
+                                        unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c, d;
+  unsigned char *des = dest;
 
-    for (i = 0; i < dest_width; ++i)
-    {
-        a = des[0];
-        b = des[dest_pitch];
+  for (i = 0; i < dest_width; ++i) {
+    a = des[0];
+    b = des[dest_pitch];
 
-        des[dest_pitch] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
+    des[dest_pitch] = (unsigned char)((a * 51 + 205 * b + 128) >> 8);
 
-        c = des[dest_pitch*2] * 154;
-        d = des[dest_pitch*3];
+    c = des[dest_pitch * 2] * 154;
+    d = des[dest_pitch * 3];
 
-        des [dest_pitch*2] = (unsigned char)((b * 102 + c + 128) >> 8);
-        des [dest_pitch*3] = (unsigned char)((c + 102 * d + 128) >> 8);
+    des [dest_pitch * 2] = (unsigned char)((b * 102 + c + 128) >> 8);
+    des [dest_pitch * 3] = (unsigned char)((c + 102 * d + 128) >> 8);
 
-        /* No other line for interplation of this line, so .. */
-        des[dest_pitch*4] = (unsigned char) d;
+    /* No other line for interplation of this line, so .. */
+    des[dest_pitch * 4] = (unsigned char) d;
 
-        des++;
-    }
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -190,40 +185,35 @@ void vp8_last_vertical_band_4_5_scale_c(unsigned char *dest, unsigned int dest_p
  *
  *
  ****************************************************************************/
-void vp8_horizontal_line_2_3_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width - 2; i += 2)
-    {
-        a = src[0];
-        b = src[1];
-        c = src[2];
-
-        des [0] = (unsigned char)(a);
-        des [1] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
-        des [2] = (unsigned char)((b * 171 + 85 * c + 128) >> 8);
-
-        src += 2;
-        des += 3;
-    }
-
+void vp8_horizontal_line_2_3_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width - 2; i += 2) {
     a = src[0];
     b = src[1];
+    c = src[2];
+
     des [0] = (unsigned char)(a);
     des [1] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
-    des [2] = (unsigned char)(b);
+    des [2] = (unsigned char)((b * 171 + 85 * c + 128) >> 8);
+
+    src += 2;
+    des += 3;
+  }
+
+  a = src[0];
+  b = src[1];
+  des [0] = (unsigned char)(a);
+  des [1] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
+  des [2] = (unsigned char)(b);
 }
 
 
@@ -246,22 +236,22 @@ void vp8_horizontal_line_2_3_scale_c
  *                  the current band.
  *
  ****************************************************************************/
-void vp8_vertical_band_2_3_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-
-    for (i = 0; i < dest_width; i++)
-    {
-        a = des [0];
-        b = des [dest_pitch];
-        c = des[dest_pitch*3];
-        des [dest_pitch  ] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
-        des [dest_pitch*2] = (unsigned char)((b * 171 + 85 * c + 128) >> 8);
-
-        des++;
-    }
+void vp8_vertical_band_2_3_scale_c(unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+
+  for (i = 0; i < dest_width; i++) {
+    a = des [0];
+    b = des [dest_pitch];
+    c = des[dest_pitch * 3];
+    des [dest_pitch  ] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
+    des [dest_pitch * 2] = (unsigned char)((b * 171 + 85 * c + 128) >> 8);
+
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -284,21 +274,21 @@ void vp8_vertical_band_2_3_scale_c(unsigned char *dest, unsigned int dest_pitch,
  *                  last band.
  *
  ****************************************************************************/
-void vp8_last_vertical_band_2_3_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b;
-    unsigned char *des = dest;
-
-    for (i = 0; i < dest_width; ++i)
-    {
-        a = des [0];
-        b = des [dest_pitch];
-
-        des [dest_pitch  ] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
-        des [dest_pitch*2] = (unsigned char)(b);
-        des++;
-    }
+void vp8_last_vertical_band_2_3_scale_c(unsigned char *dest,
+                                        unsigned int dest_pitch,
+                                        unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b;
+  unsigned char *des = dest;
+
+  for (i = 0; i < dest_width; ++i) {
+    a = des [0];
+    b = des [dest_pitch];
+
+    des [dest_pitch  ] = (unsigned char)((a * 85 + 171 * b + 128) >> 8);
+    des [dest_pitch * 2] = (unsigned char)(b);
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -321,49 +311,44 @@ void vp8_last_vertical_band_2_3_scale_c(unsigned char *dest, unsigned int dest_p
  *
  *
  ****************************************************************************/
-void vp8_horizontal_line_3_5_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width - 3; i += 3)
-    {
-        a = src[0];
-        b = src[1];
-        des [0] = (unsigned char)(a);
-        des [1] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
-
-        c = src[2] ;
-        des [2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
-        des [3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
-
-        a = src[3];
-        des [4] = (unsigned char)((c * 154 + a * 102 + 128) >> 8);
-
-        src += 3;
-        des += 5;
-    }
-
+void vp8_horizontal_line_3_5_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width - 3; i += 3) {
     a = src[0];
     b = src[1];
     des [0] = (unsigned char)(a);
-
     des [1] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
-    c = src[2] ;
+
+    c = src[2];
     des [2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
     des [3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
 
-    des [4] = (unsigned char)(c);
+    a = src[3];
+    des [4] = (unsigned char)((c * 154 + a * 102 + 128) >> 8);
+
+    src += 3;
+    des += 5;
+  }
+
+  a = src[0];
+  b = src[1];
+  des [0] = (unsigned char)(a);
+
+  des [1] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
+  c = src[2];
+  des [2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
+  des [3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
+
+  des [4] = (unsigned char)(c);
 }
 
 /****************************************************************************
@@ -385,28 +370,28 @@ void vp8_horizontal_line_3_5_scale_c
  *                  the current band.
  *
  ****************************************************************************/
-void vp8_vertical_band_3_5_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-
-    for (i = 0; i < dest_width; i++)
-    {
-        a = des [0];
-        b = des [dest_pitch];
-        des [dest_pitch] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
-
-        c = des[dest_pitch*2];
-        des [dest_pitch*2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
-        des [dest_pitch*3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
-
-        /* First line in next band... */
-        a = des [dest_pitch * 5];
-        des [dest_pitch * 4] = (unsigned char)((c * 154 + a * 102 + 128) >> 8);
-
-        des++;
-    }
+void vp8_vertical_band_3_5_scale_c(unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+
+  for (i = 0; i < dest_width; i++) {
+    a = des [0];
+    b = des [dest_pitch];
+    des [dest_pitch] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
+
+    c = des[dest_pitch * 2];
+    des [dest_pitch * 2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
+    des [dest_pitch * 3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
+
+    /* First line in next band... */
+    a = des [dest_pitch * 5];
+    des [dest_pitch * 4] = (unsigned char)((c * 154 + a * 102 + 128) >> 8);
+
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -429,28 +414,28 @@ void vp8_vertical_band_3_5_scale_c(unsigned char *dest, unsigned int dest_pitch,
  *                  last band.
  *
  ****************************************************************************/
-void vp8_last_vertical_band_3_5_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
+void vp8_last_vertical_band_3_5_scale_c(unsigned char *dest,
+                                        unsigned int dest_pitch,
+                                        unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
 
-    for (i = 0; i < dest_width; ++i)
-    {
-        a = des [0];
-        b = des [dest_pitch];
+  for (i = 0; i < dest_width; ++i) {
+    a = des [0];
+    b = des [dest_pitch];
 
-        des [ dest_pitch ] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
+    des [ dest_pitch ] = (unsigned char)((a * 102 + 154 * b + 128) >> 8);
 
-        c = des[dest_pitch*2];
-        des [dest_pitch*2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
-        des [dest_pitch*3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
+    c = des[dest_pitch * 2];
+    des [dest_pitch * 2] = (unsigned char)((b * 205 + c * 51 + 128) >> 8);
+    des [dest_pitch * 3] = (unsigned char)((b * 51 + c * 205 + 128) >> 8);
 
-        /* No other line for interplation of this line, so .. */
-        des [ dest_pitch * 4 ] = (unsigned char)(c) ;
+    /* No other line for interplation of this line, so .. */
+    des [ dest_pitch * 4 ] = (unsigned char)(c);
 
-        des++;
-    }
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -473,46 +458,41 @@ void vp8_last_vertical_band_3_5_scale_c(unsigned char *dest, unsigned int dest_p
  *
  *
  ****************************************************************************/
-void vp8_horizontal_line_3_4_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width - 3; i += 3)
-    {
-        a = src[0];
-        b = src[1];
-        des [0] = (unsigned char)(a);
-        des [1] = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
-
-        c = src[2];
-        des [2] = (unsigned char)((b + c + 1) >> 1);
-
-        a = src[3];
-        des [3] = (unsigned char)((c * 192 + a * 64 + 128) >> 8);
-
-        src += 3;
-        des += 4;
-    }
-
+void vp8_horizontal_line_3_4_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width - 3; i += 3) {
     a = src[0];
     b = src[1];
     des [0] = (unsigned char)(a);
     des [1] = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
 
-    c = src[2] ;
+    c = src[2];
     des [2] = (unsigned char)((b + c + 1) >> 1);
-    des [3] = (unsigned char)(c);
+
+    a = src[3];
+    des [3] = (unsigned char)((c * 192 + a * 64 + 128) >> 8);
+
+    src += 3;
+    des += 4;
+  }
+
+  a = src[0];
+  b = src[1];
+  des [0] = (unsigned char)(a);
+  des [1] = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
+
+  c = src[2];
+  des [2] = (unsigned char)((b + c + 1) >> 1);
+  des [3] = (unsigned char)(c);
 }
 
 /****************************************************************************
@@ -534,27 +514,27 @@ void vp8_horizontal_line_3_4_scale_c
  *                  the current band.
  *
  ****************************************************************************/
-void vp8_vertical_band_3_4_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
-
-    for (i = 0; i < dest_width; i++)
-    {
-        a = des [0];
-        b = des [dest_pitch];
-        des [dest_pitch]   = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
-
-        c = des[dest_pitch*2];
-        des [dest_pitch*2] = (unsigned char)((b + c + 1) >> 1);
-
-        /* First line in next band... */
-        a = des [dest_pitch*4];
-        des [dest_pitch*3] = (unsigned char)((c * 192 + a * 64 + 128) >> 8);
-
-        des++;
-    }
+void vp8_vertical_band_3_4_scale_c(unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
+
+  for (i = 0; i < dest_width; i++) {
+    a = des [0];
+    b = des [dest_pitch];
+    des [dest_pitch]   = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
+
+    c = des[dest_pitch * 2];
+    des [dest_pitch * 2] = (unsigned char)((b + c + 1) >> 1);
+
+    /* First line in next band... */
+    a = des [dest_pitch * 4];
+    des [dest_pitch * 3] = (unsigned char)((c * 192 + a * 64 + 128) >> 8);
+
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -577,27 +557,27 @@ void vp8_vertical_band_3_4_scale_c(unsigned char *dest, unsigned int dest_pitch,
  *                  last band.
  *
  ****************************************************************************/
-void vp8_last_vertical_band_3_4_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c;
-    unsigned char *des = dest;
+void vp8_last_vertical_band_3_4_scale_c(unsigned char *dest,
+                                        unsigned int dest_pitch,
+                                        unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c;
+  unsigned char *des = dest;
 
-    for (i = 0; i < dest_width; ++i)
-    {
-        a = des [0];
-        b = des [dest_pitch];
+  for (i = 0; i < dest_width; ++i) {
+    a = des [0];
+    b = des [dest_pitch];
 
-        des [dest_pitch]   = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
+    des [dest_pitch]   = (unsigned char)((a * 64 + b * 192 + 128) >> 8);
 
-        c = des[dest_pitch*2];
-        des [dest_pitch*2] = (unsigned char)((b + c + 1) >> 1);
+    c = des[dest_pitch * 2];
+    des [dest_pitch * 2] = (unsigned char)((b + c + 1) >> 1);
 
-        /* No other line for interplation of this line, so .. */
-        des [dest_pitch*3] = (unsigned char)(c);
+    /* No other line for interplation of this line, so .. */
+    des [dest_pitch * 3] = (unsigned char)(c);
 
-        des++;
-    }
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -619,34 +599,29 @@ void vp8_last_vertical_band_3_4_scale_c(unsigned char *dest, unsigned int dest_p
  *  SPECIAL NOTES : None.
  *
  ****************************************************************************/
-void vp8_horizontal_line_1_2_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a, b;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width - 1; i += 1)
-    {
-        a = src[0];
-        b = src[1];
-        des [0] = (unsigned char)(a);
-        des [1] = (unsigned char)((a + b + 1) >> 1);
-        src += 1;
-        des += 2;
-    }
-
+void vp8_horizontal_line_1_2_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width - 1; i += 1) {
     a = src[0];
+    b = src[1];
     des [0] = (unsigned char)(a);
-    des [1] = (unsigned char)(a);
+    des [1] = (unsigned char)((a + b + 1) >> 1);
+    src += 1;
+    des += 2;
+  }
+
+  a = src[0];
+  des [0] = (unsigned char)(a);
+  des [1] = (unsigned char)(a);
 }
 
 /****************************************************************************
@@ -668,21 +643,21 @@ void vp8_horizontal_line_1_2_scale_c
  *                  the current band.
  *
  ****************************************************************************/
-void vp8_vertical_band_1_2_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b;
-    unsigned char *des = dest;
+void vp8_vertical_band_1_2_scale_c(unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b;
+  unsigned char *des = dest;
 
-    for (i = 0; i < dest_width; i++)
-    {
-        a = des [0];
-        b = des [dest_pitch * 2];
+  for (i = 0; i < dest_width; i++) {
+    a = des [0];
+    b = des [dest_pitch * 2];
 
-        des[dest_pitch] = (unsigned char)((a + b + 1) >> 1);
+    des[dest_pitch] = (unsigned char)((a + b + 1) >> 1);
 
-        des++;
-    }
+    des++;
+  }
 }
 
 /****************************************************************************
@@ -705,16 +680,16 @@ void vp8_vertical_band_1_2_scale_c(unsigned char *dest, unsigned int dest_pitch,
  *                  last band.
  *
  ****************************************************************************/
-void vp8_last_vertical_band_1_2_scale_c(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned char *des = dest;
-
-    for (i = 0; i < dest_width; ++i)
-    {
-        des[dest_pitch] = des[0];
-        des++;
-    }
+void vp8_last_vertical_band_1_2_scale_c(unsigned char *dest,
+                                        unsigned int dest_pitch,
+                                        unsigned int dest_width) {
+  unsigned int i;
+  unsigned char *des = dest;
+
+  for (i = 0; i < dest_width; ++i) {
+    des[dest_pitch] = des[0];
+    des++;
+  }
 }
 
 
@@ -740,67 +715,64 @@ void vp8_last_vertical_band_1_2_scale_c(unsigned char *dest, unsigned int dest_p
  *  SPECIAL NOTES : None.
  *
  ****************************************************************************/
-void vp8_horizontal_line_5_4_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned i;
-    unsigned int a, b, c, d, e;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width; i += 5)
-    {
-        a = src[0];
-        b = src[1];
-        c = src[2];
-        d = src[3];
-        e = src[4];
-
-        des[0] = (unsigned char) a;
-        des[1] = (unsigned char)((b * 192 + c * 64 + 128) >> 8);
-        des[2] = (unsigned char)((c * 128 + d * 128 + 128) >> 8);
-        des[3] = (unsigned char)((d * 64 + e * 192 + 128) >> 8);
-
-        src += 5;
-        des += 4;
-    }
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned i;
+  unsigned int a, b, c, d, e;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width; i += 5) {
+    a = src[0];
+    b = src[1];
+    c = src[2];
+    d = src[3];
+    e = src[4];
+
+    des[0] = (unsigned char) a;
+    des[1] = (unsigned char)((b * 192 + c * 64 + 128) >> 8);
+    des[2] = (unsigned char)((c * 128 + d * 128 + 128) >> 8);
+    des[3] = (unsigned char)((d * 64 + e * 192 + 128) >> 8);
+
+    src += 5;
+    des += 4;
+  }
 }
 
 
 
 
-void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c, d, e;
-    unsigned char *des = dest;
-    unsigned char *src = source;
+void vp8_vertical_band_5_4_scale_c(unsigned char *source,
+                                   unsigned int src_pitch,
+                                   unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c, d, e;
+  unsigned char *des = dest;
+  unsigned char *src = source;
 
-    for (i = 0; i < dest_width; i++)
-    {
+  for (i = 0; i < dest_width; i++) {
 
-        a = src[0 * src_pitch];
-        b = src[1 * src_pitch];
-        c = src[2 * src_pitch];
-        d = src[3 * src_pitch];
-        e = src[4 * src_pitch];
+    a = src[0 * src_pitch];
+    b = src[1 * src_pitch];
+    c = src[2 * src_pitch];
+    d = src[3 * src_pitch];
+    e = src[4 * src_pitch];
 
-        des[0 * dest_pitch] = (unsigned char) a;
-        des[1 * dest_pitch] = (unsigned char)((b * 192 + c * 64 + 128) >> 8);
-        des[2 * dest_pitch] = (unsigned char)((c * 128 + d * 128 + 128) >> 8);
-        des[3 * dest_pitch] = (unsigned char)((d * 64 + e * 192 + 128) >> 8);
+    des[0 * dest_pitch] = (unsigned char) a;
+    des[1 * dest_pitch] = (unsigned char)((b * 192 + c * 64 + 128) >> 8);
+    des[2 * dest_pitch] = (unsigned char)((c * 128 + d * 128 + 128) >> 8);
+    des[3 * dest_pitch] = (unsigned char)((d * 64 + e * 192 + 128) >> 8);
 
-        src ++;
-        des ++;
+    src++;
+    des++;
 
-    }
+  }
 }
 
 
@@ -824,63 +796,60 @@ void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch
  *
  *
  ****************************************************************************/
-void vp8_horizontal_line_5_3_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a, b, c, d , e;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width; i += 5)
-    {
-        a = src[0];
-        b = src[1];
-        c = src[2];
-        d = src[3];
-        e = src[4];
-
-        des[0] = (unsigned char) a;
-        des[1] = (unsigned char)((b * 85  + c * 171 + 128) >> 8);
-        des[2] = (unsigned char)((d * 171 + e * 85 + 128) >> 8);
-
-        src += 5;
-        des += 3;
-    }
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c, d, e;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width; i += 5) {
+    a = src[0];
+    b = src[1];
+    c = src[2];
+    d = src[3];
+    e = src[4];
+
+    des[0] = (unsigned char) a;
+    des[1] = (unsigned char)((b * 85  + c * 171 + 128) >> 8);
+    des[2] = (unsigned char)((d * 171 + e * 85 + 128) >> 8);
+
+    src += 5;
+    des += 3;
+  }
 
 }
 
-void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    unsigned int i;
-    unsigned int a, b, c, d, e;
-    unsigned char *des = dest;
-    unsigned char *src = source;
+void vp8_vertical_band_5_3_scale_c(unsigned char *source,
+                                   unsigned int src_pitch,
+                                   unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a, b, c, d, e;
+  unsigned char *des = dest;
+  unsigned char *src = source;
 
-    for (i = 0; i < dest_width; i++)
-    {
+  for (i = 0; i < dest_width; i++) {
 
-        a = src[0 * src_pitch];
-        b = src[1 * src_pitch];
-        c = src[2 * src_pitch];
-        d = src[3 * src_pitch];
-        e = src[4 * src_pitch];
+    a = src[0 * src_pitch];
+    b = src[1 * src_pitch];
+    c = src[2 * src_pitch];
+    d = src[3 * src_pitch];
+    e = src[4 * src_pitch];
 
-        des[0 * dest_pitch] = (unsigned char) a;
-        des[1 * dest_pitch] = (unsigned char)((b * 85 + c * 171 + 128) >> 8);
-        des[2 * dest_pitch] = (unsigned char)((d * 171 + e * 85 + 128) >> 8);
+    des[0 * dest_pitch] = (unsigned char) a;
+    des[1 * dest_pitch] = (unsigned char)((b * 85 + c * 171 + 128) >> 8);
+    des[2 * dest_pitch] = (unsigned char)((d * 171 + e * 85 + 128) >> 8);
 
-        src ++;
-        des ++;
+    src++;
+    des++;
 
-    }
+  }
 }
 
 /****************************************************************************
@@ -902,55 +871,52 @@ void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch
  *  SPECIAL NOTES : None.
  *
  ****************************************************************************/
-void vp8_horizontal_line_2_1_scale_c
-(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    unsigned int i;
-    unsigned int a;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
-
-    (void) dest_width;
-
-    for (i = 0; i < source_width; i += 2)
-    {
-        a = src[0];
-        des [0] = (unsigned char)(a);
-        src += 2;
-        des += 1;
-    }
-
-
-
-}
-void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    (void) dest_pitch;
-    (void) src_pitch;
-    vpx_memcpy(dest, source, dest_width);
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source,
+                                     unsigned int source_width,
+                                     unsigned char *dest,
+                                     unsigned int dest_width) {
+  unsigned int i;
+  unsigned int a;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
+
+  (void) dest_width;
+
+  for (i = 0; i < source_width; i += 2) {
+    a = src[0];
+    des [0] = (unsigned char)(a);
+    src += 2;
+    des += 1;
+  }
 }
 
-void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    int i;
-    int temp;
-    int width = dest_width;
-
-    (void) dest_pitch;
-
-    for (i = 0; i < width; i++)
-    {
-        temp = 8;
-        temp += source[i-(int)src_pitch] * 3;
-        temp += source[i] * 10;
-        temp += source[i+src_pitch] * 3;
-        temp >>= 4 ;
-        dest[i] = (unsigned char)(temp);
-    }
+void vp8_vertical_band_2_1_scale_c(unsigned char *source,
+                                   unsigned int src_pitch,
+                                   unsigned char *dest,
+                                   unsigned int dest_pitch,
+                                   unsigned int dest_width) {
+  (void) dest_pitch;
+  (void) src_pitch;
+  vpx_memcpy(dest, source, dest_width);
+}
 
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source,
+                                     unsigned int src_pitch,
+                                     unsigned char *dest,
+                                     unsigned int dest_pitch,
+                                     unsigned int dest_width) {
+  int i;
+  int temp;
+  int width = dest_width;
+
+  (void) dest_pitch;
+
+  for (i = 0; i < width; i++) {
+    temp = 8;
+    temp += source[i - (int)src_pitch] * 3;
+    temp += source[i] * 10;
+    temp += source[i + src_pitch] * 3;
+    temp >>= 4;
+    dest[i] = (unsigned char)(temp);
+  }
 }
index c02e4ff..7de85ca 100644 (file)
 /****************************************************************************
 *  Header Files
 ****************************************************************************/
-#include "vpx_rtcd.h"
+#include "./vpx_rtcd.h"
 #include "vpx_mem/vpx_mem.h"
 #include "vpx_scale/yv12config.h"
 #include "vpx_scale/scale_mode.h"
 
-typedef struct
-{
-    int     expanded_frame_width;
-    int     expanded_frame_height;
+typedef struct {
+  int     expanded_frame_width;
+  int     expanded_frame_height;
 
-    int HScale;
-    int HRatio;
-    int VScale;
-    int VRatio;
+  int HScale;
+  int HRatio;
+  int VScale;
+  int VRatio;
 
-    YV12_BUFFER_CONFIG *src_yuv_config;
-    YV12_BUFFER_CONFIG *dst_yuv_config;
+  YV12_BUFFER_CONFIG *src_yuv_config;
+  YV12_BUFFER_CONFIG *dst_yuv_config;
 
 } SCALE_VARS;
 
@@ -60,15 +59,14 @@ typedef struct
  ****************************************************************************/
 static
 void horizontal_line_copy(
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    (void) dest_width;
-
-    duck_memcpy(dest, source, source_width);
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  (void) dest_width;
+
+  duck_memcpy(dest, source, source_width);
 }
 /****************************************************************************
  *
@@ -90,16 +88,15 @@ void horizontal_line_copy(
  ****************************************************************************/
 static
 void null_scale(
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    (void) dest;
-    (void) dest_pitch;
-    (void) dest_width;
-
-    return;
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  (void) dest;
+  (void) dest_pitch;
+  (void) dest_width;
+
+  return;
 }
 
 /****************************************************************************
@@ -127,35 +124,33 @@ void null_scale(
 static
 void scale1d_2t1_i
 (
-    const unsigned char *source,
-    int source_step,
-    unsigned int source_scale,
-    unsigned int source_length,
-    unsigned char *dest,
-    int dest_step,
-    unsigned int dest_scale,
-    unsigned int dest_length
-)
-{
-    unsigned int i, j;
-    unsigned int temp;
-    int source_pitch = source_step;
-    (void) source_length;
-    (void) source_scale;
-    (void) dest_scale;
-
-    source_step *= 2;
-    dest[0] = source[0];
-
-    for (i = dest_step, j = source_step; i < dest_length * dest_step; i += dest_step, j += source_step)
-    {
-        temp = 8;
-        temp += 3 * source[j-source_pitch];
-        temp += 10 * source[j];
-        temp += 3 * source[j+source_pitch];
-        temp >>= 4;
-        dest[i] = (char)(temp);
-    }
+  const unsigned char *source,
+  int source_step,
+  unsigned int source_scale,
+  unsigned int source_length,
+  unsigned char *dest,
+  int dest_step,
+  unsigned int dest_scale,
+  unsigned int dest_length
+) {
+  unsigned int i, j;
+  unsigned int temp;
+  int source_pitch = source_step;
+  (void) source_length;
+  (void) source_scale;
+  (void) dest_scale;
+
+  source_step *= 2;
+  dest[0] = source[0];
+
+  for (i = dest_step, j = source_step; i < dest_length * dest_step; i += dest_step, j += source_step) {
+    temp = 8;
+    temp += 3 * source[j - source_pitch];
+    temp += 10 * source[j];
+    temp += 3 * source[j + source_pitch];
+    temp >>= 4;
+    dest[i] = (char)(temp);
+  }
 }
 
 /****************************************************************************
@@ -183,27 +178,26 @@ void scale1d_2t1_i
 static
 void scale1d_2t1_ps
 (
-    const unsigned char *source,
-    int source_step,
-    unsigned int source_scale,
-    unsigned int source_length,
-    unsigned char *dest,
-    int dest_step,
-    unsigned int dest_scale,
-    unsigned int dest_length
-)
-{
-    unsigned int i, j;
-
-    (void) source_length;
-    (void) source_scale;
-    (void) dest_scale;
-
-    source_step *= 2;
-    j = 0;
-
-    for (i = 0; i < dest_length * dest_step; i += dest_step, j += source_step)
-        dest[i] = source[j];
+  const unsigned char *source,
+  int source_step,
+  unsigned int source_scale,
+  unsigned int source_length,
+  unsigned char *dest,
+  int dest_step,
+  unsigned int dest_scale,
+  unsigned int dest_length
+) {
+  unsigned int i, j;
+
+  (void) source_length;
+  (void) source_scale;
+  (void) dest_scale;
+
+  source_step *= 2;
+  j = 0;
+
+  for (i = 0; i < dest_length * dest_step; i += dest_step, j += source_step)
+    dest[i] = source[j];
 }
 /****************************************************************************
  *
@@ -230,45 +224,42 @@ void scale1d_2t1_ps
 static
 void scale1d_c
 (
-    const unsigned char *source,
-    int source_step,
-    unsigned int source_scale,
-    unsigned int source_length,
-    unsigned char *dest,
-    int dest_step,
-    unsigned int dest_scale,
-    unsigned int dest_length
-)
-{
-    unsigned int i;
-    unsigned int round_value = dest_scale / 2;
-    unsigned int left_modifier = dest_scale;
-    unsigned int right_modifier = 0;
-    unsigned char left_pixel = *source;
-    unsigned char right_pixel = *(source + source_step);
-
-    (void) source_length;
-
-    /* These asserts are needed if there are boundary issues... */
-    /*assert ( dest_scale > source_scale );*/
-    /*assert ( (source_length-1) * dest_scale >= (dest_length-1) * source_scale );*/
-
-    for (i = 0; i < dest_length * dest_step; i += dest_step)
-    {
-        dest[i] = (char)((left_modifier * left_pixel + right_modifier * right_pixel + round_value) / dest_scale);
-
-        right_modifier += source_scale;
-
-        while (right_modifier > dest_scale)
-        {
-            right_modifier -= dest_scale;
-            source += source_step;
-            left_pixel = *source;
-            right_pixel = *(source + source_step);
-        }
-
-        left_modifier = dest_scale - right_modifier;
+  const unsigned char *source,
+  int source_step,
+  unsigned int source_scale,
+  unsigned int source_length,
+  unsigned char *dest,
+  int dest_step,
+  unsigned int dest_scale,
+  unsigned int dest_length
+) {
+  unsigned int i;
+  unsigned int round_value = dest_scale / 2;
+  unsigned int left_modifier = dest_scale;
+  unsigned int right_modifier = 0;
+  unsigned char left_pixel = *source;
+  unsigned char right_pixel = *(source + source_step);
+
+  (void) source_length;
+
+  /* These asserts are needed if there are boundary issues... */
+  /*assert ( dest_scale > source_scale );*/
+  /*assert ( (source_length-1) * dest_scale >= (dest_length-1) * source_scale );*/
+
+  for (i = 0; i < dest_length * dest_step; i += dest_step) {
+    dest[i] = (char)((left_modifier * left_pixel + right_modifier * right_pixel + round_value) / dest_scale);
+
+    right_modifier += source_scale;
+
+    while (right_modifier > dest_scale) {
+      right_modifier -= dest_scale;
+      source += source_step;
+      left_pixel = *source;
+      right_pixel = *(source + source_step);
     }
+
+    left_modifier = dest_scale - right_modifier;
+  }
 }
 
 /****************************************************************************
@@ -304,246 +295,221 @@ void scale1d_c
 static
 void Scale2D
 (
-    /*const*/
-    unsigned char *source,
-    int source_pitch,
-    unsigned int source_width,
-    unsigned int source_height,
-    unsigned char *dest,
-    int dest_pitch,
-    unsigned int dest_width,
-    unsigned int dest_height,
-    unsigned char *temp_area,
-    unsigned char temp_area_height,
-    unsigned int hscale,
-    unsigned int hratio,
-    unsigned int vscale,
-    unsigned int vratio,
-    unsigned int interlaced
-)
-{
-    /*unsigned*/
-    int i, j, k;
-    int bands;
-    int dest_band_height;
-    int source_band_height;
-
-    typedef void (*Scale1D)(const unsigned char * source, int source_step, unsigned int source_scale, unsigned int source_length,
-                            unsigned char * dest, int dest_step, unsigned int dest_scale, unsigned int dest_length);
-
-    Scale1D Scale1Dv = scale1d_c;
-    Scale1D Scale1Dh = scale1d_c;
-
-    void (*horiz_line_scale)(const unsigned char *, unsigned int, unsigned char *, unsigned int) = NULL;
-    void (*vert_band_scale)(unsigned char *, unsigned int, unsigned char *, unsigned int, unsigned int) = NULL;
-
-    int ratio_scalable = 1;
-    int interpolation = 0;
-
-    unsigned char *source_base; /* = (unsigned char *) ((source_pitch >= 0) ? source : (source + ((source_height-1) * source_pitch))); */
-    unsigned char *line_src;
-
-
-    source_base = (unsigned char *)source;
-
-    if (source_pitch < 0)
-    {
-        int offset;
-
-        offset = (source_height - 1);
-        offset *= source_pitch;
-
-        source_base += offset;
-    }
-
-    /* find out the ratio for each direction */
-    switch (hratio * 10 / hscale)
-    {
+  /*const*/
+  unsigned char *source,
+  int source_pitch,
+  unsigned int source_width,
+  unsigned int source_height,
+  unsigned char *dest,
+  int dest_pitch,
+  unsigned int dest_width,
+  unsigned int dest_height,
+  unsigned char *temp_area,
+  unsigned char temp_area_height,
+  unsigned int hscale,
+  unsigned int hratio,
+  unsigned int vscale,
+  unsigned int vratio,
+  unsigned int interlaced
+) {
+  /*unsigned*/
+  int i, j, k;
+  int bands;
+  int dest_band_height;
+  int source_band_height;
+
+  typedef void (*Scale1D)(const unsigned char * source, int source_step, unsigned int source_scale, unsigned int source_length,
+                          unsigned char * dest, int dest_step, unsigned int dest_scale, unsigned int dest_length);
+
+  Scale1D Scale1Dv = scale1d_c;
+  Scale1D Scale1Dh = scale1d_c;
+
+  void (*horiz_line_scale)(const unsigned char *, unsigned int, unsigned char *, unsigned int) = NULL;
+  void (*vert_band_scale)(unsigned char *, unsigned int, unsigned char *, unsigned int, unsigned int) = NULL;
+
+  int ratio_scalable = 1;
+  int interpolation = 0;
+
+  unsigned char *source_base; /* = (unsigned char *) ((source_pitch >= 0) ? source : (source + ((source_height-1) * source_pitch))); */
+  unsigned char *line_src;
+
+
+  source_base = (unsigned char *)source;
+
+  if (source_pitch < 0) {
+    int offset;
+
+    offset = (source_height - 1);
+    offset *= source_pitch;
+
+    source_base += offset;
+  }
+
+  /* find out the ratio for each direction */
+  switch (hratio * 10 / hscale) {
     case 8:
-        /* 4-5 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_5_4_scale;
-        break;
+      /* 4-5 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_5_4_scale;
+      break;
     case 6:
-        /* 3-5 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_5_3_scale;
-        break;
+      /* 3-5 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_5_3_scale;
+      break;
     case 5:
-        /* 1-2 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_2_1_scale;
-        break;
+      /* 1-2 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_2_1_scale;
+      break;
     default:
-        /* The ratio is not acceptable now */
-        /* throw("The ratio is not acceptable for now!"); */
-        ratio_scalable = 0;
-        break;
-    }
+      /* The ratio is not acceptable now */
+      /* throw("The ratio is not acceptable for now!"); */
+      ratio_scalable = 0;
+      break;
+  }
 
-    switch (vratio * 10 / vscale)
-    {
+  switch (vratio * 10 / vscale) {
     case 8:
-        /* 4-5 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_5_4_scale;
-        source_band_height  = 5;
-        dest_band_height    = 4;
-        break;
+      /* 4-5 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_5_4_scale;
+      source_band_height  = 5;
+      dest_band_height    = 4;
+      break;
     case 6:
-        /* 3-5 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_5_3_scale;
-        source_band_height  = 5;
-        dest_band_height    = 3;
-        break;
+      /* 3-5 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_5_3_scale;
+      source_band_height  = 5;
+      dest_band_height    = 3;
+      break;
     case 5:
-        /* 1-2 Scale in vertical direction */
+      /* 1-2 Scale in vertical direction */
 
-        if (interlaced)
-        {
-            /* if the content is interlaced, point sampling is used */
-            vert_band_scale     = vp8_vertical_band_2_1_scale;
-        }
-        else
-        {
+      if (interlaced) {
+        /* if the content is interlaced, point sampling is used */
+        vert_band_scale     = vp8_vertical_band_2_1_scale;
+      } else {
 
-            interpolation = 1;
-            /* if the content is progressive, interplo */
-            vert_band_scale     = vp8_vertical_band_2_1_scale_i;
+        interpolation = 1;
+        /* if the content is progressive, interplo */
+        vert_band_scale     = vp8_vertical_band_2_1_scale_i;
 
-        }
+      }
 
-        source_band_height  = 2;
-        dest_band_height    = 1;
-        break;
+      source_band_height  = 2;
+      dest_band_height    = 1;
+      break;
     default:
-        /* The ratio is not acceptable now */
-        /* throw("The ratio is not acceptable for now!"); */
-        ratio_scalable = 0;
-        break;
+      /* The ratio is not acceptable now */
+      /* throw("The ratio is not acceptable for now!"); */
+      ratio_scalable = 0;
+      break;
+  }
+
+  if (ratio_scalable) {
+    if (source_height == dest_height) {
+      /* for each band of the image */
+      for (k = 0; k < (int)dest_height; k++) {
+        horiz_line_scale(source, source_width, dest, dest_width);
+        source += source_pitch;
+        dest   += dest_pitch;
+      }
+
+      return;
     }
 
-    if (ratio_scalable)
-    {
-        if (source_height == dest_height)
-        {
-            /* for each band of the image */
-            for (k = 0; k < (int)dest_height; k++)
-            {
-                horiz_line_scale(source, source_width, dest, dest_width);
-                source += source_pitch;
-                dest   += dest_pitch;
-            }
-
-            return;
-        }
-
-        if (interpolation)
-        {
-            if (source < source_base)
-                source = source_base;
-
-            horiz_line_scale(source, source_width, temp_area, dest_width);
-        }
-
-        for (k = 0; k < (int)(dest_height + dest_band_height - 1) / dest_band_height; k++)
-        {
-            /* scale one band horizontally */
-            for (i = 0; i < source_band_height; i++)
-            {
-                /* Trap case where we could read off the base of the source buffer */
-
-                line_src = (unsigned char *)source + i * source_pitch;
-
-                if (line_src < source_base)
-                    line_src = source_base;
-
-                horiz_line_scale(line_src, source_width,
-                                 temp_area + (i + 1)*dest_pitch, dest_width);
-            }
-
-            /* Vertical scaling is in place */
-            vert_band_scale(temp_area + dest_pitch, dest_pitch, dest, dest_pitch, dest_width);
-
-            if (interpolation)
-                vpx_memcpy(temp_area, temp_area + source_band_height * dest_pitch, dest_width);
-
-            /* Next band... */
-            source += (unsigned long) source_band_height  * source_pitch;
-            dest   += (unsigned long) dest_band_height * dest_pitch;
-        }
-
-        return;
+    if (interpolation) {
+      if (source < source_base)
+        source = source_base;
+
+      horiz_line_scale(source, source_width, temp_area, dest_width);
     }
 
-    if (hscale == 2 && hratio == 1)
-        Scale1Dh = scale1d_2t1_ps;
+    for (k = 0; k < (int)(dest_height + dest_band_height - 1) / dest_band_height; k++) {
+      /* scale one band horizontally */
+      for (i = 0; i < source_band_height; i++) {
+        /* Trap case where we could read off the base of the source buffer */
 
-    if (vscale == 2 && vratio == 1)
-    {
-        if (interlaced)
-            Scale1Dv = scale1d_2t1_ps;
-        else
-            Scale1Dv = scale1d_2t1_i;
-    }
+        line_src = (unsigned char *)source + i * source_pitch;
 
-    if (source_height == dest_height)
-    {
-        /* for each band of the image */
-        for (k = 0; k < (int)dest_height; k++)
-        {
-            Scale1Dh(source, 1, hscale, source_width + 1, dest, 1, hratio, dest_width);
-            source += source_pitch;
-            dest   += dest_pitch;
-        }
-
-        return;
-    }
+        if (line_src < source_base)
+          line_src = source_base;
+
+        horiz_line_scale(line_src, source_width,
+                         temp_area + (i + 1)*dest_pitch, dest_width);
+      }
+
+      /* Vertical scaling is in place */
+      vert_band_scale(temp_area + dest_pitch, dest_pitch, dest, dest_pitch, dest_width);
 
-    if (dest_height > source_height)
-    {
-        dest_band_height   = temp_area_height - 1;
-        source_band_height = dest_band_height * source_height / dest_height;
+      if (interpolation)
+        vpx_memcpy(temp_area, temp_area + source_band_height * dest_pitch, dest_width);
+
+      /* Next band... */
+      source += (unsigned long) source_band_height  * source_pitch;
+      dest   += (unsigned long) dest_band_height * dest_pitch;
     }
+
+    return;
+  }
+
+  if (hscale == 2 && hratio == 1)
+    Scale1Dh = scale1d_2t1_ps;
+
+  if (vscale == 2 && vratio == 1) {
+    if (interlaced)
+      Scale1Dv = scale1d_2t1_ps;
     else
-    {
-        source_band_height = temp_area_height - 1;
-        dest_band_height   = source_band_height * vratio / vscale;
+      Scale1Dv = scale1d_2t1_i;
+  }
+
+  if (source_height == dest_height) {
+    /* for each band of the image */
+    for (k = 0; k < (int)dest_height; k++) {
+      Scale1Dh(source, 1, hscale, source_width + 1, dest, 1, hratio, dest_width);
+      source += source_pitch;
+      dest   += dest_pitch;
     }
 
-    /* first row needs to be done so that we can stay one row ahead for vertical zoom */
-    Scale1Dh(source, 1, hscale, source_width + 1, temp_area, 1, hratio, dest_width);
+    return;
+  }
+
+  if (dest_height > source_height) {
+    dest_band_height   = temp_area_height - 1;
+    source_band_height = dest_band_height * source_height / dest_height;
+  } else {
+    source_band_height = temp_area_height - 1;
+    dest_band_height   = source_band_height * vratio / vscale;
+  }
 
-    /* for each band of the image */
-    bands = (dest_height + dest_band_height - 1) / dest_band_height;
-
-    for (k = 0; k < bands; k++)
-    {
-        /* scale one band horizontally */
-        for (i = 1; i < source_band_height + 1; i++)
-        {
-            if (k * source_band_height + i < (int) source_height)
-            {
-                Scale1Dh(source + i * source_pitch, 1, hscale, source_width + 1,
-                         temp_area + i * dest_pitch, 1, hratio, dest_width);
-            }
-            else  /*  Duplicate the last row */
-            {
-                /* copy temp_area row 0 over from last row in the past */
-                duck_memcpy(temp_area + i * dest_pitch, temp_area + (i - 1)*dest_pitch, dest_pitch);
-            }
-        }
-
-        /* scale one band vertically */
-        for (j = 0; j < (int)dest_width; j++)
-        {
-            Scale1Dv(&temp_area[j], dest_pitch, vscale, source_band_height + 1,
-                     &dest[j], dest_pitch, vratio, dest_band_height);
-        }
+  /* first row needs to be done so that we can stay one row ahead for vertical zoom */
+  Scale1Dh(source, 1, hscale, source_width + 1, temp_area, 1, hratio, dest_width);
 
+  /* for each band of the image */
+  bands = (dest_height + dest_band_height - 1) / dest_band_height;
+
+  for (k = 0; k < bands; k++) {
+    /* scale one band horizontally */
+    for (i = 1; i < source_band_height + 1; i++) {
+      if (k * source_band_height + i < (int) source_height) {
+        Scale1Dh(source + i * source_pitch, 1, hscale, source_width + 1,
+                 temp_area + i * dest_pitch, 1, hratio, dest_width);
+      } else { /*  Duplicate the last row */
         /* copy temp_area row 0 over from last row in the past */
-        duck_memcpy(temp_area, temp_area + source_band_height * dest_pitch, dest_pitch);
+        duck_memcpy(temp_area + i * dest_pitch, temp_area + (i - 1)*dest_pitch, dest_pitch);
+      }
+    }
 
-        /* move to the next band */
-        source += source_band_height * source_pitch;
-        dest   += dest_band_height * dest_pitch;
+    /* scale one band vertically */
+    for (j = 0; j < (int)dest_width; j++) {
+      Scale1Dv(&temp_area[j], dest_pitch, vscale, source_band_height + 1,
+               &dest[j], dest_pitch, vratio, dest_band_height);
     }
+
+    /* copy temp_area row 0 over from last row in the past */
+    duck_memcpy(temp_area, temp_area + source_band_height * dest_pitch, dest_pitch);
+
+    /* move to the next band */
+    source += source_band_height * source_pitch;
+    dest   += dest_band_height * dest_pitch;
+  }
 }
 
 /****************************************************************************
@@ -572,57 +538,56 @@ void Scale2D
  ****************************************************************************/
 void vp8_scale_frame
 (
-    YV12_BUFFER_CONFIG *src,
-    YV12_BUFFER_CONFIG *dst,
-    unsigned char *temp_area,
-    unsigned char temp_height,
-    unsigned int hscale,
-    unsigned int hratio,
-    unsigned int vscale,
-    unsigned int vratio,
-    unsigned int interlaced
-)
-{
-    int i;
-    int dw = (hscale - 1 + src->y_width * hratio) / hscale;
-    int dh = (vscale - 1 + src->y_height * vratio) / vscale;
-
-    /* call our internal scaling routines!! */
-    Scale2D((unsigned char *) src->y_buffer, src->y_stride, src->y_width, src->y_height,
-            (unsigned char *) dst->y_buffer, dst->y_stride, dw, dh,
-            temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
-
-    if (dw < (int)dst->y_width)
-        for (i = 0; i < dh; i++)
-            duck_memset(dst->y_buffer + i * dst->y_stride + dw - 1, dst->y_buffer[i*dst->y_stride+dw-2], dst->y_width - dw + 1);
-
-    if (dh < (int)dst->y_height)
-        for (i = dh - 1; i < (int)dst->y_height; i++)
-            duck_memcpy(dst->y_buffer + i * dst->y_stride, dst->y_buffer + (dh - 2) * dst->y_stride, dst->y_width + 1);
-
-    Scale2D((unsigned char *) src->u_buffer, src->uv_stride, src->uv_width, src->uv_height,
-            (unsigned char *) dst->u_buffer, dst->uv_stride, dw / 2, dh / 2,
-            temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
-
-    if (dw / 2 < (int)dst->uv_width)
-        for (i = 0; i < dst->uv_height; i++)
-            duck_memset(dst->u_buffer + i * dst->uv_stride + dw / 2 - 1, dst->u_buffer[i*dst->uv_stride+dw/2-2], dst->uv_width - dw / 2 + 1);
-
-    if (dh / 2 < (int)dst->uv_height)
-        for (i = dh / 2 - 1; i < (int)dst->y_height / 2; i++)
-            duck_memcpy(dst->u_buffer + i * dst->uv_stride, dst->u_buffer + (dh / 2 - 2)*dst->uv_stride, dst->uv_width);
-
-    Scale2D((unsigned char *) src->v_buffer, src->uv_stride, src->uv_width, src->uv_height,
-            (unsigned char *) dst->v_buffer, dst->uv_stride, dw / 2, dh / 2,
-            temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
-
-    if (dw / 2 < (int)dst->uv_width)
-        for (i = 0; i < dst->uv_height; i++)
-            duck_memset(dst->v_buffer + i * dst->uv_stride + dw / 2 - 1, dst->v_buffer[i*dst->uv_stride+dw/2-2], dst->uv_width - dw / 2 + 1);
-
-    if (dh / 2 < (int) dst->uv_height)
-        for (i = dh / 2 - 1; i < (int)dst->y_height / 2; i++)
-            duck_memcpy(dst->v_buffer + i * dst->uv_stride, dst->v_buffer + (dh / 2 - 2)*dst->uv_stride, dst->uv_width);
+  YV12_BUFFER_CONFIG *src,
+  YV12_BUFFER_CONFIG *dst,
+  unsigned char *temp_area,
+  unsigned char temp_height,
+  unsigned int hscale,
+  unsigned int hratio,
+  unsigned int vscale,
+  unsigned int vratio,
+  unsigned int interlaced
+) {
+  int i;
+  int dw = (hscale - 1 + src->y_width * hratio) / hscale;
+  int dh = (vscale - 1 + src->y_height * vratio) / vscale;
+
+  /* call our internal scaling routines!! */
+  Scale2D((unsigned char *) src->y_buffer, src->y_stride, src->y_width, src->y_height,
+          (unsigned char *) dst->y_buffer, dst->y_stride, dw, dh,
+          temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
+
+  if (dw < (int)dst->y_width)
+    for (i = 0; i < dh; i++)
+      duck_memset(dst->y_buffer + i * dst->y_stride + dw - 1, dst->y_buffer[i * dst->y_stride + dw - 2], dst->y_width - dw + 1);
+
+  if (dh < (int)dst->y_height)
+    for (i = dh - 1; i < (int)dst->y_height; i++)
+      duck_memcpy(dst->y_buffer + i * dst->y_stride, dst->y_buffer + (dh - 2) * dst->y_stride, dst->y_width + 1);
+
+  Scale2D((unsigned char *) src->u_buffer, src->uv_stride, src->uv_width, src->uv_height,
+          (unsigned char *) dst->u_buffer, dst->uv_stride, dw / 2, dh / 2,
+          temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
+
+  if (dw / 2 < (int)dst->uv_width)
+    for (i = 0; i < dst->uv_height; i++)
+      duck_memset(dst->u_buffer + i * dst->uv_stride + dw / 2 - 1, dst->u_buffer[i * dst->uv_stride + dw / 2 - 2], dst->uv_width - dw / 2 + 1);
+
+  if (dh / 2 < (int)dst->uv_height)
+    for (i = dh / 2 - 1; i < (int)dst->y_height / 2; i++)
+      duck_memcpy(dst->u_buffer + i * dst->uv_stride, dst->u_buffer + (dh / 2 - 2)*dst->uv_stride, dst->uv_width);
+
+  Scale2D((unsigned char *) src->v_buffer, src->uv_stride, src->uv_width, src->uv_height,
+          (unsigned char *) dst->v_buffer, dst->uv_stride, dw / 2, dh / 2,
+          temp_area, temp_height, hscale, hratio, vscale, vratio, interlaced);
+
+  if (dw / 2 < (int)dst->uv_width)
+    for (i = 0; i < dst->uv_height; i++)
+      duck_memset(dst->v_buffer + i * dst->uv_stride + dw / 2 - 1, dst->v_buffer[i * dst->uv_stride + dw / 2 - 2], dst->uv_width - dw / 2 + 1);
+
+  if (dh / 2 < (int) dst->uv_height)
+    for (i = dh / 2 - 1; i < (int)dst->y_height / 2; i++)
+      duck_memcpy(dst->v_buffer + i * dst->uv_stride, dst->v_buffer + (dh / 2 - 2)*dst->uv_stride, dst->uv_width);
 }
 /****************************************************************************
  *
@@ -651,183 +616,177 @@ void vp8_scale_frame
 static
 int any_ratio_2d_scale
 (
-    SCALE_VARS *si,
-    const unsigned char *source,
-    int source_pitch,
-    unsigned int source_width,
-    unsigned int source_height,
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width,
-    unsigned int dest_height
-)
-{
-    unsigned int i, k;
-    unsigned int src_band_height  = 0;
-    unsigned int dest_band_height = 0;
-
-    /* suggested scale factors */
-    int hs = si->HScale;
-    int hr = si->HRatio;
-    int vs = si->VScale;
-    int vr = si->VRatio;
-
-    /* assume the ratios are scalable instead of should be centered */
-    int ratio_scalable = 1;
-
-    const unsigned char *source_base = ((source_pitch >= 0) ? source : (source + ((source_height - 1) * source_pitch)));
-    const unsigned char *line_src;
-
-    void (*horiz_line_scale)(const unsigned char *, unsigned int, unsigned char *, unsigned int) = NULL;
-    void (*vert_band_scale)(unsigned char *, unsigned int, unsigned int) = NULL;
-    void (*last_vert_band_scale)(unsigned char *, unsigned int, unsigned int) = NULL;
-
-    (void) si;
-
-    /* find out the ratio for each direction */
-    switch (hr * 30 / hs)
-    {
+  SCALE_VARS *si,
+  const unsigned char *source,
+  int source_pitch,
+  unsigned int source_width,
+  unsigned int source_height,
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width,
+  unsigned int dest_height
+) {
+  unsigned int i, k;
+  unsigned int src_band_height  = 0;
+  unsigned int dest_band_height = 0;
+
+  /* suggested scale factors */
+  int hs = si->HScale;
+  int hr = si->HRatio;
+  int vs = si->VScale;
+  int vr = si->VRatio;
+
+  /* assume the ratios are scalable instead of should be centered */
+  int ratio_scalable = 1;
+
+  const unsigned char *source_base = ((source_pitch >= 0) ? source : (source + ((source_height - 1) * source_pitch)));
+  const unsigned char *line_src;
+
+  void (*horiz_line_scale)(const unsigned char *, unsigned int, unsigned char *, unsigned int) = NULL;
+  void (*vert_band_scale)(unsigned char *, unsigned int, unsigned int) = NULL;
+  void (*last_vert_band_scale)(unsigned char *, unsigned int, unsigned int) = NULL;
+
+  (void) si;
+
+  /* find out the ratio for each direction */
+  switch (hr * 30 / hs) {
     case 24:
-        /* 4-5 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_4_5_scale;
-        break;
+      /* 4-5 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_4_5_scale;
+      break;
     case 22:
-        /* 3-4 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_3_4_scale;
-        break;
+      /* 3-4 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_3_4_scale;
+      break;
 
     case 20:
-        /* 4-5 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_2_3_scale;
-        break;
+      /* 4-5 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_2_3_scale;
+      break;
     case 18:
-        /* 3-5 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_3_5_scale;
-        break;
+      /* 3-5 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_3_5_scale;
+      break;
     case 15:
-        /* 1-2 Scale in Width direction */
-        horiz_line_scale = vp8_horizontal_line_1_2_scale;
-        break;
+      /* 1-2 Scale in Width direction */
+      horiz_line_scale = vp8_horizontal_line_1_2_scale;
+      break;
     case 30:
-        /* no scale in Width direction */
-        horiz_line_scale = horizontal_line_copy;
-        break;
+      /* no scale in Width direction */
+      horiz_line_scale = horizontal_line_copy;
+      break;
     default:
-        /* The ratio is not acceptable now */
-        /* throw("The ratio is not acceptable for now!"); */
-        ratio_scalable = 0;
-        break;
-    }
+      /* The ratio is not acceptable now */
+      /* throw("The ratio is not acceptable for now!"); */
+      ratio_scalable = 0;
+      break;
+  }
 
-    switch (vr * 30 / vs)
-    {
+  switch (vr * 30 / vs) {
     case 24:
-        /* 4-5 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_4_5_scale;
-        last_vert_band_scale = vp8_last_vertical_band_4_5_scale;
-        src_band_height     = 4;
-        dest_band_height    = 5;
-        break;
+      /* 4-5 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_4_5_scale;
+      last_vert_band_scale = vp8_last_vertical_band_4_5_scale;
+      src_band_height     = 4;
+      dest_band_height    = 5;
+      break;
     case 22:
-        /* 3-4 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_3_4_scale;
-        last_vert_band_scale = vp8_last_vertical_band_3_4_scale;
-        src_band_height     = 3;
-        dest_band_height    = 4;
-        break;
+      /* 3-4 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_3_4_scale;
+      last_vert_band_scale = vp8_last_vertical_band_3_4_scale;
+      src_band_height     = 3;
+      dest_band_height    = 4;
+      break;
     case 20:
-        /* 2-3 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_2_3_scale;
-        last_vert_band_scale = vp8_last_vertical_band_2_3_scale;
-        src_band_height     = 2;
-        dest_band_height    = 3;
-        break;
+      /* 2-3 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_2_3_scale;
+      last_vert_band_scale = vp8_last_vertical_band_2_3_scale;
+      src_band_height     = 2;
+      dest_band_height    = 3;
+      break;
     case 18:
-        /* 3-5 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_3_5_scale;
-        last_vert_band_scale = vp8_last_vertical_band_3_5_scale;
-        src_band_height     = 3;
-        dest_band_height    = 5;
-        break;
+      /* 3-5 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_3_5_scale;
+      last_vert_band_scale = vp8_last_vertical_band_3_5_scale;
+      src_band_height     = 3;
+      dest_band_height    = 5;
+      break;
     case 15:
-        /* 1-2 Scale in vertical direction */
-        vert_band_scale     = vp8_vertical_band_1_2_scale;
-        last_vert_band_scale = vp8_last_vertical_band_1_2_scale;
-        src_band_height     = 1;
-        dest_band_height    = 2;
-        break;
+      /* 1-2 Scale in vertical direction */
+      vert_band_scale     = vp8_vertical_band_1_2_scale;
+      last_vert_band_scale = vp8_last_vertical_band_1_2_scale;
+      src_band_height     = 1;
+      dest_band_height    = 2;
+      break;
     case 30:
-        /* no scale in Width direction */
-        vert_band_scale     = null_scale;
-        last_vert_band_scale = null_scale;
-        src_band_height     = 4;
-        dest_band_height    = 4;
-        break;
+      /* no scale in Width direction */
+      vert_band_scale     = null_scale;
+      last_vert_band_scale = null_scale;
+      src_band_height     = 4;
+      dest_band_height    = 4;
+      break;
     default:
-        /* The ratio is not acceptable now */
-        /* throw("The ratio is not acceptable for now!"); */
-        ratio_scalable = 0;
-        break;
-    }
+      /* The ratio is not acceptable now */
+      /* throw("The ratio is not acceptable for now!"); */
+      ratio_scalable = 0;
+      break;
+  }
 
-    if (ratio_scalable == 0)
-        return ratio_scalable;
+  if (ratio_scalable == 0)
+    return ratio_scalable;
 
-    horiz_line_scale(source, source_width, dest, dest_width);
+  horiz_line_scale(source, source_width, dest, dest_width);
 
-    /* except last band */
-    for (k = 0; k < (dest_height + dest_band_height - 1) / dest_band_height - 1; k++)
-    {
-        /* scale one band horizontally */
-        for (i = 1; i < src_band_height; i++)
-        {
-            /* Trap case where we could read off the base of the source buffer */
-            line_src = source + i * source_pitch;
+  /* except last band */
+  for (k = 0; k < (dest_height + dest_band_height - 1) / dest_band_height - 1; k++) {
+    /* scale one band horizontally */
+    for (i = 1; i < src_band_height; i++) {
+      /* Trap case where we could read off the base of the source buffer */
+      line_src = source + i * source_pitch;
 
-            if (line_src < source_base)
-                line_src = source_base;
+      if (line_src < source_base)
+        line_src = source_base;
 
-            horiz_line_scale(line_src, source_width,
-                             dest + i * dest_pitch, dest_width);
-        }
+      horiz_line_scale(line_src, source_width,
+                       dest + i * dest_pitch, dest_width);
+    }
 
-        /* first line of next band */
-        /* Trap case where we could read off the base of the source buffer */
-        line_src = source + src_band_height * source_pitch;
+    /* first line of next band */
+    /* Trap case where we could read off the base of the source buffer */
+    line_src = source + src_band_height * source_pitch;
 
-        if (line_src < source_base)
-            line_src = source_base;
+    if (line_src < source_base)
+      line_src = source_base;
 
-        horiz_line_scale(line_src, source_width,
-                         dest + dest_band_height * dest_pitch,
-                         dest_width);
+    horiz_line_scale(line_src, source_width,
+                     dest + dest_band_height * dest_pitch,
+                     dest_width);
 
-        /* Vertical scaling is in place */
-        vert_band_scale(dest, dest_pitch, dest_width);
+    /* Vertical scaling is in place */
+    vert_band_scale(dest, dest_pitch, dest_width);
 
-        /* Next band... */
-        source += src_band_height  * source_pitch;
-        dest   += dest_band_height * dest_pitch;
-    }
+    /* Next band... */
+    source += src_band_height  * source_pitch;
+    dest   += dest_band_height * dest_pitch;
+  }
 
-    /* scale one band horizontally */
-    for (i = 1; i < src_band_height; i++)
-    {
-        /* Trap case where we could read off the base of the source buffer */
-        line_src = source + i * source_pitch;
+  /* scale one band horizontally */
+  for (i = 1; i < src_band_height; i++) {
+    /* Trap case where we could read off the base of the source buffer */
+    line_src = source + i * source_pitch;
 
-        if (line_src < source_base)
-            line_src = source_base;
+    if (line_src < source_base)
+      line_src = source_base;
 
-        horiz_line_scale(line_src, source_width,
-                         dest + i * dest_pitch,
-                         dest_width);
-    }
+    horiz_line_scale(line_src, source_width,
+                     dest + i * dest_pitch,
+                     dest_width);
+  }
 
-    /* Vertical scaling is in place */
-    last_vert_band_scale(dest, dest_pitch, dest_width);
+  /* Vertical scaling is in place */
+  last_vert_band_scale(dest, dest_pitch, dest_width);
 
-    return ratio_scalable;
+  return ratio_scalable;
 }
 
 /****************************************************************************
@@ -849,70 +808,69 @@ int any_ratio_2d_scale
  *
  ****************************************************************************/
 static
-int any_ratio_frame_scale(SCALE_VARS *scale_vars, int YOffset, int UVOffset)
-{
-    int i;
-    int ew;
-    int eh;
-
-    /* suggested scale factors */
-    int hs = scale_vars->HScale;
-    int hr = scale_vars->HRatio;
-    int vs = scale_vars->VScale;
-    int vr = scale_vars->VRatio;
-
-    int ratio_scalable = 1;
-
-    int sw = (scale_vars->expanded_frame_width * hr + hs - 1) / hs;
-    int sh = (scale_vars->expanded_frame_height * vr + vs - 1) / vs;
-    int dw = scale_vars->expanded_frame_width;
-    int dh = scale_vars->expanded_frame_height;
-    YV12_BUFFER_CONFIG *src_yuv_config = scale_vars->src_yuv_config;
-    YV12_BUFFER_CONFIG *dst_yuv_config = scale_vars->dst_yuv_config;
-
-    if (hr == 3)
-        ew = (sw + 2) / 3 * 3 * hs / hr;
-    else
-        ew = (sw + 7) / 8 * 8 * hs / hr;
-
-    if (vr == 3)
-        eh = (sh + 2) / 3 * 3 * vs / vr;
-    else
-        eh = (sh + 7) / 8 * 8 * vs / vr;
-
-    ratio_scalable = any_ratio_2d_scale(scale_vars,
-                                        (const unsigned char *)src_yuv_config->y_buffer,
-                                        src_yuv_config->y_stride, sw, sh,
-                                        (unsigned char *) dst_yuv_config->y_buffer + YOffset,
-                                        dst_yuv_config->y_stride, dw, dh);
-
-    for (i = 0; i < eh; i++)
-        duck_memset(dst_yuv_config->y_buffer + YOffset + i * dst_yuv_config->y_stride + dw, 0, ew - dw);
-
-    for (i = dh; i < eh; i++)
-        duck_memset(dst_yuv_config->y_buffer + YOffset + i * dst_yuv_config->y_stride, 0, ew);
-
-    if (ratio_scalable == 0)
-        return ratio_scalable;
+int any_ratio_frame_scale(SCALE_VARS *scale_vars, int YOffset, int UVOffset) {
+  int i;
+  int ew;
+  int eh;
+
+  /* suggested scale factors */
+  int hs = scale_vars->HScale;
+  int hr = scale_vars->HRatio;
+  int vs = scale_vars->VScale;
+  int vr = scale_vars->VRatio;
+
+  int ratio_scalable = 1;
+
+  int sw = (scale_vars->expanded_frame_width * hr + hs - 1) / hs;
+  int sh = (scale_vars->expanded_frame_height * vr + vs - 1) / vs;
+  int dw = scale_vars->expanded_frame_width;
+  int dh = scale_vars->expanded_frame_height;
+  YV12_BUFFER_CONFIG *src_yuv_config = scale_vars->src_yuv_config;
+  YV12_BUFFER_CONFIG *dst_yuv_config = scale_vars->dst_yuv_config;
+
+  if (hr == 3)
+    ew = (sw + 2) / 3 * 3 * hs / hr;
+  else
+    ew = (sw + 7) / 8 * 8 * hs / hr;
+
+  if (vr == 3)
+    eh = (sh + 2) / 3 * 3 * vs / vr;
+  else
+    eh = (sh + 7) / 8 * 8 * vs / vr;
+
+  ratio_scalable = any_ratio_2d_scale(scale_vars,
+                                      (const unsigned char *)src_yuv_config->y_buffer,
+                                      src_yuv_config->y_stride, sw, sh,
+                                      (unsigned char *) dst_yuv_config->y_buffer + YOffset,
+                                      dst_yuv_config->y_stride, dw, dh);
+
+  for (i = 0; i < eh; i++)
+    duck_memset(dst_yuv_config->y_buffer + YOffset + i * dst_yuv_config->y_stride + dw, 0, ew - dw);
+
+  for (i = dh; i < eh; i++)
+    duck_memset(dst_yuv_config->y_buffer + YOffset + i * dst_yuv_config->y_stride, 0, ew);
+
+  if (ratio_scalable == 0)
+    return ratio_scalable;
 
-    sw = (sw + 1) >> 1;
-    sh = (sh + 1) >> 1;
-    dw = (dw + 1) >> 1;
-    dh = (dh + 1) >> 1;
+  sw = (sw + 1) >> 1;
+  sh = (sh + 1) >> 1;
+  dw = (dw + 1) >> 1;
+  dh = (dh + 1) >> 1;
 
-    any_ratio_2d_scale(scale_vars,
-                       (const unsigned char *)src_yuv_config->u_buffer,
-                       src_yuv_config->y_stride / 2, sw, sh,
-                       (unsigned char *)dst_yuv_config->u_buffer + UVOffset,
-                       dst_yuv_config->uv_stride, dw, dh);
+  any_ratio_2d_scale(scale_vars,
+                     (const unsigned char *)src_yuv_config->u_buffer,
+                     src_yuv_config->y_stride / 2, sw, sh,
+                     (unsigned char *)dst_yuv_config->u_buffer + UVOffset,
+                     dst_yuv_config->uv_stride, dw, dh);
 
-    any_ratio_2d_scale(scale_vars,
-                       (const unsigned char *)src_yuv_config->v_buffer,
-                       src_yuv_config->y_stride / 2, sw, sh,
-                       (unsigned char *)dst_yuv_config->v_buffer + UVOffset,
-                       dst_yuv_config->uv_stride, dw, dh);
+  any_ratio_2d_scale(scale_vars,
+                     (const unsigned char *)src_yuv_config->v_buffer,
+                     src_yuv_config->y_stride / 2, sw, sh,
+                     (unsigned char *)dst_yuv_config->v_buffer + UVOffset,
+                     dst_yuv_config->uv_stride, dw, dh);
 
-    return ratio_scalable;
+  return ratio_scalable;
 }
 
 /****************************************************************************
@@ -931,52 +889,48 @@ int any_ratio_frame_scale(SCALE_VARS *scale_vars, int YOffset, int UVOffset)
  *
  ****************************************************************************/
 static void
-center_image(YV12_BUFFER_CONFIG *src_yuv_config, YV12_BUFFER_CONFIG *dst_yuv_config)
-{
-    int i;
-    int row_offset, col_offset;
-    unsigned char *src_data_pointer;
-    unsigned char *dst_data_pointer;
-
-    /* center values */
-    row_offset = (dst_yuv_config->y_height - src_yuv_config->y_height) / 2;
-    col_offset = (dst_yuv_config->y_width - src_yuv_config->y_width) / 2;
-
-    /* Y's */
-    src_data_pointer = src_yuv_config->y_buffer;
-    dst_data_pointer = (unsigned char *)dst_yuv_config->y_buffer + (row_offset * dst_yuv_config->y_stride) + col_offset;
-
-    for (i = 0; i < src_yuv_config->y_height; i++)
-    {
-        duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->y_width);
-        dst_data_pointer += dst_yuv_config->y_stride;
-        src_data_pointer += src_yuv_config->y_stride;
-    }
-
-    row_offset /= 2;
-    col_offset /= 2;
-
-    /* U's */
-    src_data_pointer = src_yuv_config->u_buffer;
-    dst_data_pointer = (unsigned char *)dst_yuv_config->u_buffer + (row_offset * dst_yuv_config->uv_stride) + col_offset;
-
-    for (i = 0; i < src_yuv_config->uv_height; i++)
-    {
-        duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->uv_width);
-        dst_data_pointer += dst_yuv_config->uv_stride;
-        src_data_pointer += src_yuv_config->uv_stride;
-    }
-
-    /* V's */
-    src_data_pointer = src_yuv_config->v_buffer;
-    dst_data_pointer = (unsigned char *)dst_yuv_config->v_buffer + (row_offset * dst_yuv_config->uv_stride) + col_offset;
-
-    for (i = 0; i < src_yuv_config->uv_height; i++)
-    {
-        duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->uv_width);
-        dst_data_pointer += dst_yuv_config->uv_stride;
-        src_data_pointer += src_yuv_config->uv_stride;
-    }
+center_image(YV12_BUFFER_CONFIG *src_yuv_config, YV12_BUFFER_CONFIG *dst_yuv_config) {
+  int i;
+  int row_offset, col_offset;
+  unsigned char *src_data_pointer;
+  unsigned char *dst_data_pointer;
+
+  /* center values */
+  row_offset = (dst_yuv_config->y_height - src_yuv_config->y_height) / 2;
+  col_offset = (dst_yuv_config->y_width - src_yuv_config->y_width) / 2;
+
+  /* Y's */
+  src_data_pointer = src_yuv_config->y_buffer;
+  dst_data_pointer = (unsigned char *)dst_yuv_config->y_buffer + (row_offset * dst_yuv_config->y_stride) + col_offset;
+
+  for (i = 0; i < src_yuv_config->y_height; i++) {
+    duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->y_width);
+    dst_data_pointer += dst_yuv_config->y_stride;
+    src_data_pointer += src_yuv_config->y_stride;
+  }
+
+  row_offset /= 2;
+  col_offset /= 2;
+
+  /* U's */
+  src_data_pointer = src_yuv_config->u_buffer;
+  dst_data_pointer = (unsigned char *)dst_yuv_config->u_buffer + (row_offset * dst_yuv_config->uv_stride) + col_offset;
+
+  for (i = 0; i < src_yuv_config->uv_height; i++) {
+    duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->uv_width);
+    dst_data_pointer += dst_yuv_config->uv_stride;
+    src_data_pointer += src_yuv_config->uv_stride;
+  }
+
+  /* V's */
+  src_data_pointer = src_yuv_config->v_buffer;
+  dst_data_pointer = (unsigned char *)dst_yuv_config->v_buffer + (row_offset * dst_yuv_config->uv_stride) + col_offset;
+
+  for (i = 0; i < src_yuv_config->uv_height; i++) {
+    duck_memcpy(dst_data_pointer, src_data_pointer, src_yuv_config->uv_width);
+    dst_data_pointer += dst_yuv_config->uv_stride;
+    src_data_pointer += src_yuv_config->uv_stride;
+  }
 }
 
 /****************************************************************************
@@ -999,61 +953,58 @@ center_image(YV12_BUFFER_CONFIG *src_yuv_config, YV12_BUFFER_CONFIG *dst_yuv_con
 void
 vp8_yv12_scale_or_center
 (
-    YV12_BUFFER_CONFIG *src_yuv_config,
-    YV12_BUFFER_CONFIG *dst_yuv_config,
-    int expanded_frame_width,
-    int expanded_frame_height,
-    int scaling_mode,
-    int HScale,
-    int HRatio,
-    int VScale,
-    int VRatio
-)
-{
-    /*if ( ppi->post_processing_level )
-          update_umvborder ( ppi, frame_buffer );*/
-
-
-    switch (scaling_mode)
-    {
+  YV12_BUFFER_CONFIG *src_yuv_config,
+  YV12_BUFFER_CONFIG *dst_yuv_config,
+  int expanded_frame_width,
+  int expanded_frame_height,
+  int scaling_mode,
+  int HScale,
+  int HRatio,
+  int VScale,
+  int VRatio
+) {
+  /*if ( ppi->post_processing_level )
+        update_umvborder ( ppi, frame_buffer );*/
+
+
+  switch (scaling_mode) {
     case SCALE_TO_FIT:
-    case MAINTAIN_ASPECT_RATIO:
-    {
-        SCALE_VARS scale_vars;
-        /* center values */
+    case MAINTAIN_ASPECT_RATIO: {
+      SCALE_VARS scale_vars;
+      /* center values */
 #if 1
-        int row = (dst_yuv_config->y_height - expanded_frame_height) / 2;
-        int col = (dst_yuv_config->y_width  - expanded_frame_width) / 2;
-        /*int YOffset  = row * dst_yuv_config->y_width + col;
-        int UVOffset = (row>>1) * dst_yuv_config->uv_width + (col>>1);*/
-        int YOffset  = row * dst_yuv_config->y_stride + col;
-        int UVOffset = (row >> 1) * dst_yuv_config->uv_stride + (col >> 1);
+      int row = (dst_yuv_config->y_height - expanded_frame_height) / 2;
+      int col = (dst_yuv_config->y_width  - expanded_frame_width) / 2;
+      /*int YOffset  = row * dst_yuv_config->y_width + col;
+      int UVOffset = (row>>1) * dst_yuv_config->uv_width + (col>>1);*/
+      int YOffset  = row * dst_yuv_config->y_stride + col;
+      int UVOffset = (row >> 1) * dst_yuv_config->uv_stride + (col >> 1);
 #else
-        int row = (src_yuv_config->y_height - expanded_frame_height) / 2;
-        int col = (src_yuv_config->y_width  - expanded_frame_width) / 2;
-        int YOffset  = row * src_yuv_config->y_width + col;
-        int UVOffset = (row >> 1) * src_yuv_config->uv_width + (col >> 1);
+      int row = (src_yuv_config->y_height - expanded_frame_height) / 2;
+      int col = (src_yuv_config->y_width  - expanded_frame_width) / 2;
+      int YOffset  = row * src_yuv_config->y_width + col;
+      int UVOffset = (row >> 1) * src_yuv_config->uv_width + (col >> 1);
 #endif
 
-        scale_vars.dst_yuv_config = dst_yuv_config;
-        scale_vars.src_yuv_config = src_yuv_config;
-        scale_vars.HScale = HScale;
-        scale_vars.HRatio = HRatio;
-        scale_vars.VScale = VScale;
-        scale_vars.VRatio = VRatio;
-        scale_vars.expanded_frame_width = expanded_frame_width;
-        scale_vars.expanded_frame_height = expanded_frame_height;
+      scale_vars.dst_yuv_config = dst_yuv_config;
+      scale_vars.src_yuv_config = src_yuv_config;
+      scale_vars.HScale = HScale;
+      scale_vars.HRatio = HRatio;
+      scale_vars.VScale = VScale;
+      scale_vars.VRatio = VRatio;
+      scale_vars.expanded_frame_width = expanded_frame_width;
+      scale_vars.expanded_frame_height = expanded_frame_height;
 
-        /* perform center and scale */
-        any_ratio_frame_scale(&scale_vars, YOffset, UVOffset);
+      /* perform center and scale */
+      any_ratio_frame_scale(&scale_vars, YOffset, UVOffset);
 
-        break;
+      break;
     }
     case CENTER:
-        center_image(src_yuv_config, dst_yuv_config);
-        break;
+      center_image(src_yuv_config, dst_yuv_config);
+      break;
 
     default:
-        break;
-    }
+      break;
+  }
 }
index eff594e..4cb2a41 100644 (file)
  *
  ****************************************************************************/
 int
-vp8_yv12_de_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf)
-{
-    if (ybf)
-    {
-        vpx_free(ybf->buffer_alloc);
-
-        /* buffer_alloc isn't accessed by most functions.  Rather y_buffer,
-          u_buffer and v_buffer point to buffer_alloc and are used.  Clear out
-          all of this so that a freed pointer isn't inadvertently used */
-        vpx_memset (ybf, 0, sizeof (YV12_BUFFER_CONFIG));
-    }
-    else
-    {
-        return -1;
-    }
-
-    return 0;
+vp8_yv12_de_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf) {
+  if (ybf) {
+    vpx_free(ybf->buffer_alloc);
+
+    /* buffer_alloc isn't accessed by most functions.  Rather y_buffer,
+      u_buffer and v_buffer point to buffer_alloc and are used.  Clear out
+      all of this so that a freed pointer isn't inadvertently used */
+    vpx_memset(ybf, 0, sizeof(YV12_BUFFER_CONFIG));
+  } else {
+    return -1;
+  }
+
+  return 0;
 }
 
 /****************************************************************************
  *
  ****************************************************************************/
 int
-vp8_yv12_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf, int width, int height, int border)
-{
-/*NOTE:*/
-
-    if (ybf)
-    {
-        int y_stride = ((width + 2 * border) + 31) & ~31;
-        int yplane_size = (height + 2 * border) * y_stride;
-        int uv_width = width >> 1;
-        int uv_height = height >> 1;
-        /** There is currently a bunch of code which assumes
-          *  uv_stride == y_stride/2, so enforce this here. */
-        int uv_stride = y_stride >> 1;
-        int uvplane_size = (uv_height + border) * uv_stride;
-
-        vp8_yv12_de_alloc_frame_buffer(ybf);
-
-        /** Only support allocating buffers that have a height and width that
-          *  are multiples of 16, and a border that's a multiple of 32.
-          * The border restriction is required to get 16-byte alignment of the
-          *  start of the chroma rows without intoducing an arbitrary gap
-          *  between planes, which would break the semantics of things like
-          *  vpx_img_set_rect(). */
-        if ((width & 0xf) | (height & 0xf) | (border & 0x1f))
-            return -3;
-
-        ybf->y_width  = width;
-        ybf->y_height = height;
-        ybf->y_stride = y_stride;
-
-        ybf->uv_width = uv_width;
-        ybf->uv_height = uv_height;
-        ybf->uv_stride = uv_stride;
-
-        ybf->border = border;
-        ybf->frame_size = yplane_size + 2 * uvplane_size;
-
-        ybf->buffer_alloc = (unsigned char *) vpx_memalign(32, ybf->frame_size);
-
-        if (ybf->buffer_alloc == NULL)
-            return -1;
-
-        ybf->y_buffer = ybf->buffer_alloc + (border * y_stride) + border;
-        ybf->u_buffer = ybf->buffer_alloc + yplane_size + (border / 2  * uv_stride) + border / 2;
-        ybf->v_buffer = ybf->buffer_alloc + yplane_size + uvplane_size + (border / 2  * uv_stride) + border / 2;
-
-        ybf->corrupted = 0; /* assume not currupted by errors */
-    }
-    else
-    {
-        return -2;
-    }
-
-    return 0;
+vp8_yv12_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf, int width, int height, int border) {
+  /*NOTE:*/
+
+  if (ybf) {
+    int y_stride = ((width + 2 * border) + 31) & ~31;
+    int yplane_size = (height + 2 * border) * y_stride;
+    int uv_width = width >> 1;
+    int uv_height = height >> 1;
+    /** There is currently a bunch of code which assumes
+      *  uv_stride == y_stride/2, so enforce this here. */
+    int uv_stride = y_stride >> 1;
+    int uvplane_size = (uv_height + border) * uv_stride;
+
+    vp8_yv12_de_alloc_frame_buffer(ybf);
+
+    /** Only support allocating buffers that have a height and width that
+      *  are multiples of 16, and a border that's a multiple of 32.
+      * The border restriction is required to get 16-byte alignment of the
+      *  start of the chroma rows without intoducing an arbitrary gap
+      *  between planes, which would break the semantics of things like
+      *  vpx_img_set_rect(). */
+    if ((width & 0xf) | (height & 0xf) | (border & 0x1f))
+      return -3;
+
+    ybf->y_width  = width;
+    ybf->y_height = height;
+    ybf->y_stride = y_stride;
+
+    ybf->uv_width = uv_width;
+    ybf->uv_height = uv_height;
+    ybf->uv_stride = uv_stride;
+
+    ybf->border = border;
+    ybf->frame_size = yplane_size + 2 * uvplane_size;
+
+    ybf->buffer_alloc = (unsigned char *) vpx_memalign(32, ybf->frame_size);
+
+    if (ybf->buffer_alloc == NULL)
+      return -1;
+
+    ybf->y_buffer = ybf->buffer_alloc + (border * y_stride) + border;
+    ybf->u_buffer = ybf->buffer_alloc + yplane_size + (border / 2  * uv_stride) + border / 2;
+    ybf->v_buffer = ybf->buffer_alloc + yplane_size + uvplane_size + (border / 2  * uv_stride) + border / 2;
+
+    ybf->corrupted = 0; /* assume not currupted by errors */
+  } else {
+    return -2;
+  }
+
+  return 0;
 }
index 638633b..247078c 100644 (file)
  *
  ****************************************************************************/
 void
-vp8_yv12_extend_frame_borders_c(YV12_BUFFER_CONFIG *ybf)
-{
-    int i;
-    unsigned char *src_ptr1, *src_ptr2;
-    unsigned char *dest_ptr1, *dest_ptr2;
-
-    unsigned int Border;
-    int plane_stride;
-    int plane_height;
-    int plane_width;
-
-    /***********/
-    /* Y Plane */
-    /***********/
-    Border = ybf->border;
-    plane_stride = ybf->y_stride;
-    plane_height = ybf->y_height;
-    plane_width = ybf->y_width;
-
-    /* copy the left and right most columns out */
-    src_ptr1 = ybf->y_buffer;
-    src_ptr2 = src_ptr1 + plane_width - 1;
-    dest_ptr1 = src_ptr1 - Border;
-    dest_ptr2 = src_ptr2 + 1;
-
-    for (i = 0; i < plane_height; i++)
-    {
-        vpx_memset(dest_ptr1, src_ptr1[0], Border);
-        vpx_memset(dest_ptr2, src_ptr2[0], Border);
-        src_ptr1  += plane_stride;
-        src_ptr2  += plane_stride;
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    /* Now copy the top and bottom source lines into each line of the respective borders */
-    src_ptr1 = ybf->y_buffer - Border;
-    src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
-    dest_ptr1 = src_ptr1 - (Border * plane_stride);
-    dest_ptr2 = src_ptr2 + plane_stride;
-
-    for (i = 0; i < (int)Border; i++)
-    {
-        vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
-        vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-
-    /***********/
-    /* U Plane */
-    /***********/
-    plane_stride = ybf->uv_stride;
-    plane_height = ybf->uv_height;
-    plane_width = ybf->uv_width;
-    Border /= 2;
-
-    /* copy the left and right most columns out */
-    src_ptr1 = ybf->u_buffer;
-    src_ptr2 = src_ptr1 + plane_width - 1;
-    dest_ptr1 = src_ptr1 - Border;
-    dest_ptr2 = src_ptr2 + 1;
-
-    for (i = 0; i < plane_height; i++)
-    {
-        vpx_memset(dest_ptr1, src_ptr1[0], Border);
-        vpx_memset(dest_ptr2, src_ptr2[0], Border);
-        src_ptr1  += plane_stride;
-        src_ptr2  += plane_stride;
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    /* Now copy the top and bottom source lines into each line of the respective borders */
-    src_ptr1 = ybf->u_buffer - Border;
-    src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
-    dest_ptr1 = src_ptr1 - (Border * plane_stride);
-    dest_ptr2 = src_ptr2 + plane_stride;
-
-    for (i = 0; i < (int)(Border); i++)
-    {
-        vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
-        vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    /***********/
-    /* V Plane */
-    /***********/
-
-    /* copy the left and right most columns out */
-    src_ptr1 = ybf->v_buffer;
-    src_ptr2 = src_ptr1 + plane_width - 1;
-    dest_ptr1 = src_ptr1 - Border;
-    dest_ptr2 = src_ptr2 + 1;
-
-    for (i = 0; i < plane_height; i++)
-    {
-        vpx_memset(dest_ptr1, src_ptr1[0], Border);
-        vpx_memset(dest_ptr2, src_ptr2[0], Border);
-        src_ptr1  += plane_stride;
-        src_ptr2  += plane_stride;
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    /* Now copy the top and bottom source lines into each line of the respective borders */
-    src_ptr1 = ybf->v_buffer - Border;
-    src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
-    dest_ptr1 = src_ptr1 - (Border * plane_stride);
-    dest_ptr2 = src_ptr2 + plane_stride;
-
-    for (i = 0; i < (int)(Border); i++)
-    {
-        vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
-        vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
+vp8_yv12_extend_frame_borders_c(YV12_BUFFER_CONFIG *ybf) {
+  int i;
+  unsigned char *src_ptr1, *src_ptr2;
+  unsigned char *dest_ptr1, *dest_ptr2;
+
+  unsigned int Border;
+  int plane_stride;
+  int plane_height;
+  int plane_width;
+
+  /***********/
+  /* Y Plane */
+  /***********/
+  Border = ybf->border;
+  plane_stride = ybf->y_stride;
+  plane_height = ybf->y_height;
+  plane_width = ybf->y_width;
+
+  /* copy the left and right most columns out */
+  src_ptr1 = ybf->y_buffer;
+  src_ptr2 = src_ptr1 + plane_width - 1;
+  dest_ptr1 = src_ptr1 - Border;
+  dest_ptr2 = src_ptr2 + 1;
+
+  for (i = 0; i < plane_height; i++) {
+    vpx_memset(dest_ptr1, src_ptr1[0], Border);
+    vpx_memset(dest_ptr2, src_ptr2[0], Border);
+    src_ptr1  += plane_stride;
+    src_ptr2  += plane_stride;
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  /* Now copy the top and bottom source lines into each line of the respective borders */
+  src_ptr1 = ybf->y_buffer - Border;
+  src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
+  dest_ptr1 = src_ptr1 - (Border * plane_stride);
+  dest_ptr2 = src_ptr2 + plane_stride;
+
+  for (i = 0; i < (int)Border; i++) {
+    vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
+    vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+
+  /***********/
+  /* U Plane */
+  /***********/
+  plane_stride = ybf->uv_stride;
+  plane_height = ybf->uv_height;
+  plane_width = ybf->uv_width;
+  Border /= 2;
+
+  /* copy the left and right most columns out */
+  src_ptr1 = ybf->u_buffer;
+  src_ptr2 = src_ptr1 + plane_width - 1;
+  dest_ptr1 = src_ptr1 - Border;
+  dest_ptr2 = src_ptr2 + 1;
+
+  for (i = 0; i < plane_height; i++) {
+    vpx_memset(dest_ptr1, src_ptr1[0], Border);
+    vpx_memset(dest_ptr2, src_ptr2[0], Border);
+    src_ptr1  += plane_stride;
+    src_ptr2  += plane_stride;
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  /* Now copy the top and bottom source lines into each line of the respective borders */
+  src_ptr1 = ybf->u_buffer - Border;
+  src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
+  dest_ptr1 = src_ptr1 - (Border * plane_stride);
+  dest_ptr2 = src_ptr2 + plane_stride;
+
+  for (i = 0; i < (int)(Border); i++) {
+    vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
+    vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  /***********/
+  /* V Plane */
+  /***********/
+
+  /* copy the left and right most columns out */
+  src_ptr1 = ybf->v_buffer;
+  src_ptr2 = src_ptr1 + plane_width - 1;
+  dest_ptr1 = src_ptr1 - Border;
+  dest_ptr2 = src_ptr2 + 1;
+
+  for (i = 0; i < plane_height; i++) {
+    vpx_memset(dest_ptr1, src_ptr1[0], Border);
+    vpx_memset(dest_ptr2, src_ptr2[0], Border);
+    src_ptr1  += plane_stride;
+    src_ptr2  += plane_stride;
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  /* Now copy the top and bottom source lines into each line of the respective borders */
+  src_ptr1 = ybf->v_buffer - Border;
+  src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
+  dest_ptr1 = src_ptr1 - (Border * plane_stride);
+  dest_ptr2 = src_ptr2 + plane_stride;
+
+  for (i = 0; i < (int)(Border); i++) {
+    vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
+    vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
 }
 
 
 static void
-extend_frame_borders_yonly_c(YV12_BUFFER_CONFIG *ybf)
-{
-    int i;
-    unsigned char *src_ptr1, *src_ptr2;
-    unsigned char *dest_ptr1, *dest_ptr2;
-
-    unsigned int Border;
-    int plane_stride;
-    int plane_height;
-    int plane_width;
-
-    /***********/
-    /* Y Plane */
-    /***********/
-    Border = ybf->border;
-    plane_stride = ybf->y_stride;
-    plane_height = ybf->y_height;
-    plane_width = ybf->y_width;
-
-    /* copy the left and right most columns out */
-    src_ptr1 = ybf->y_buffer;
-    src_ptr2 = src_ptr1 + plane_width - 1;
-    dest_ptr1 = src_ptr1 - Border;
-    dest_ptr2 = src_ptr2 + 1;
-
-    for (i = 0; i < plane_height; i++)
-    {
-        vpx_memset(dest_ptr1, src_ptr1[0], Border);
-        vpx_memset(dest_ptr2, src_ptr2[0], Border);
-        src_ptr1  += plane_stride;
-        src_ptr2  += plane_stride;
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    /* Now copy the top and bottom source lines into each line of the respective borders */
-    src_ptr1 = ybf->y_buffer - Border;
-    src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
-    dest_ptr1 = src_ptr1 - (Border * plane_stride);
-    dest_ptr2 = src_ptr2 + plane_stride;
-
-    for (i = 0; i < (int)Border; i++)
-    {
-        vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
-        vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
-        dest_ptr1 += plane_stride;
-        dest_ptr2 += plane_stride;
-    }
-
-    plane_stride /= 2;
-    plane_height /= 2;
-    plane_width /= 2;
-    Border /= 2;
+extend_frame_borders_yonly_c(YV12_BUFFER_CONFIG *ybf) {
+  int i;
+  unsigned char *src_ptr1, *src_ptr2;
+  unsigned char *dest_ptr1, *dest_ptr2;
+
+  unsigned int Border;
+  int plane_stride;
+  int plane_height;
+  int plane_width;
+
+  /***********/
+  /* Y Plane */
+  /***********/
+  Border = ybf->border;
+  plane_stride = ybf->y_stride;
+  plane_height = ybf->y_height;
+  plane_width = ybf->y_width;
+
+  /* copy the left and right most columns out */
+  src_ptr1 = ybf->y_buffer;
+  src_ptr2 = src_ptr1 + plane_width - 1;
+  dest_ptr1 = src_ptr1 - Border;
+  dest_ptr2 = src_ptr2 + 1;
+
+  for (i = 0; i < plane_height; i++) {
+    vpx_memset(dest_ptr1, src_ptr1[0], Border);
+    vpx_memset(dest_ptr2, src_ptr2[0], Border);
+    src_ptr1  += plane_stride;
+    src_ptr2  += plane_stride;
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  /* Now copy the top and bottom source lines into each line of the respective borders */
+  src_ptr1 = ybf->y_buffer - Border;
+  src_ptr2 = src_ptr1 + (plane_height * plane_stride) - plane_stride;
+  dest_ptr1 = src_ptr1 - (Border * plane_stride);
+  dest_ptr2 = src_ptr2 + plane_stride;
+
+  for (i = 0; i < (int)Border; i++) {
+    vpx_memcpy(dest_ptr1, src_ptr1, plane_stride);
+    vpx_memcpy(dest_ptr2, src_ptr2, plane_stride);
+    dest_ptr1 += plane_stride;
+    dest_ptr2 += plane_stride;
+  }
+
+  plane_stride /= 2;
+  plane_height /= 2;
+  plane_width /= 2;
+  Border /= 2;
 
 }
 
@@ -221,57 +211,53 @@ extend_frame_borders_yonly_c(YV12_BUFFER_CONFIG *ybf)
  *
  ****************************************************************************/
 void
-vp8_yv12_copy_frame_c(YV12_BUFFER_CONFIG *src_ybc, YV12_BUFFER_CONFIG *dst_ybc)
-{
-    int row;
-    unsigned char *source, *dest;
-
-    source = src_ybc->y_buffer;
-    dest = dst_ybc->y_buffer;
-
-    for (row = 0; row < src_ybc->y_height; row++)
-    {
-        vpx_memcpy(dest, source, src_ybc->y_width);
-        source += src_ybc->y_stride;
-        dest   += dst_ybc->y_stride;
-    }
-
-    source = src_ybc->u_buffer;
-    dest = dst_ybc->u_buffer;
-
-    for (row = 0; row < src_ybc->uv_height; row++)
-    {
-        vpx_memcpy(dest, source, src_ybc->uv_width);
-        source += src_ybc->uv_stride;
-        dest   += dst_ybc->uv_stride;
-    }
-
-    source = src_ybc->v_buffer;
-    dest = dst_ybc->v_buffer;
-
-    for (row = 0; row < src_ybc->uv_height; row++)
-    {
-        vpx_memcpy(dest, source, src_ybc->uv_width);
-        source += src_ybc->uv_stride;
-        dest   += dst_ybc->uv_stride;
-    }
-
-    vp8_yv12_extend_frame_borders_c(dst_ybc);
+vp8_yv12_copy_frame_c(YV12_BUFFER_CONFIG *src_ybc,
+                      YV12_BUFFER_CONFIG *dst_ybc) {
+  int row;
+  unsigned char *source, *dest;
+
+  source = src_ybc->y_buffer;
+  dest = dst_ybc->y_buffer;
+
+  for (row = 0; row < src_ybc->y_height; row++) {
+    vpx_memcpy(dest, source, src_ybc->y_width);
+    source += src_ybc->y_stride;
+    dest   += dst_ybc->y_stride;
+  }
+
+  source = src_ybc->u_buffer;
+  dest = dst_ybc->u_buffer;
+
+  for (row = 0; row < src_ybc->uv_height; row++) {
+    vpx_memcpy(dest, source, src_ybc->uv_width);
+    source += src_ybc->uv_stride;
+    dest   += dst_ybc->uv_stride;
+  }
+
+  source = src_ybc->v_buffer;
+  dest = dst_ybc->v_buffer;
+
+  for (row = 0; row < src_ybc->uv_height; row++) {
+    vpx_memcpy(dest, source, src_ybc->uv_width);
+    source += src_ybc->uv_stride;
+    dest   += dst_ybc->uv_stride;
+  }
+
+  vp8_yv12_extend_frame_borders_c(dst_ybc);
 }
 
-void vp8_yv12_copy_y_c(YV12_BUFFER_CONFIG *src_ybc, YV12_BUFFER_CONFIG *dst_ybc)
-{
-    int row;
-    unsigned char *source, *dest;
+void vp8_yv12_copy_y_c(YV12_BUFFER_CONFIG *src_ybc,
+                       YV12_BUFFER_CONFIG *dst_ybc) {
+  int row;
+  unsigned char *source, *dest;
 
 
-    source = src_ybc->y_buffer;
-    dest = dst_ybc->y_buffer;
+  source = src_ybc->y_buffer;
+  dest = dst_ybc->y_buffer;
 
-    for (row = 0; row < src_ybc->y_height; row++)
-    {
-        vpx_memcpy(dest, source, src_ybc->y_width);
-        source += src_ybc->y_stride;
-        dest   += dst_ybc->y_stride;
-    }
+  for (row = 0; row < src_ybc->y_height; row++) {
+    vpx_memcpy(dest, source, src_ybc->y_width);
+    source += src_ybc->y_stride;
+    dest   += dst_ybc->y_stride;
+  }
 }
index 39de181..c535252 100644 (file)
 
 #include "vpx_scale/yv12config.h"
 
-typedef struct
-{
-    int in_width;
-    int in_height;
-
-    int out_width;
-    int out_height;
-    int max_usable_out_width;
-
-    // numerator for the width and height
-    int nw;
-    int nh;
-    int nh_uv;
-
-    // output to input correspondance array
-    short *l_w;
-    short *l_h;
-    short *l_h_uv;
-
-    // polyphase coefficients
-    short *c_w;
-    short *c_h;
-    short *c_h_uv;
-
-    // buffer for horizontal filtering.
-    unsigned char *hbuf;
-    unsigned char *hbuf_uv;
+typedef struct {
+  int in_width;
+  int in_height;
+
+  int out_width;
+  int out_height;
+  int max_usable_out_width;
+
+  // numerator for the width and height
+  int nw;
+  int nh;
+  int nh_uv;
+
+  // output to input correspondance array
+  short *l_w;
+  short *l_h;
+  short *l_h_uv;
+
+  // polyphase coefficients
+  short *c_w;
+  short *c_h;
+  short *c_h_uv;
+
+  // buffer for horizontal filtering.
+  unsigned char *hbuf;
+  unsigned char *hbuf_uv;
 } BICUBIC_SCALER_STRUCT;
 
 int bicubic_coefficient_setup(int in_width, int in_height, int out_width, int out_height);
index 1476e64..5581385 100644 (file)
 #ifndef SCALE_MODE_H
 #define SCALE_MODE_H
 
-typedef enum
-{
-    MAINTAIN_ASPECT_RATIO   = 0x0,
-    SCALE_TO_FIT            = 0x1,
-    CENTER                  = 0x2,
-    OTHER                   = 0x3
+typedef enum {
+  MAINTAIN_ASPECT_RATIO   = 0x0,
+  SCALE_TO_FIT            = 0x1,
+  CENTER                  = 0x2,
+  OTHER                   = 0x3
 } SCALE_MODE;
 
 
index 8919a24..3c2194d 100644 (file)
 
 #include "vpx_scale/yv12config.h"
 
-extern void vp8_yv12_scale_or_center
-(
-    YV12_BUFFER_CONFIG *src_yuv_config,
-    YV12_BUFFER_CONFIG *dst_yuv_config,
-    int expanded_frame_width,
-    int expanded_frame_height,
-    int scaling_mode,
-    int HScale,
-    int HRatio,
-    int VScale,
-    int VRatio
-);
-extern void vp8_scale_frame
-(
-    YV12_BUFFER_CONFIG *src,
-    YV12_BUFFER_CONFIG *dst,
-    unsigned char *temp_area,
-    unsigned char temp_height,
-    unsigned int hscale,
-    unsigned int hratio,
-    unsigned int vscale,
-    unsigned int vratio,
-    unsigned int interlaced
-);
+extern void vp8_yv12_scale_or_center(YV12_BUFFER_CONFIG *src_yuv_config,
+                                     YV12_BUFFER_CONFIG *dst_yuv_config,
+                                     int expanded_frame_width,
+                                     int expanded_frame_height,
+                                     int scaling_mode,
+                                     int HScale,
+                                     int HRatio,
+                                     int VScale,
+                                     int VRatio);
+
+extern void vp8_scale_frame(YV12_BUFFER_CONFIG *src,
+                            YV12_BUFFER_CONFIG *dst,
+                            unsigned char *temp_area,
+                            unsigned char temp_height,
+                            unsigned int hscale,
+                            unsigned int hratio,
+                            unsigned int vscale,
+                            unsigned int vratio,
+                            unsigned int interlaced);
 
 #endif
index 3711fe5..2d96cc7 100644 (file)
@@ -61,114 +61,112 @@ __declspec(align(16)) const static unsigned short const35_1[] = { 102, 205,  51,
 static
 void horizontal_line_3_5_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    (void) dest_width;
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  (void) dest_width;
 
-    __asm
-    {
+  __asm {
 
-        push ebx
+    push ebx
 
-        mov         esi,    source
-        mov         edi,    dest
+    mov         esi,    source
+    mov         edi,    dest
 
-        mov         ecx,    source_width
-        lea         edx,    [esi+ecx-3];
+    mov         ecx,    source_width
+    lea         edx,    [esi+ecx-3];
 
-        movq        mm5,    const35_1       // mm5 = 66 xx cd xx 33 xx 9a xx
-        movq        mm6,    const35_2       // mm6 = 9a xx 33 xx cd xx 66 xx
+    movq        mm5,    const35_1       // mm5 = 66 xx cd xx 33 xx 9a xx
+    movq        mm6,    const35_2       // mm6 = 9a xx 33 xx cd xx 66 xx
 
-        movq        mm4,    round_values     // mm4 = 80 xx 80 xx 80 xx 80 xx
-        pxor        mm7,    mm7             // clear mm7
+    movq        mm4,    round_values     // mm4 = 80 xx 80 xx 80 xx 80 xx
+    pxor        mm7,    mm7             // clear mm7
 
-        horiz_line_3_5_loop:
+    horiz_line_3_5_loop:
 
-        mov        eax,    DWORD PTR [esi] // eax = 00 01 02 03
-        mov        ebx,    eax
+    mov        eax,    DWORD PTR [esi] // eax = 00 01 02 03
+    mov        ebx,    eax
 
-        and         ebx,    0xffff00        // ebx = xx 01 02 xx
-        mov         ecx,    eax             // ecx = 00 01 02 03
+    and         ebx,    0xffff00        // ebx = xx 01 02 xx
+    mov         ecx,    eax             // ecx = 00 01 02 03
 
-        and         eax,    0xffff0000      // eax = xx xx 02 03
-        xor         ecx,    eax             // ecx = 00 01 xx xx
+    and         eax,    0xffff0000      // eax = xx xx 02 03
+    xor         ecx,    eax             // ecx = 00 01 xx xx
 
-        shr         ebx,    8               // ebx = 01 02 xx xx
-        or          eax,    ebx             // eax = 01 02 02 03
+    shr         ebx,    8               // ebx = 01 02 xx xx
+    or          eax,    ebx             // eax = 01 02 02 03
 
-        shl         ebx,    16              // ebx = xx xx 01 02
-        movd        mm1,    eax             // mm1 = 01 02 02 03 xx xx xx xx
+    shl         ebx,    16              // ebx = xx xx 01 02
+    movd        mm1,    eax             // mm1 = 01 02 02 03 xx xx xx xx
 
-        or          ebx,    ecx             // ebx = 00 01 01 02
-        punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 02 xx 03 xx
+    or          ebx,    ecx             // ebx = 00 01 01 02
+    punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 02 xx 03 xx
 
-        movd        mm0,    ebx             // mm0 = 00 01 01 02
-        pmullw      mm1,    mm6             //
+    movd        mm0,    ebx             // mm0 = 00 01 01 02
+    pmullw      mm1,    mm6             //
 
-        punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 01 xx 02 xx
-        pmullw      mm0,    mm5             //
+    punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 01 xx 02 xx
+    pmullw      mm0,    mm5             //
 
-        mov         [edi],  ebx             // writeoutput 00 xx xx xx
-        add         esi,    3
+    mov         [edi],  ebx             // writeoutput 00 xx xx xx
+    add         esi,    3
 
-        add         edi,    5
-        paddw       mm0,    mm1
+    add         edi,    5
+    paddw       mm0,    mm1
 
-        paddw       mm0,    mm4
-        psrlw       mm0,    8
+    paddw       mm0,    mm4
+    psrlw       mm0,    8
 
-        cmp         esi,    edx
-        packuswb    mm0,    mm7
+    cmp         esi,    edx
+    packuswb    mm0,    mm7
 
-        movd        DWORD Ptr [edi-4], mm0
-        jl          horiz_line_3_5_loop
+    movd        DWORD Ptr [edi-4], mm0
+    jl          horiz_line_3_5_loop
 
-//Exit:
-        mov         eax,    DWORD PTR [esi] // eax = 00 01 02 03
-        mov         ebx,    eax
+// Exit:
+    mov         eax,    DWORD PTR [esi] // eax = 00 01 02 03
+    mov         ebx,    eax
 
-        and         ebx,    0xffff00        // ebx = xx 01 02 xx
-        mov         ecx,    eax             // ecx = 00 01 02 03
+    and         ebx,    0xffff00        // ebx = xx 01 02 xx
+    mov         ecx,    eax             // ecx = 00 01 02 03
 
-        and         eax,    0xffff0000      // eax = xx xx 02 03
-        xor         ecx,    eax             // ecx = 00 01 xx xx
+    and         eax,    0xffff0000      // eax = xx xx 02 03
+    xor         ecx,    eax             // ecx = 00 01 xx xx
 
-        shr         ebx,    8               // ebx = 01 02 xx xx
-        or          eax,    ebx             // eax = 01 02 02 03
+    shr         ebx,    8               // ebx = 01 02 xx xx
+    or          eax,    ebx             // eax = 01 02 02 03
 
-        shl         eax,    8               // eax = xx 01 02 02
-        and         eax,    0xffff0000      // eax = xx xx 02 02
+    shl         eax,    8               // eax = xx 01 02 02
+    and         eax,    0xffff0000      // eax = xx xx 02 02
 
-        or          eax,    ebx             // eax = 01 02 02 02
+    or          eax,    ebx             // eax = 01 02 02 02
 
-        shl         ebx,    16              // ebx = xx xx 01 02
-        movd        mm1,    eax             // mm1 = 01 02 02 02 xx xx xx xx
+    shl         ebx,    16              // ebx = xx xx 01 02
+    movd        mm1,    eax             // mm1 = 01 02 02 02 xx xx xx xx
 
-        or          ebx,    ecx             // ebx = 00 01 01 02
-        punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 02 xx 02 xx
+    or          ebx,    ecx             // ebx = 00 01 01 02
+    punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 02 xx 02 xx
 
-        movd        mm0,    ebx             // mm0 = 00 01 01 02
-        pmullw      mm1,    mm6             //
+    movd        mm0,    ebx             // mm0 = 00 01 01 02
+    pmullw      mm1,    mm6             //
 
-        punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 01 xx 02 xx
-        pmullw      mm0,    mm5             //
+    punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 01 xx 02 xx
+    pmullw      mm0,    mm5             //
 
-        mov         [edi],  ebx             // writeoutput 00 xx xx xx
-        paddw       mm0,    mm1
+    mov         [edi],  ebx             // writeoutput 00 xx xx xx
+    paddw       mm0,    mm1
 
-        paddw       mm0,    mm4
-        psrlw       mm0,    8
+    paddw       mm0,    mm4
+    psrlw       mm0,    8
 
-        packuswb    mm0,    mm7
-        movd        DWORD Ptr [edi+1], mm0
+    packuswb    mm0,    mm7
+    movd        DWORD Ptr [edi+1], mm0
 
-        pop ebx
+    pop ebx
 
-    }
+  }
 
 }
 
@@ -194,120 +192,118 @@ void horizontal_line_3_5_scale_mmx
 static
 void horizontal_line_4_5_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    (void)dest_width;
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  (void)dest_width;
 
-    __asm
-    {
+  __asm {
 
-        mov         esi,    source
-        mov         edi,    dest
+    mov         esi,    source
+    mov         edi,    dest
 
-        mov         ecx,    source_width
-        lea         edx,    [esi+ecx-8];
+    mov         ecx,    source_width
+    lea         edx,    [esi+ecx-8];
 
-        movq        mm5,    const45_1       // mm5 = 33 xx 66 xx 9a xx cd xx
-        movq        mm6,    const45_2       // mm6 = cd xx 9a xx 66 xx 33 xx
+    movq        mm5,    const45_1       // mm5 = 33 xx 66 xx 9a xx cd xx
+    movq        mm6,    const45_2       // mm6 = cd xx 9a xx 66 xx 33 xx
 
-        movq        mm4,    round_values     // mm4 = 80 xx 80 xx 80 xx 80 xx
-        pxor        mm7,    mm7             // clear mm7
+    movq        mm4,    round_values     // mm4 = 80 xx 80 xx 80 xx 80 xx
+    pxor        mm7,    mm7             // clear mm7
 
-        horiz_line_4_5_loop:
+    horiz_line_4_5_loop:
 
-        movq        mm0,    QWORD PTR [esi]           // mm0 = 00 01 02 03 04 05 06 07
-        movq        mm1,    QWORD PTR [esi+1];        // mm1 = 01 02 03 04 05 06 07 08
+    movq        mm0,    QWORD PTR [esi]           // mm0 = 00 01 02 03 04 05 06 07
+    movq        mm1,    QWORD PTR [esi+1];        // mm1 = 01 02 03 04 05 06 07 08
 
-        movq        mm2,    mm0             // mm2 = 00 01 02 03 04 05 06 07
-        movq        mm3,    mm1             // mm3 = 01 02 03 04 05 06 07 08
+    movq        mm2,    mm0             // mm2 = 00 01 02 03 04 05 06 07
+    movq        mm3,    mm1             // mm3 = 01 02 03 04 05 06 07 08
 
-        movd        DWORD PTR [edi],  mm0             // write output 00 xx xx xx
-        punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 02 xx 03 xx
+    movd        DWORD PTR [edi],  mm0             // write output 00 xx xx xx
+    punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 02 xx 03 xx
 
-        punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 03 xx 04 xx
-        pmullw      mm0,    mm5             // 00* 51 01*102 02*154 03*205
+    punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 03 xx 04 xx
+    pmullw      mm0,    mm5             // 00* 51 01*102 02*154 03*205
 
-        pmullw      mm1,    mm6             // 01*205 02*154 03*102 04* 51
-        punpckhbw   mm2,    mm7             // mm2 = 04 xx 05 xx 06 xx 07 xx
+    pmullw      mm1,    mm6             // 01*205 02*154 03*102 04* 51
+    punpckhbw   mm2,    mm7             // mm2 = 04 xx 05 xx 06 xx 07 xx
 
-        movd        DWORD PTR [edi+5], mm2            // write ouput 05 xx xx xx
-        pmullw      mm2,    mm5             // 04* 51 05*102 06*154 07*205
+    movd        DWORD PTR [edi+5], mm2            // write ouput 05 xx xx xx
+    pmullw      mm2,    mm5             // 04* 51 05*102 06*154 07*205
 
-        punpckhbw   mm3,    mm7             // mm3 = 05 xx 06 xx 07 xx 08 xx
-        pmullw      mm3,    mm6             // 05*205 06*154 07*102 08* 51
+    punpckhbw   mm3,    mm7             // mm3 = 05 xx 06 xx 07 xx 08 xx
+    pmullw      mm3,    mm6             // 05*205 06*154 07*102 08* 51
 
-        paddw       mm0,    mm1             // added round values
-        paddw       mm0,    mm4
+    paddw       mm0,    mm1             // added round values
+    paddw       mm0,    mm4
 
-        psrlw       mm0,    8               // output: 01 xx 02 xx 03 xx 04 xx
-        packuswb    mm0,    mm7
+    psrlw       mm0,    8               // output: 01 xx 02 xx 03 xx 04 xx
+    packuswb    mm0,    mm7
 
-        movd        DWORD PTR [edi+1], mm0  // write output 01 02 03 04
-        add         edi,    10
+    movd        DWORD PTR [edi+1], mm0  // write output 01 02 03 04
+    add         edi,    10
 
-        add         esi,    8
-        paddw       mm2,    mm3             //
+    add         esi,    8
+    paddw       mm2,    mm3             //
 
-        paddw       mm2,    mm4             // added round values
-        cmp         esi,    edx
+    paddw       mm2,    mm4             // added round values
+    cmp         esi,    edx
 
-        psrlw       mm2,    8
-        packuswb    mm2,    mm7
+    psrlw       mm2,    8
+    packuswb    mm2,    mm7
 
-        movd        DWORD PTR [edi-4], mm2 // writeoutput 06 07 08 09
-        jl         horiz_line_4_5_loop
+    movd        DWORD PTR [edi-4], mm2 // writeoutput 06 07 08 09
+    jl         horiz_line_4_5_loop
 
-//Exit:
-        movq        mm0,    [esi]           // mm0 = 00 01 02 03 04 05 06 07
-        movq        mm1,    mm0             // mm1 = 00 01 02 03 04 05 06 07
+// Exit:
+    movq        mm0,    [esi]           // mm0 = 00 01 02 03 04 05 06 07
+    movq        mm1,    mm0             // mm1 = 00 01 02 03 04 05 06 07
 
-        movq        mm2,    mm0             // mm2 = 00 01 02 03 04 05 06 07
-        psrlq       mm1,    8               // mm1 = 01 02 03 04 05 06 07 00
+    movq        mm2,    mm0             // mm2 = 00 01 02 03 04 05 06 07
+    psrlq       mm1,    8               // mm1 = 01 02 03 04 05 06 07 00
 
-        movq        mm3,    mask45          // mm3 = 00 00 00 00 00 00 ff 00
-        pand        mm3,    mm1             // mm3 = 00 00 00 00 00 00 07 00
+    movq        mm3,    mask45          // mm3 = 00 00 00 00 00 00 ff 00
+    pand        mm3,    mm1             // mm3 = 00 00 00 00 00 00 07 00
 
-        psllq       mm3,    8               // mm3 = 00 00 00 00 00 00 00 07
-        por         mm1,    mm3             // mm1 = 01 02 03 04 05 06 07 07
+    psllq       mm3,    8               // mm3 = 00 00 00 00 00 00 00 07
+    por         mm1,    mm3             // mm1 = 01 02 03 04 05 06 07 07
 
-        movq        mm3,    mm1
+    movq        mm3,    mm1
 
-        movd        DWORD PTR [edi],  mm0   // write output 00 xx xx xx
-        punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 02 xx 03 xx
+    movd        DWORD PTR [edi],  mm0   // write output 00 xx xx xx
+    punpcklbw   mm0,    mm7             // mm0 = 00 xx 01 xx 02 xx 03 xx
 
-        punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 03 xx 04 xx
-        pmullw      mm0,    mm5             // 00* 51 01*102 02*154 03*205
+    punpcklbw   mm1,    mm7             // mm1 = 01 xx 02 xx 03 xx 04 xx
+    pmullw      mm0,    mm5             // 00* 51 01*102 02*154 03*205
 
-        pmullw      mm1,    mm6             // 01*205 02*154 03*102 04* 51
-        punpckhbw   mm2,    mm7             // mm2 = 04 xx 05 xx 06 xx 07 xx
+    pmullw      mm1,    mm6             // 01*205 02*154 03*102 04* 51
+    punpckhbw   mm2,    mm7             // mm2 = 04 xx 05 xx 06 xx 07 xx
 
-        movd        DWORD PTR [edi+5], mm2  // write ouput 05 xx xx xx
-        pmullw      mm2,    mm5             // 04* 51 05*102 06*154 07*205
+    movd        DWORD PTR [edi+5], mm2  // write ouput 05 xx xx xx
+    pmullw      mm2,    mm5             // 04* 51 05*102 06*154 07*205
 
-        punpckhbw   mm3,    mm7             // mm3 = 05 xx 06 xx 07 xx 08 xx
-        pmullw      mm3,    mm6             // 05*205 06*154 07*102 07* 51
+    punpckhbw   mm3,    mm7             // mm3 = 05 xx 06 xx 07 xx 08 xx
+    pmullw      mm3,    mm6             // 05*205 06*154 07*102 07* 51
 
-        paddw       mm0,    mm1             // added round values
-        paddw       mm0,    mm4
+    paddw       mm0,    mm1             // added round values
+    paddw       mm0,    mm4
 
-        psrlw       mm0,    8               // output: 01 xx 02 xx 03 xx 04 xx
-        packuswb    mm0,    mm7             // 01 02 03 04 xx xx xx xx
+    psrlw       mm0,    8               // output: 01 xx 02 xx 03 xx 04 xx
+    packuswb    mm0,    mm7             // 01 02 03 04 xx xx xx xx
 
-        movd        DWORD PTR [edi+1], mm0  // write output 01 02 03 04
-        paddw       mm2,    mm3             //
+    movd        DWORD PTR [edi+1], mm0  // write output 01 02 03 04
+    paddw       mm2,    mm3             //
 
-        paddw       mm2,    mm4             // added round values
-        psrlw       mm2,    8
+    paddw       mm2,    mm4             // added round values
+    psrlw       mm2,    8
 
-        packuswb    mm2,    mm7
-        movd        DWORD PTR [edi+6], mm2  // writeoutput 06 07 08 09
+    packuswb    mm2,    mm7
+    movd        DWORD PTR [edi+6], mm2  // writeoutput 06 07 08 09
 
 
-    }
+  }
 }
 
 /****************************************************************************
@@ -332,167 +328,165 @@ void horizontal_line_4_5_scale_mmx
 static
 void vertical_band_4_5_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
 
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        lea         edi,    [esi+ecx*2]             // tow lines below
-        add         edi,    ecx                     // three lines below
+    lea         edi,    [esi+ecx*2]             // tow lines below
+    add         edi,    ecx                     // three lines below
 
-        pxor        mm7,    mm7                     // clear out mm7
-        mov         edx,    dest_width               // Loop counter
+    pxor        mm7,    mm7                     // clear out mm7
+    mov         edx,    dest_width               // Loop counter
 
-        vs_4_5_loop:
+    vs_4_5_loop:
 
-        movq        mm0,    QWORD ptr [esi]         // src[0];
-        movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
+    movq        mm0,    QWORD ptr [esi]         // src[0];
+    movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
 
-        movq        mm2,    mm0                     // Make a copy
-        punpcklbw   mm0,    mm7                     // unpack low to word
+    movq        mm2,    mm0                     // Make a copy
+    punpcklbw   mm0,    mm7                     // unpack low to word
 
-        movq        mm5,    one_fifth
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm5,    one_fifth
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm0,    mm5                     // a * 1/5
+    pmullw      mm0,    mm5                     // a * 1/5
 
-        movq        mm3,    mm1                     // make a copy
-        punpcklbw   mm1,    mm7                     // unpack low to word
+    movq        mm3,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low to word
 
-        pmullw      mm2,    mm5                     // a * 1/5
-        movq        mm6,    four_fifths               // constan
+    pmullw      mm2,    mm5                     // a * 1/5
+    movq        mm6,    four_fifths               // constan
 
-        movq        mm4,    mm1                     // copy of low b
-        pmullw      mm4,    mm6                     // b * 4/5
+    movq        mm4,    mm1                     // copy of low b
+    pmullw      mm4,    mm6                     // b * 4/5
 
-        punpckhbw   mm3,    mm7                     // unpack high to word
-        movq        mm5,    mm3                     // copy of high b
+    punpckhbw   mm3,    mm7                     // unpack high to word
+    movq        mm5,    mm3                     // copy of high b
 
-        pmullw      mm5,    mm6                     // b * 4/5
-        paddw       mm0,    mm4                     // a * 1/5 + b * 4/5
+    pmullw      mm5,    mm6                     // b * 4/5
+    paddw       mm0,    mm4                     // a * 1/5 + b * 4/5
 
-        paddw       mm2,    mm5                     // a * 1/5 + b * 4/5
-        paddw       mm0,    round_values             // + 128
+    paddw       mm2,    mm5                     // a * 1/5 + b * 4/5
+    paddw       mm0,    round_values             // + 128
 
-        paddw       mm2,    round_values             // + 128
-        psrlw       mm0,    8
+    paddw       mm2,    round_values             // + 128
+    psrlw       mm0,    8
 
-        psrlw       mm2,    8
-        packuswb    mm0,    mm2                     // des [1]
+    psrlw       mm2,    8
+    packuswb    mm0,    mm2                     // des [1]
 
-        movq        QWORD ptr [esi+ecx], mm0        // write des[1]
-        movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
+    movq        QWORD ptr [esi+ecx], mm0        // write des[1]
+    movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
 
-        // mm1, mm3 --- Src[1]
-        // mm0 --- Src[2]
-        // mm7 for unpacking
+    // mm1, mm3 --- Src[1]
+    // mm0 --- Src[2]
+    // mm7 for unpacking
 
-        movq        mm5,    two_fifths
-        movq        mm2,    mm0                     // make a copy
+    movq        mm5,    two_fifths
+    movq        mm2,    mm0                     // make a copy
 
-        pmullw      mm1,    mm5                     // b * 2/5
-        movq        mm6,    three_fifths
+    pmullw      mm1,    mm5                     // b * 2/5
+    movq        mm6,    three_fifths
 
 
-        punpcklbw   mm0,    mm7                     // unpack low to word
-        pmullw      mm3,    mm5                     // b * 2/5
+    punpcklbw   mm0,    mm7                     // unpack low to word
+    pmullw      mm3,    mm5                     // b * 2/5
 
-        movq        mm4,    mm0                     // make copy of c
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm4,    mm0                     // make copy of c
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm4,    mm6                     // c * 3/5
-        movq        mm5,    mm2
+    pmullw      mm4,    mm6                     // c * 3/5
+    movq        mm5,    mm2
 
-        pmullw      mm5,    mm6                     // c * 3/5
-        paddw       mm1,    mm4                     // b * 2/5 + c * 3/5
+    pmullw      mm5,    mm6                     // c * 3/5
+    paddw       mm1,    mm4                     // b * 2/5 + c * 3/5
 
-        paddw       mm3,    mm5                     // b * 2/5 + c * 3/5
-        paddw       mm1,    round_values             // + 128
+    paddw       mm3,    mm5                     // b * 2/5 + c * 3/5
+    paddw       mm1,    round_values             // + 128
 
-        paddw       mm3,    round_values             // + 128
-        psrlw       mm1,    8
+    paddw       mm3,    round_values             // + 128
+    psrlw       mm1,    8
 
-        psrlw       mm3,    8
-        packuswb    mm1,    mm3                     // des[2]
+    psrlw       mm3,    8
+    packuswb    mm1,    mm3                     // des[2]
 
-        movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
-        movq        mm1,    [edi]                   // mm1=Src[3];
+    movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
+    movq        mm1,    [edi]                   // mm1=Src[3];
 
-        // mm0, mm2 --- Src[2]
-        // mm1 --- Src[3]
-        // mm6 --- 3/5
-        // mm7 for unpacking
+    // mm0, mm2 --- Src[2]
+    // mm1 --- Src[3]
+    // mm6 --- 3/5
+    // mm7 for unpacking
 
-        pmullw      mm0,    mm6                     // c * 3/5
-        movq        mm5,    two_fifths               // mm5 = 2/5
+    pmullw      mm0,    mm6                     // c * 3/5
+    movq        mm5,    two_fifths               // mm5 = 2/5
 
-        movq        mm3,    mm1                     // make a copy
-        pmullw      mm2,    mm6                     // c * 3/5
+    movq        mm3,    mm1                     // make a copy
+    pmullw      mm2,    mm6                     // c * 3/5
 
-        punpcklbw   mm1,    mm7                     // unpack low
-        movq        mm4,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low
+    movq        mm4,    mm1                     // make a copy
 
-        punpckhbw   mm3,    mm7                     // unpack high
-        pmullw      mm4,    mm5                     // d * 2/5
+    punpckhbw   mm3,    mm7                     // unpack high
+    pmullw      mm4,    mm5                     // d * 2/5
 
-        movq        mm6,    mm3                     // make a copy
-        pmullw      mm6,    mm5                     // d * 2/5
+    movq        mm6,    mm3                     // make a copy
+    pmullw      mm6,    mm5                     // d * 2/5
 
-        paddw       mm0,    mm4                     // c * 3/5 + d * 2/5
-        paddw       mm2,    mm6                     // c * 3/5 + d * 2/5
+    paddw       mm0,    mm4                     // c * 3/5 + d * 2/5
+    paddw       mm2,    mm6                     // c * 3/5 + d * 2/5
 
-        paddw       mm0,    round_values             // + 128
-        paddw       mm2,    round_values             // + 128
+    paddw       mm0,    round_values             // + 128
+    paddw       mm2,    round_values             // + 128
 
-        psrlw       mm0,    8
-        psrlw       mm2,    8
+    psrlw       mm0,    8
+    psrlw       mm2,    8
 
-        packuswb    mm0,    mm2                     // des[3]
-        movq        QWORD ptr [edi], mm0            // write des[3]
+    packuswb    mm0,    mm2                     // des[3]
+    movq        QWORD ptr [edi], mm0            // write des[3]
 
-        //  mm1, mm3 --- Src[3]
-        //  mm7 -- cleared for unpacking
+    //  mm1, mm3 --- Src[3]
+    //  mm7 -- cleared for unpacking
 
-        movq        mm0,    [edi+ecx*2]             // mm0, Src[0] of the next group
+    movq        mm0,    [edi+ecx*2]             // mm0, Src[0] of the next group
 
-        movq        mm5,    four_fifths              // mm5 = 4/5
-        pmullw      mm1,    mm5                     // d * 4/5
+    movq        mm5,    four_fifths              // mm5 = 4/5
+    pmullw      mm1,    mm5                     // d * 4/5
 
-        movq        mm6,    one_fifth                // mm6 = 1/5
-        movq        mm2,    mm0                     // make a copy
+    movq        mm6,    one_fifth                // mm6 = 1/5
+    movq        mm2,    mm0                     // make a copy
 
-        pmullw      mm3,    mm5                     // d * 4/5
-        punpcklbw   mm0,    mm7                     // unpack low
+    pmullw      mm3,    mm5                     // d * 4/5
+    punpcklbw   mm0,    mm7                     // unpack low
 
-        pmullw      mm0,    mm6                     // an * 1/5
-        punpckhbw   mm2,    mm7                     // unpack high
+    pmullw      mm0,    mm6                     // an * 1/5
+    punpckhbw   mm2,    mm7                     // unpack high
 
-        paddw       mm1,    mm0                     // d * 4/5 + an * 1/5
-        pmullw      mm2,    mm6                     // an * 1/5
+    paddw       mm1,    mm0                     // d * 4/5 + an * 1/5
+    pmullw      mm2,    mm6                     // an * 1/5
 
-        paddw       mm3,    mm2                     // d * 4/5 + an * 1/5
-        paddw       mm1,    round_values             // + 128
+    paddw       mm3,    mm2                     // d * 4/5 + an * 1/5
+    paddw       mm1,    round_values             // + 128
 
-        paddw       mm3,    round_values             // + 128
-        psrlw       mm1,    8
+    paddw       mm3,    round_values             // + 128
+    psrlw       mm1,    8
 
-        psrlw       mm3,    8
-        packuswb    mm1,    mm3                     // des[4]
+    psrlw       mm3,    8
+    packuswb    mm1,    mm3                     // des[4]
 
-        movq        QWORD ptr [edi+ecx], mm1        // write des[4]
+    movq        QWORD ptr [edi+ecx], mm1        // write des[4]
 
-        add         edi,    8
-        add         esi,    8
+    add         edi,    8
+    add         esi,    8
 
-        sub         edx,    8
-        jg         vs_4_5_loop
-    }
+    sub         edx,    8
+    jg         vs_4_5_loop
+  }
 }
 
 /****************************************************************************
@@ -517,139 +511,137 @@ void vertical_band_4_5_scale_mmx
 static
 void last_vertical_band_4_5_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        lea         edi,    [esi+ecx*2]             // tow lines below
-        add         edi,    ecx                     // three lines below
+    lea         edi,    [esi+ecx*2]             // tow lines below
+    add         edi,    ecx                     // three lines below
 
-        pxor        mm7,    mm7                     // clear out mm7
-        mov         edx,    dest_width               // Loop counter
+    pxor        mm7,    mm7                     // clear out mm7
+    mov         edx,    dest_width               // Loop counter
 
-        last_vs_4_5_loop:
+    last_vs_4_5_loop:
 
-        movq        mm0,    QWORD ptr [esi]         // src[0];
-        movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
+    movq        mm0,    QWORD ptr [esi]         // src[0];
+    movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
 
-        movq        mm2,    mm0                     // Make a copy
-        punpcklbw   mm0,    mm7                     // unpack low to word
+    movq        mm2,    mm0                     // Make a copy
+    punpcklbw   mm0,    mm7                     // unpack low to word
 
-        movq        mm5,    one_fifth
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm5,    one_fifth
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm0,    mm5                     // a * 1/5
+    pmullw      mm0,    mm5                     // a * 1/5
 
-        movq        mm3,    mm1                     // make a copy
-        punpcklbw   mm1,    mm7                     // unpack low to word
+    movq        mm3,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low to word
 
-        pmullw      mm2,    mm5                     // a * 1/5
-        movq        mm6,    four_fifths               // constan
+    pmullw      mm2,    mm5                     // a * 1/5
+    movq        mm6,    four_fifths               // constan
 
-        movq        mm4,    mm1                     // copy of low b
-        pmullw      mm4,    mm6                     // b * 4/5
+    movq        mm4,    mm1                     // copy of low b
+    pmullw      mm4,    mm6                     // b * 4/5
 
-        punpckhbw   mm3,    mm7                     // unpack high to word
-        movq        mm5,    mm3                     // copy of high b
+    punpckhbw   mm3,    mm7                     // unpack high to word
+    movq        mm5,    mm3                     // copy of high b
 
-        pmullw      mm5,    mm6                     // b * 4/5
-        paddw       mm0,    mm4                     // a * 1/5 + b * 4/5
+    pmullw      mm5,    mm6                     // b * 4/5
+    paddw       mm0,    mm4                     // a * 1/5 + b * 4/5
 
-        paddw       mm2,    mm5                     // a * 1/5 + b * 4/5
-        paddw       mm0,    round_values             // + 128
+    paddw       mm2,    mm5                     // a * 1/5 + b * 4/5
+    paddw       mm0,    round_values             // + 128
 
-        paddw       mm2,    round_values             // + 128
-        psrlw       mm0,    8
+    paddw       mm2,    round_values             // + 128
+    psrlw       mm0,    8
 
-        psrlw       mm2,    8
-        packuswb    mm0,    mm2                     // des [1]
+    psrlw       mm2,    8
+    packuswb    mm0,    mm2                     // des [1]
 
-        movq        QWORD ptr [esi+ecx], mm0        // write des[1]
-        movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
+    movq        QWORD ptr [esi+ecx], mm0        // write des[1]
+    movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
 
-        // mm1, mm3 --- Src[1]
-        // mm0 --- Src[2]
-        // mm7 for unpacking
+    // mm1, mm3 --- Src[1]
+    // mm0 --- Src[2]
+    // mm7 for unpacking
 
-        movq        mm5,    two_fifths
-        movq        mm2,    mm0                     // make a copy
+    movq        mm5,    two_fifths
+    movq        mm2,    mm0                     // make a copy
 
-        pmullw      mm1,    mm5                     // b * 2/5
-        movq        mm6,    three_fifths
+    pmullw      mm1,    mm5                     // b * 2/5
+    movq        mm6,    three_fifths
 
 
-        punpcklbw   mm0,    mm7                     // unpack low to word
-        pmullw      mm3,    mm5                     // b * 2/5
+    punpcklbw   mm0,    mm7                     // unpack low to word
+    pmullw      mm3,    mm5                     // b * 2/5
 
-        movq        mm4,    mm0                     // make copy of c
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm4,    mm0                     // make copy of c
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm4,    mm6                     // c * 3/5
-        movq        mm5,    mm2
+    pmullw      mm4,    mm6                     // c * 3/5
+    movq        mm5,    mm2
 
-        pmullw      mm5,    mm6                     // c * 3/5
-        paddw       mm1,    mm4                     // b * 2/5 + c * 3/5
+    pmullw      mm5,    mm6                     // c * 3/5
+    paddw       mm1,    mm4                     // b * 2/5 + c * 3/5
 
-        paddw       mm3,    mm5                     // b * 2/5 + c * 3/5
-        paddw       mm1,    round_values             // + 128
+    paddw       mm3,    mm5                     // b * 2/5 + c * 3/5
+    paddw       mm1,    round_values             // + 128
 
-        paddw       mm3,    round_values             // + 128
-        psrlw       mm1,    8
+    paddw       mm3,    round_values             // + 128
+    psrlw       mm1,    8
 
-        psrlw       mm3,    8
-        packuswb    mm1,    mm3                     // des[2]
+    psrlw       mm3,    8
+    packuswb    mm1,    mm3                     // des[2]
 
-        movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
-        movq        mm1,    [edi]                   // mm1=Src[3];
+    movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
+    movq        mm1,    [edi]                   // mm1=Src[3];
 
-        movq        QWORD ptr [edi+ecx], mm1        // write des[4];
+    movq        QWORD ptr [edi+ecx], mm1        // write des[4];
 
-        // mm0, mm2 --- Src[2]
-        // mm1 --- Src[3]
-        // mm6 --- 3/5
-        // mm7 for unpacking
+    // mm0, mm2 --- Src[2]
+    // mm1 --- Src[3]
+    // mm6 --- 3/5
+    // mm7 for unpacking
 
-        pmullw      mm0,    mm6                     // c * 3/5
-        movq        mm5,    two_fifths               // mm5 = 2/5
+    pmullw      mm0,    mm6                     // c * 3/5
+    movq        mm5,    two_fifths               // mm5 = 2/5
 
-        movq        mm3,    mm1                     // make a copy
-        pmullw      mm2,    mm6                     // c * 3/5
+    movq        mm3,    mm1                     // make a copy
+    pmullw      mm2,    mm6                     // c * 3/5
 
-        punpcklbw   mm1,    mm7                     // unpack low
-        movq        mm4,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low
+    movq        mm4,    mm1                     // make a copy
 
-        punpckhbw   mm3,    mm7                     // unpack high
-        pmullw      mm4,    mm5                     // d * 2/5
+    punpckhbw   mm3,    mm7                     // unpack high
+    pmullw      mm4,    mm5                     // d * 2/5
 
-        movq        mm6,    mm3                     // make a copy
-        pmullw      mm6,    mm5                     // d * 2/5
+    movq        mm6,    mm3                     // make a copy
+    pmullw      mm6,    mm5                     // d * 2/5
 
-        paddw       mm0,    mm4                     // c * 3/5 + d * 2/5
-        paddw       mm2,    mm6                     // c * 3/5 + d * 2/5
+    paddw       mm0,    mm4                     // c * 3/5 + d * 2/5
+    paddw       mm2,    mm6                     // c * 3/5 + d * 2/5
 
-        paddw       mm0,    round_values             // + 128
-        paddw       mm2,    round_values             // + 128
+    paddw       mm0,    round_values             // + 128
+    paddw       mm2,    round_values             // + 128
 
-        psrlw       mm0,    8
-        psrlw       mm2,    8
+    psrlw       mm0,    8
+    psrlw       mm2,    8
 
-        packuswb    mm0,    mm2                     // des[3]
-        movq        QWORD ptr [edi], mm0            // write des[3]
+    packuswb    mm0,    mm2                     // des[3]
+    movq        QWORD ptr [edi], mm0            // write des[3]
 
-        //  mm1, mm3 --- Src[3]
-        //  mm7 -- cleared for unpacking
-        add         edi,    8
-        add         esi,    8
+    //  mm1, mm3 --- Src[3]
+    //  mm7 -- cleared for unpacking
+    add         edi,    8
+    add         esi,    8
 
-        sub         edx,    8
-        jg          last_vs_4_5_loop
-    }
+    sub         edx,    8
+    jg          last_vs_4_5_loop
+  }
 }
 
 /****************************************************************************
@@ -674,153 +666,151 @@ void last_vertical_band_4_5_scale_mmx
 static
 void vertical_band_3_5_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        lea         edi,    [esi+ecx*2]             // tow lines below
-        add         edi,    ecx                     // three lines below
+    lea         edi,    [esi+ecx*2]             // tow lines below
+    add         edi,    ecx                     // three lines below
 
-        pxor        mm7,    mm7                     // clear out mm7
-        mov         edx,    dest_width               // Loop counter
+    pxor        mm7,    mm7                     // clear out mm7
+    mov         edx,    dest_width               // Loop counter
 
-        vs_3_5_loop:
+    vs_3_5_loop:
 
-        movq        mm0,    QWORD ptr [esi]         // src[0];
-        movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
+    movq        mm0,    QWORD ptr [esi]         // src[0];
+    movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
 
-        movq        mm2,    mm0                     // Make a copy
-        punpcklbw   mm0,    mm7                     // unpack low to word
+    movq        mm2,    mm0                     // Make a copy
+    punpcklbw   mm0,    mm7                     // unpack low to word
 
-        movq        mm5,    two_fifths               // mm5 = 2/5
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm5,    two_fifths               // mm5 = 2/5
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm0,    mm5                     // a * 2/5
+    pmullw      mm0,    mm5                     // a * 2/5
 
-        movq        mm3,    mm1                     // make a copy
-        punpcklbw   mm1,    mm7                     // unpack low to word
+    movq        mm3,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low to word
 
-        pmullw      mm2,    mm5                     // a * 2/5
-        movq        mm6,    three_fifths             // mm6 = 3/5
+    pmullw      mm2,    mm5                     // a * 2/5
+    movq        mm6,    three_fifths             // mm6 = 3/5
 
-        movq        mm4,    mm1                     // copy of low b
-        pmullw      mm4,    mm6                     // b * 3/5
+    movq        mm4,    mm1                     // copy of low b
+    pmullw      mm4,    mm6                     // b * 3/5
 
-        punpckhbw   mm3,    mm7                     // unpack high to word
-        movq        mm5,    mm3                     // copy of high b
+    punpckhbw   mm3,    mm7                     // unpack high to word
+    movq        mm5,    mm3                     // copy of high b
 
-        pmullw      mm5,    mm6                     // b * 3/5
-        paddw       mm0,    mm4                     // a * 2/5 + b * 3/5
+    pmullw      mm5,    mm6                     // b * 3/5
+    paddw       mm0,    mm4                     // a * 2/5 + b * 3/5
 
-        paddw       mm2,    mm5                     // a * 2/5 + b * 3/5
-        paddw       mm0,    round_values             // + 128
+    paddw       mm2,    mm5                     // a * 2/5 + b * 3/5
+    paddw       mm0,    round_values             // + 128
 
-        paddw       mm2,    round_values             // + 128
-        psrlw       mm0,    8
+    paddw       mm2,    round_values             // + 128
+    psrlw       mm0,    8
 
-        psrlw       mm2,    8
-        packuswb    mm0,    mm2                     // des [1]
+    psrlw       mm2,    8
+    packuswb    mm0,    mm2                     // des [1]
 
-        movq        QWORD ptr [esi+ecx], mm0        // write des[1]
-        movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
+    movq        QWORD ptr [esi+ecx], mm0        // write des[1]
+    movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
 
-        // mm1, mm3 --- Src[1]
-        // mm0 --- Src[2]
-        // mm7 for unpacking
+    // mm1, mm3 --- Src[1]
+    // mm0 --- Src[2]
+    // mm7 for unpacking
 
-        movq        mm4,    mm1                     // b low
-        pmullw      mm1,    four_fifths              // b * 4/5 low
+    movq        mm4,    mm1                     // b low
+    pmullw      mm1,    four_fifths              // b * 4/5 low
 
-        movq        mm5,    mm3                     // b high
-        pmullw      mm3,    four_fifths              // b * 4/5 high
+    movq        mm5,    mm3                     // b high
+    pmullw      mm3,    four_fifths              // b * 4/5 high
 
-        movq        mm2,    mm0                     // c
-        pmullw      mm4,    one_fifth                // b * 1/5
+    movq        mm2,    mm0                     // c
+    pmullw      mm4,    one_fifth                // b * 1/5
 
-        punpcklbw   mm0,    mm7                     // c low
-        pmullw      mm5,    one_fifth                // b * 1/5
+    punpcklbw   mm0,    mm7                     // c low
+    pmullw      mm5,    one_fifth                // b * 1/5
 
-        movq        mm6,    mm0                     // make copy of c low
-        punpckhbw   mm2,    mm7                     // c high
+    movq        mm6,    mm0                     // make copy of c low
+    punpckhbw   mm2,    mm7                     // c high
 
-        pmullw      mm6,    one_fifth                // c * 1/5 low
-        movq        mm7,    mm2                     // make copy of c high
+    pmullw      mm6,    one_fifth                // c * 1/5 low
+    movq        mm7,    mm2                     // make copy of c high
 
-        pmullw      mm7,    one_fifth                // c * 1/5 high
-        paddw       mm1,    mm6                     // b * 4/5 + c * 1/5 low
+    pmullw      mm7,    one_fifth                // c * 1/5 high
+    paddw       mm1,    mm6                     // b * 4/5 + c * 1/5 low
 
-        paddw       mm3,    mm7                     // b * 4/5 + c * 1/5 high
-        movq        mm6,    mm0                     // make copy of c low
+    paddw       mm3,    mm7                     // b * 4/5 + c * 1/5 high
+    movq        mm6,    mm0                     // make copy of c low
 
-        pmullw      mm6,    four_fifths              // c * 4/5 low
-        movq        mm7,    mm2                     // make copy of c high
+    pmullw      mm6,    four_fifths              // c * 4/5 low
+    movq        mm7,    mm2                     // make copy of c high
 
-        pmullw      mm7,    four_fifths              // c * 4/5 high
+    pmullw      mm7,    four_fifths              // c * 4/5 high
 
-        paddw       mm4,    mm6                     // b * 1/5 + c * 4/5 low
-        paddw       mm5,    mm7                     // b * 1/5 + c * 4/5 high
+    paddw       mm4,    mm6                     // b * 1/5 + c * 4/5 low
+    paddw       mm5,    mm7                     // b * 1/5 + c * 4/5 high
 
-        paddw       mm1,    round_values             // + 128
-        paddw       mm3,    round_values             // + 128
+    paddw       mm1,    round_values             // + 128
+    paddw       mm3,    round_values             // + 128
 
-        psrlw       mm1,    8
-        psrlw       mm3,    8
+    psrlw       mm1,    8
+    psrlw       mm3,    8
 
-        packuswb    mm1,    mm3                     // des[2]
-        movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
+    packuswb    mm1,    mm3                     // des[2]
+    movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
 
-        paddw       mm4,    round_values             // + 128
-        paddw       mm5,    round_values             // + 128
+    paddw       mm4,    round_values             // + 128
+    paddw       mm5,    round_values             // + 128
 
-        psrlw       mm4,    8
-        psrlw       mm5,    8
+    psrlw       mm4,    8
+    psrlw       mm5,    8
 
-        packuswb    mm4,    mm5                     // des[3]
-        movq        QWORD ptr [edi], mm4            // write des[3]
+    packuswb    mm4,    mm5                     // des[3]
+    movq        QWORD ptr [edi], mm4            // write des[3]
 
-        //  mm0, mm2 --- Src[3]
+    //  mm0, mm2 --- Src[3]
 
-        pxor        mm7,    mm7                     // clear mm7 for unpacking
-        movq        mm1,    [edi+ecx*2]             // mm1 = Src[0] of the next group
+    pxor        mm7,    mm7                     // clear mm7 for unpacking
+    movq        mm1,    [edi+ecx*2]             // mm1 = Src[0] of the next group
 
-        movq        mm5,    three_fifths             // mm5 = 3/5
-        pmullw      mm0,    mm5                     // d * 3/5
+    movq        mm5,    three_fifths             // mm5 = 3/5
+    pmullw      mm0,    mm5                     // d * 3/5
 
-        movq        mm6,    two_fifths                // mm6 = 2/5
-        movq        mm3,    mm1                     // make a copy
+    movq        mm6,    two_fifths                // mm6 = 2/5
+    movq        mm3,    mm1                     // make a copy
 
-        pmullw      mm2,    mm5                     // d * 3/5
-        punpcklbw   mm1,    mm7                     // unpack low
+    pmullw      mm2,    mm5                     // d * 3/5
+    punpcklbw   mm1,    mm7                     // unpack low
 
-        pmullw      mm1,    mm6                     // an * 2/5
-        punpckhbw   mm3,    mm7                     // unpack high
+    pmullw      mm1,    mm6                     // an * 2/5
+    punpckhbw   mm3,    mm7                     // unpack high
 
-        paddw       mm0,    mm1                     // d * 3/5 + an * 2/5
-        pmullw      mm3,    mm6                     // an * 2/5
+    paddw       mm0,    mm1                     // d * 3/5 + an * 2/5
+    pmullw      mm3,    mm6                     // an * 2/5
 
-        paddw       mm2,    mm3                     // d * 3/5 + an * 2/5
-        paddw       mm0,    round_values             // + 128
+    paddw       mm2,    mm3                     // d * 3/5 + an * 2/5
+    paddw       mm0,    round_values             // + 128
 
-        paddw       mm2,    round_values             // + 128
-        psrlw       mm0,    8
+    paddw       mm2,    round_values             // + 128
+    psrlw       mm0,    8
 
-        psrlw       mm2,    8
-        packuswb    mm0,    mm2                     // des[4]
+    psrlw       mm2,    8
+    packuswb    mm0,    mm2                     // des[4]
 
-        movq        QWORD ptr [edi+ecx], mm0        // write des[4]
+    movq        QWORD ptr [edi+ecx], mm0        // write des[4]
 
-        add         edi,    8
-        add         esi,    8
+    add         edi,    8
+    add         esi,    8
 
-        sub         edx,    8
-        jg          vs_3_5_loop
-    }
+    sub         edx,    8
+    jg          vs_3_5_loop
+  }
 }
 
 /****************************************************************************
@@ -845,129 +835,127 @@ void vertical_band_3_5_scale_mmx
 static
 void last_vertical_band_3_5_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        lea         edi,    [esi+ecx*2]             // tow lines below
-        add         edi,    ecx                     // three lines below
+    lea         edi,    [esi+ecx*2]             // tow lines below
+    add         edi,    ecx                     // three lines below
 
-        pxor        mm7,    mm7                     // clear out mm7
-        mov         edx,    dest_width               // Loop counter
+    pxor        mm7,    mm7                     // clear out mm7
+    mov         edx,    dest_width               // Loop counter
 
 
-        last_vs_3_5_loop:
+    last_vs_3_5_loop:
 
-        movq        mm0,    QWORD ptr [esi]         // src[0];
-        movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
+    movq        mm0,    QWORD ptr [esi]         // src[0];
+    movq        mm1,    QWORD ptr [esi+ecx]     // src[1];
 
-        movq        mm2,    mm0                     // Make a copy
-        punpcklbw   mm0,    mm7                     // unpack low to word
+    movq        mm2,    mm0                     // Make a copy
+    punpcklbw   mm0,    mm7                     // unpack low to word
 
-        movq        mm5,    two_fifths               // mm5 = 2/5
-        punpckhbw   mm2,    mm7                     // unpack high to word
+    movq        mm5,    two_fifths               // mm5 = 2/5
+    punpckhbw   mm2,    mm7                     // unpack high to word
 
-        pmullw      mm0,    mm5                     // a * 2/5
+    pmullw      mm0,    mm5                     // a * 2/5
 
-        movq        mm3,    mm1                     // make a copy
-        punpcklbw   mm1,    mm7                     // unpack low to word
+    movq        mm3,    mm1                     // make a copy
+    punpcklbw   mm1,    mm7                     // unpack low to word
 
-        pmullw      mm2,    mm5                     // a * 2/5
-        movq        mm6,    three_fifths             // mm6 = 3/5
+    pmullw      mm2,    mm5                     // a * 2/5
+    movq        mm6,    three_fifths             // mm6 = 3/5
 
-        movq        mm4,    mm1                     // copy of low b
-        pmullw      mm4,    mm6                     // b * 3/5
+    movq        mm4,    mm1                     // copy of low b
+    pmullw      mm4,    mm6                     // b * 3/5
 
-        punpckhbw   mm3,    mm7                     // unpack high to word
-        movq        mm5,    mm3                     // copy of high b
+    punpckhbw   mm3,    mm7                     // unpack high to word
+    movq        mm5,    mm3                     // copy of high b
 
-        pmullw      mm5,    mm6                     // b * 3/5
-        paddw       mm0,    mm4                     // a * 2/5 + b * 3/5
+    pmullw      mm5,    mm6                     // b * 3/5
+    paddw       mm0,    mm4                     // a * 2/5 + b * 3/5
 
-        paddw       mm2,    mm5                     // a * 2/5 + b * 3/5
-        paddw       mm0,    round_values             // + 128
+    paddw       mm2,    mm5                     // a * 2/5 + b * 3/5
+    paddw       mm0,    round_values             // + 128
 
-        paddw       mm2,    round_values             // + 128
-        psrlw       mm0,    8
+    paddw       mm2,    round_values             // + 128
+    psrlw       mm0,    8
 
-        psrlw       mm2,    8
-        packuswb    mm0,    mm2                     // des [1]
+    psrlw       mm2,    8
+    packuswb    mm0,    mm2                     // des [1]
 
-        movq        QWORD ptr [esi+ecx], mm0        // write des[1]
-        movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
+    movq        QWORD ptr [esi+ecx], mm0        // write des[1]
+    movq        mm0,    [esi+ecx*2]             // mm0 = src[2]
 
 
 
-        // mm1, mm3 --- Src[1]
-        // mm0 --- Src[2]
-        // mm7 for unpacking
+    // mm1, mm3 --- Src[1]
+    // mm0 --- Src[2]
+    // mm7 for unpacking
 
-        movq        mm4,    mm1                     // b low
-        pmullw      mm1,    four_fifths              // b * 4/5 low
+    movq        mm4,    mm1                     // b low
+    pmullw      mm1,    four_fifths              // b * 4/5 low
 
-        movq        QWORD ptr [edi+ecx], mm0        // write des[4]
+    movq        QWORD ptr [edi+ecx], mm0        // write des[4]
 
-        movq        mm5,    mm3                     // b high
-        pmullw      mm3,    four_fifths              // b * 4/5 high
+    movq        mm5,    mm3                     // b high
+    pmullw      mm3,    four_fifths              // b * 4/5 high
 
-        movq        mm2,    mm0                     // c
-        pmullw      mm4,    one_fifth                // b * 1/5
+    movq        mm2,    mm0                     // c
+    pmullw      mm4,    one_fifth                // b * 1/5
 
-        punpcklbw   mm0,    mm7                     // c low
-        pmullw      mm5,    one_fifth                // b * 1/5
+    punpcklbw   mm0,    mm7                     // c low
+    pmullw      mm5,    one_fifth                // b * 1/5
 
-        movq        mm6,    mm0                     // make copy of c low
-        punpckhbw   mm2,    mm7                     // c high
+    movq        mm6,    mm0                     // make copy of c low
+    punpckhbw   mm2,    mm7                     // c high
 
-        pmullw      mm6,    one_fifth                // c * 1/5 low
-        movq        mm7,    mm2                     // make copy of c high
+    pmullw      mm6,    one_fifth                // c * 1/5 low
+    movq        mm7,    mm2                     // make copy of c high
 
-        pmullw      mm7,    one_fifth                // c * 1/5 high
-        paddw       mm1,    mm6                     // b * 4/5 + c * 1/5 low
+    pmullw      mm7,    one_fifth                // c * 1/5 high
+    paddw       mm1,    mm6                     // b * 4/5 + c * 1/5 low
 
-        paddw       mm3,    mm7                     // b * 4/5 + c * 1/5 high
-        movq        mm6,    mm0                     // make copy of c low
+    paddw       mm3,    mm7                     // b * 4/5 + c * 1/5 high
+    movq        mm6,    mm0                     // make copy of c low
 
-        pmullw      mm6,    four_fifths              // c * 4/5 low
-        movq        mm7,    mm2                     // make copy of c high
+    pmullw      mm6,    four_fifths              // c * 4/5 low
+    movq        mm7,    mm2                     // make copy of c high
 
-        pmullw      mm7,    four_fifths              // c * 4/5 high
+    pmullw      mm7,    four_fifths              // c * 4/5 high
 
-        paddw       mm4,    mm6                     // b * 1/5 + c * 4/5 low
-        paddw       mm5,    mm7                     // b * 1/5 + c * 4/5 high
+    paddw       mm4,    mm6                     // b * 1/5 + c * 4/5 low
+    paddw       mm5,    mm7                     // b * 1/5 + c * 4/5 high
 
-        paddw       mm1,    round_values             // + 128
-        paddw       mm3,    round_values             // + 128
+    paddw       mm1,    round_values             // + 128
+    paddw       mm3,    round_values             // + 128
 
-        psrlw       mm1,    8
-        psrlw       mm3,    8
+    psrlw       mm1,    8
+    psrlw       mm3,    8
 
-        packuswb    mm1,    mm3                     // des[2]
-        movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
+    packuswb    mm1,    mm3                     // des[2]
+    movq        QWORD ptr [esi+ecx*2], mm1      // write des[2]
 
-        paddw       mm4,    round_values             // + 128
-        paddw       mm5,    round_values             // + 128
+    paddw       mm4,    round_values             // + 128
+    paddw       mm5,    round_values             // + 128
 
-        psrlw       mm4,    8
-        psrlw       mm5,    8
+    psrlw       mm4,    8
+    psrlw       mm5,    8
 
-        packuswb    mm4,    mm5                     // des[3]
-        movq        QWORD ptr [edi], mm4            // write des[3]
+    packuswb    mm4,    mm5                     // des[3]
+    movq        QWORD ptr [edi], mm4            // write des[3]
 
-        //  mm0, mm2 --- Src[3]
+    //  mm0, mm2 --- Src[3]
 
-        add         edi,    8
-        add         esi,    8
+    add         edi,    8
+    add         esi,    8
 
-        sub         edx,    8
-        jg          last_vs_3_5_loop
-    }
+    sub         edx,    8
+    jg          last_vs_3_5_loop
+  }
 }
 
 /****************************************************************************
@@ -992,52 +980,50 @@ void last_vertical_band_3_5_scale_mmx
 static
 void vertical_band_1_2_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
 
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        pxor        mm7,    mm7                     // clear out mm7
-        mov         edx,    dest_width               // Loop counter
+    pxor        mm7,    mm7                     // clear out mm7
+    mov         edx,    dest_width               // Loop counter
 
-        vs_1_2_loop:
+    vs_1_2_loop:
 
-        movq        mm0,    [esi]                   // get Src[0]
-        movq        mm1,    [esi + ecx * 2]         // get Src[1]
+    movq        mm0,    [esi]                   // get Src[0]
+    movq        mm1,    [esi + ecx * 2]         // get Src[1]
 
-        movq        mm2,    mm0                     // make copy before unpack
-        movq        mm3,    mm1                     // make copy before unpack
+    movq        mm2,    mm0                     // make copy before unpack
+    movq        mm3,    mm1                     // make copy before unpack
 
-        punpcklbw   mm0,    mm7                     // low Src[0]
-        movq        mm6,    four_ones                // mm6= 1, 1, 1, 1
+    punpcklbw   mm0,    mm7                     // low Src[0]
+    movq        mm6,    four_ones                // mm6= 1, 1, 1, 1
 
-        punpcklbw   mm1,    mm7                     // low Src[1]
-        paddw       mm0,    mm1                     // low (a + b)
+    punpcklbw   mm1,    mm7                     // low Src[1]
+    paddw       mm0,    mm1                     // low (a + b)
 
-        punpckhbw   mm2,    mm7                     // high Src[0]
-        paddw       mm0,    mm6                     // low (a + b + 1)
+    punpckhbw   mm2,    mm7                     // high Src[0]
+    paddw       mm0,    mm6                     // low (a + b + 1)
 
-        punpckhbw   mm3,    mm7
-        paddw       mm2,    mm3                     // high (a + b )
+    punpckhbw   mm3,    mm7
+    paddw       mm2,    mm3                     // high (a + b )
 
-        psraw       mm0,    1                       // low (a + b +1 )/2
-        paddw       mm2,    mm6                     // high (a + b + 1)
+    psraw       mm0,    1                       // low (a + b +1 )/2
+    paddw       mm2,    mm6                     // high (a + b + 1)
 
-        psraw       mm2,    1                       // high (a + b + 1)/2
-        packuswb    mm0,    mm2                     // pack results
+    psraw       mm2,    1                       // high (a + b + 1)/2
+    packuswb    mm0,    mm2                     // pack results
 
-        movq        [esi+ecx], mm0                  // write out eight bytes
-        add         esi,    8
+    movq        [esi+ecx], mm0                  // write out eight bytes
+    add         esi,    8
 
-        sub         edx,    8
-        jg          vs_1_2_loop
-    }
+    sub         edx,    8
+    jg          vs_1_2_loop
+  }
 
 }
 
@@ -1063,28 +1049,26 @@ void vertical_band_1_2_scale_mmx
 static
 void last_vertical_band_1_2_scale_mmx
 (
-    unsigned char *dest,
-    unsigned int dest_pitch,
-    unsigned int dest_width
-)
-{
-    __asm
-    {
-        mov         esi,    dest                    // Get the source and destination pointer
-        mov         ecx,    dest_pitch               // Get the pitch size
+  unsigned char *dest,
+  unsigned int dest_pitch,
+  unsigned int dest_width
+) {
+  __asm {
+    mov         esi,    dest                    // Get the source and destination pointer
+    mov         ecx,    dest_pitch               // Get the pitch size
 
-        mov         edx,    dest_width               // Loop counter
+    mov         edx,    dest_width               // Loop counter
 
-        last_vs_1_2_loop:
+    last_vs_1_2_loop:
 
-        movq        mm0,    [esi]                   // get Src[0]
-        movq        [esi+ecx], mm0                  // write out eight bytes
+    movq        mm0,    [esi]                   // get Src[0]
+    movq        [esi+ecx], mm0                  // write out eight bytes
 
-        add         esi,    8
-        sub         edx,    8
+    add         esi,    8
+    sub         edx,    8
 
-        jg         last_vs_1_2_loop
-    }
+    jg         last_vs_1_2_loop
+  }
 }
 
 /****************************************************************************
@@ -1108,106 +1092,104 @@ void last_vertical_band_1_2_scale_mmx
 static
 void horizontal_line_1_2_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    (void) dest_width;
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  (void) dest_width;
 
-    __asm
-    {
-        mov         esi,    source
-        mov         edi,    dest
+  __asm {
+    mov         esi,    source
+    mov         edi,    dest
 
-        pxor        mm7,    mm7
-        movq        mm6,    four_ones
+    pxor        mm7,    mm7
+    movq        mm6,    four_ones
 
-        mov         ecx,    source_width
+    mov         ecx,    source_width
 
-        hs_1_2_loop:
+    hs_1_2_loop:
 
-        movq        mm0,    [esi]
-        movq        mm1,    [esi+1]
+    movq        mm0,    [esi]
+    movq        mm1,    [esi+1]
 
-        movq        mm2,    mm0
-        movq        mm3,    mm1
+    movq        mm2,    mm0
+    movq        mm3,    mm1
 
-        movq        mm4,    mm0
-        punpcklbw   mm0,    mm7
+    movq        mm4,    mm0
+    punpcklbw   mm0,    mm7
 
-        punpcklbw   mm1,    mm7
-        paddw       mm0,    mm1
+    punpcklbw   mm1,    mm7
+    paddw       mm0,    mm1
 
-        paddw       mm0,    mm6
-        punpckhbw   mm2,    mm7
+    paddw       mm0,    mm6
+    punpckhbw   mm2,    mm7
 
-        punpckhbw   mm3,    mm7
-        paddw       mm2,    mm3
+    punpckhbw   mm3,    mm7
+    paddw       mm2,    mm3
 
-        paddw       mm2,    mm6
-        psraw       mm0,    1
+    paddw       mm2,    mm6
+    psraw       mm0,    1
 
-        psraw       mm2,    1
-        packuswb    mm0,    mm2
+    psraw       mm2,    1
+    packuswb    mm0,    mm2
 
-        movq        mm2,    mm4
-        punpcklbw   mm2,    mm0
+    movq        mm2,    mm4
+    punpcklbw   mm2,    mm0
 
-        movq        [edi],  mm2
-        punpckhbw   mm4,    mm0
+    movq        [edi],  mm2
+    punpckhbw   mm4,    mm0
 
-        movq        [edi+8], mm4
-        add         esi,    8
+    movq        [edi+8], mm4
+    add         esi,    8
 
-        add         edi,    16
-        sub         ecx,    8
+    add         edi,    16
+    sub         ecx,    8
 
-        cmp         ecx,    8
-        jg          hs_1_2_loop
+    cmp         ecx,    8
+    jg          hs_1_2_loop
 
 // last eight pixel
 
-        movq        mm0,    [esi]
-        movq        mm1,    mm0
+    movq        mm0,    [esi]
+    movq        mm1,    mm0
 
-        movq        mm2,    mm0
-        movq        mm3,    mm1
+    movq        mm2,    mm0
+    movq        mm3,    mm1
 
-        psrlq       mm1,    8
-        psrlq       mm3,    56
+    psrlq       mm1,    8
+    psrlq       mm3,    56
 
-        psllq       mm3,    56
-        por         mm1,    mm3
+    psllq       mm3,    56
+    por         mm1,    mm3
 
-        movq        mm3,    mm1
-        movq        mm4,    mm0
+    movq        mm3,    mm1
+    movq        mm4,    mm0
 
-        punpcklbw   mm0,    mm7
-        punpcklbw   mm1,    mm7
+    punpcklbw   mm0,    mm7
+    punpcklbw   mm1,    mm7
 
-        paddw       mm0,    mm1
-        paddw       mm0,    mm6
+    paddw       mm0,    mm1
+    paddw       mm0,    mm6
 
-        punpckhbw   mm2,    mm7
-        punpckhbw   mm3,    mm7
+    punpckhbw   mm2,    mm7
+    punpckhbw   mm3,    mm7
 
-        paddw       mm2,    mm3
-        paddw       mm2,    mm6
+    paddw       mm2,    mm3
+    paddw       mm2,    mm6
 
-        psraw       mm0,    1
-        psraw       mm2,    1
+    psraw       mm0,    1
+    psraw       mm2,    1
 
-        packuswb    mm0,    mm2
-        movq        mm2,    mm4
+    packuswb    mm0,    mm2
+    movq        mm2,    mm4
 
-        punpcklbw   mm2,    mm0
-        movq        [edi],  mm2
+    punpcklbw   mm2,    mm0
+    movq        [edi],  mm2
 
-        punpckhbw   mm4,    mm0
-        movq        [edi+8], mm4
-    }
+    punpckhbw   mm4,    mm0
+    movq        [edi+8], mm4
+  }
 }
 
 
@@ -1240,86 +1222,84 @@ __declspec(align(16)) const static unsigned short const54_1[] = {256, 192, 128,
 static
 void horizontal_line_5_4_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    /*
-    unsigned i;
-    unsigned int a, b, c, d, e;
-    unsigned char *des = dest;
-    const unsigned char *src = source;
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  /*
+  unsigned i;
+  unsigned int a, b, c, d, e;
+  unsigned char *des = dest;
+  const unsigned char *src = source;
 
-    (void) dest_width;
+  (void) dest_width;
 
-    for ( i=0; i<source_width; i+=5 )
-    {
-        a = src[0];
-        b = src[1];
-        c = src[2];
-        d = src[3];
-        e = src[4];
+  for ( i=0; i<source_width; i+=5 )
+  {
+      a = src[0];
+      b = src[1];
+      c = src[2];
+      d = src[3];
+      e = src[4];
 
-        des[0] = a;
-        des[1] = ((b*192 + c* 64 + 128)>>8);
-        des[2] = ((c*128 + d*128 + 128)>>8);
-        des[3] = ((d* 64 + e*192 + 128)>>8);
+      des[0] = a;
+      des[1] = ((b*192 + c* 64 + 128)>>8);
+      des[2] = ((c*128 + d*128 + 128)>>8);
+      des[3] = ((d* 64 + e*192 + 128)>>8);
 
-        src += 5;
-        des += 4;
-    }
-    */
-    (void) dest_width;
+      src += 5;
+      des += 4;
+  }
+  */
+  (void) dest_width;
 
-    __asm
-    {
+  __asm {
 
-        mov         esi,        source              ;
-        mov         edi,        dest                ;
+    mov         esi,        source;
+    mov         edi,        dest;
 
-        mov         ecx,        source_width         ;
-        movq        mm5,        const54_1           ;
+    mov         ecx,        source_width;
+    movq        mm5,        const54_1;
 
-        pxor        mm7,        mm7                 ;
-        movq        mm6,        const54_2           ;
+    pxor        mm7,        mm7;
+    movq        mm6,        const54_2;
 
-        movq        mm4,        round_values         ;
-        lea         edx,        [esi+ecx]           ;
-        horizontal_line_5_4_loop:
+    movq        mm4,        round_values;
+    lea         edx,        [esi+ecx];
+    horizontal_line_5_4_loop:
 
-        movq        mm0,        QWORD PTR  [esi]    ;
-        00 01 02 03 04 05 06 07
-        movq        mm1,        mm0                 ;
-        00 01 02 03 04 05 06 07
+    movq        mm0,        QWORD PTR  [esi];
+    00 01 02 03 04 05 06 07
+    movq        mm1,        mm0;
+    00 01 02 03 04 05 06 07
 
-        psrlq       mm0,        8                   ;
-        01 02 03 04 05 06 07 xx
-        punpcklbw   mm1,        mm7                 ;
-        xx 00 xx 01 xx 02 xx 03
+    psrlq       mm0,        8;
+    01 02 03 04 05 06 07 xx
+    punpcklbw   mm1,        mm7;
+    xx 00 xx 01 xx 02 xx 03
 
-        punpcklbw   mm0,        mm7                 ;
-        xx 01 xx 02 xx 03 xx 04
-        pmullw      mm1,        mm5
+    punpcklbw   mm0,        mm7;
+    xx 01 xx 02 xx 03 xx 04
+    pmullw      mm1,        mm5
 
-        pmullw      mm0,        mm6
-        add         esi,        5
+    pmullw      mm0,        mm6
+    add         esi,        5
 
-        add         edi,        4
-        paddw       mm1,        mm0
+    add         edi,        4
+    paddw       mm1,        mm0
 
-        paddw       mm1,        mm4
-        psrlw       mm1,        8
+    paddw       mm1,        mm4
+    psrlw       mm1,        8
 
-        cmp         esi,        edx
-        packuswb    mm1,        mm7
+    cmp         esi,        edx
+    packuswb    mm1,        mm7
 
-        movd        DWORD PTR [edi-4], mm1
+    movd        DWORD PTR [edi-4], mm1
 
-        jl          horizontal_line_5_4_loop
+    jl          horizontal_line_5_4_loop
 
-    }
+  }
 
 }
 __declspec(align(16)) const static unsigned short one_fourths[]   = {  64,  64,  64, 64  };
@@ -1327,86 +1307,84 @@ __declspec(align(16)) const static unsigned short two_fourths[]   = { 128, 128,
 __declspec(align(16)) const static unsigned short three_fourths[] = { 192, 192, 192, 192 };
 
 static
-void vertical_band_5_4_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
+void vertical_band_5_4_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width) {
 
-    __asm
-    {
-        push        ebx
+  __asm {
+    push        ebx
 
-        mov         esi,    source                    // Get the source and destination pointer
-        mov         ecx,    src_pitch               // Get the pitch size
+    mov         esi,    source                    // Get the source and destination pointer
+    mov         ecx,    src_pitch               // Get the pitch size
 
-        mov         edi,    dest                    // tow lines below
-        pxor        mm7,    mm7                     // clear out mm7
+    mov         edi,    dest                    // tow lines below
+    pxor        mm7,    mm7                     // clear out mm7
 
-        mov         edx,    dest_pitch               // Loop counter
-        mov         ebx,    dest_width
+    mov         edx,    dest_pitch               // Loop counter
+    mov         ebx,    dest_width
 
-        vs_5_4_loop:
+    vs_5_4_loop:
 
-        movd        mm0,    DWORD ptr [esi]         // src[0];
-        movd        mm1,    DWORD ptr [esi+ecx]     // src[1];
+    movd        mm0,    DWORD ptr [esi]         // src[0];
+    movd        mm1,    DWORD ptr [esi+ecx]     // src[1];
 
-        movd        mm2,    DWORD ptr [esi+ecx*2]
-        lea         eax,    [esi+ecx*2]             //
+    movd        mm2,    DWORD ptr [esi+ecx*2]
+    lea         eax,    [esi+ecx*2]             //
 
-        punpcklbw   mm1,    mm7
-        punpcklbw   mm2,    mm7
+    punpcklbw   mm1,    mm7
+    punpcklbw   mm2,    mm7
 
-        movq        mm3,    mm2
-        pmullw      mm1,    three_fourths
+    movq        mm3,    mm2
+    pmullw      mm1,    three_fourths
 
-        pmullw      mm2,    one_fourths
-        movd        mm4,    [eax+ecx]
+    pmullw      mm2,    one_fourths
+    movd        mm4,    [eax+ecx]
 
-        pmullw      mm3,    two_fourths
-        punpcklbw   mm4,    mm7
+    pmullw      mm3,    two_fourths
+    punpcklbw   mm4,    mm7
 
-        movq        mm5,    mm4
-        pmullw      mm4,    two_fourths
+    movq        mm5,    mm4
+    pmullw      mm4,    two_fourths
 
-        paddw       mm1,    mm2
-        movd        mm6,    [eax+ecx*2]
+    paddw       mm1,    mm2
+    movd        mm6,    [eax+ecx*2]
 
-        pmullw      mm5,    one_fourths
-        paddw       mm1,    round_values;
+    pmullw      mm5,    one_fourths
+    paddw       mm1,    round_values;
 
-        paddw       mm3,    mm4
-        psrlw       mm1,    8
+    paddw       mm3,    mm4
+    psrlw       mm1,    8
 
-        punpcklbw   mm6,    mm7
-        paddw       mm3,    round_values
+    punpcklbw   mm6,    mm7
+    paddw       mm3,    round_values
 
-        pmullw      mm6,    three_fourths
-        psrlw       mm3,    8
+    pmullw      mm6,    three_fourths
+    psrlw       mm3,    8
 
-        packuswb    mm1,    mm7
-        packuswb    mm3,    mm7
+    packuswb    mm1,    mm7
+    packuswb    mm3,    mm7
 
-        movd        DWORD PTR [edi], mm0
-        movd        DWORD PTR [edi+edx], mm1
+    movd        DWORD PTR [edi], mm0
+    movd        DWORD PTR [edi+edx], mm1
 
 
-        paddw       mm5,    mm6
-        movd        DWORD PTR [edi+edx*2], mm3
+    paddw       mm5,    mm6
+    movd        DWORD PTR [edi+edx*2], mm3
 
-        lea         eax,    [edi+edx*2]
-        paddw       mm5,    round_values
+    lea         eax,    [edi+edx*2]
+    paddw       mm5,    round_values
 
-        psrlw       mm5,    8
-        add         edi,    4
+    psrlw       mm5,    8
+    add         edi,    4
 
-        packuswb    mm5,    mm7
-        movd        DWORD PTR [eax+edx], mm5
+    packuswb    mm5,    mm7
+    movd        DWORD PTR [eax+edx], mm5
 
-        add         esi,    4
-        sub         ebx,    4
+    add         esi,    4
+    sub         ebx,    4
 
-        jg         vs_5_4_loop
+    jg         vs_5_4_loop
 
-        pop         ebx
-    }
+    pop         ebx
+  }
 }
 
 
@@ -1417,96 +1395,94 @@ __declspec(align(16)) const static unsigned short const53_2[] = {256, 171,  85,
 static
 void horizontal_line_5_3_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
 
-    (void) dest_width;
-    __asm
-    {
+  (void) dest_width;
+  __asm {
 
-        mov         esi,        source              ;
-        mov         edi,        dest                ;
+    mov         esi,        source;
+    mov         edi,        dest;
 
-        mov         ecx,        source_width         ;
-        movq        mm5,        const53_1           ;
+    mov         ecx,        source_width;
+    movq        mm5,        const53_1;
 
-        pxor        mm7,        mm7                 ;
-        movq        mm6,        const53_2           ;
+    pxor        mm7,        mm7;
+    movq        mm6,        const53_2;
 
-        movq        mm4,        round_values         ;
-        lea         edx,        [esi+ecx-5]         ;
-        horizontal_line_5_3_loop:
+    movq        mm4,        round_values;
+    lea         edx,        [esi+ecx-5];
+    horizontal_line_5_3_loop:
 
-        movq        mm0,        QWORD PTR  [esi]    ;
-        00 01 02 03 04 05 06 07
-        movq        mm1,        mm0                 ;
-        00 01 02 03 04 05 06 07
+    movq        mm0,        QWORD PTR  [esi];
+    00 01 02 03 04 05 06 07
+    movq        mm1,        mm0;
+    00 01 02 03 04 05 06 07
 
-        psllw       mm0,        8                   ;
-        xx 00 xx 02 xx 04 xx 06
-        psrlw       mm1,        8                   ;
-        01 xx 03 xx 05 xx 07 xx
+    psllw       mm0,        8;
+    xx 00 xx 02 xx 04 xx 06
+    psrlw       mm1,        8;
+    01 xx 03 xx 05 xx 07 xx
 
-        psrlw       mm0,        8                   ;
-        00 xx 02 xx 04 xx 06 xx
-        psllq       mm1,        16                  ;
-        xx xx 01 xx 03 xx 05 xx
+    psrlw       mm0,        8;
+    00 xx 02 xx 04 xx 06 xx
+    psllq       mm1,        16;
+    xx xx 01 xx 03 xx 05 xx
 
-        pmullw      mm0,        mm6
+    pmullw      mm0,        mm6
 
-        pmullw      mm1,        mm5
-        add         esi,        5
+    pmullw      mm1,        mm5
+    add         esi,        5
 
-        add         edi,        3
-        paddw       mm1,        mm0
+    add         edi,        3
+    paddw       mm1,        mm0
 
-        paddw       mm1,        mm4
-        psrlw       mm1,        8
+    paddw       mm1,        mm4
+    psrlw       mm1,        8
 
-        cmp         esi,        edx
-        packuswb    mm1,        mm7
+    cmp         esi,        edx
+    packuswb    mm1,        mm7
 
-        movd        DWORD PTR [edi-3], mm1
-        jl          horizontal_line_5_3_loop
+    movd        DWORD PTR [edi-3], mm1
+    jl          horizontal_line_5_3_loop
 
-//exit condition
-        movq        mm0,        QWORD PTR  [esi]    ;
-        00 01 02 03 04 05 06 07
-        movq        mm1,        mm0                 ;
-        00 01 02 03 04 05 06 07
+// exit condition
+    movq        mm0,        QWORD PTR  [esi];
+    00 01 02 03 04 05 06 07
+    movq        mm1,        mm0;
+    00 01 02 03 04 05 06 07
 
-        psllw       mm0,        8                   ;
-        xx 00 xx 02 xx 04 xx 06
-        psrlw       mm1,        8                   ;
-        01 xx 03 xx 05 xx 07 xx
+    psllw       mm0,        8;
+    xx 00 xx 02 xx 04 xx 06
+    psrlw       mm1,        8;
+    01 xx 03 xx 05 xx 07 xx
 
-        psrlw       mm0,        8                   ;
-        00 xx 02 xx 04 xx 06 xx
-        psllq       mm1,        16                  ;
-        xx xx 01 xx 03 xx 05 xx
+    psrlw       mm0,        8;
+    00 xx 02 xx 04 xx 06 xx
+    psllq       mm1,        16;
+    xx xx 01 xx 03 xx 05 xx
 
-        pmullw      mm0,        mm6
+    pmullw      mm0,        mm6
 
-        pmullw      mm1,        mm5
-        paddw       mm1,        mm0
+    pmullw      mm1,        mm5
+    paddw       mm1,        mm0
 
-        paddw       mm1,        mm4
-        psrlw       mm1,        8
+    paddw       mm1,        mm4
+    psrlw       mm1,        8
 
-        packuswb    mm1,        mm7
-        movd        eax,        mm1
+    packuswb    mm1,        mm7
+    movd        eax,        mm1
 
-        mov         edx,        eax
-        shr         edx,        16
+    mov         edx,        eax
+    shr         edx,        16
 
-        mov         WORD PTR[edi],   ax
-        mov         BYTE PTR[edi+2], dl
+    mov         WORD PTR[edi],   ax
+    mov         BYTE PTR[edi+2], dl
 
-    }
+  }
 
 }
 
@@ -1514,75 +1490,73 @@ __declspec(align(16)) const static unsigned short one_thirds[] = {  85,  85,  85
 __declspec(align(16)) const static unsigned short two_thirds[] = { 171, 171, 171, 171 };
 
 static
-void vertical_band_5_3_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
+void vertical_band_5_3_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width) {
 
-    __asm
-    {
-        push        ebx
+  __asm {
+    push        ebx
 
-        mov         esi,    source                    // Get the source and destination pointer
-        mov         ecx,    src_pitch               // Get the pitch size
+    mov         esi,    source                    // Get the source and destination pointer
+    mov         ecx,    src_pitch               // Get the pitch size
 
-        mov         edi,    dest                    // tow lines below
-        pxor        mm7,    mm7                     // clear out mm7
+    mov         edi,    dest                    // tow lines below
+    pxor        mm7,    mm7                     // clear out mm7
 
-        mov         edx,    dest_pitch               // Loop counter
-        movq        mm5,    one_thirds
+    mov         edx,    dest_pitch               // Loop counter
+    movq        mm5,    one_thirds
 
-        movq        mm6,    two_thirds
-        mov         ebx,    dest_width;
+    movq        mm6,    two_thirds
+    mov         ebx,    dest_width;
 
-        vs_5_3_loop:
+    vs_5_3_loop:
 
-        movd        mm0,    DWORD ptr [esi]         // src[0];
-        movd        mm1,    DWORD ptr [esi+ecx]     // src[1];
+    movd        mm0,    DWORD ptr [esi]         // src[0];
+    movd        mm1,    DWORD ptr [esi+ecx]     // src[1];
 
-        movd        mm2,    DWORD ptr [esi+ecx*2]
-        lea         eax,    [esi+ecx*2]             //
+    movd        mm2,    DWORD ptr [esi+ecx*2]
+    lea         eax,    [esi+ecx*2]             //
 
-        punpcklbw   mm1,    mm7
-        punpcklbw   mm2,    mm7
+    punpcklbw   mm1,    mm7
+    punpcklbw   mm2,    mm7
 
-        pmullw      mm1,    mm5
-        pmullw      mm2,    mm6
+    pmullw      mm1,    mm5
+    pmullw      mm2,    mm6
 
-        movd        mm3,    DWORD ptr [eax+ecx]
-        movd        mm4,    DWORD ptr [eax+ecx*2]
+    movd        mm3,    DWORD ptr [eax+ecx]
+    movd        mm4,    DWORD ptr [eax+ecx*2]
 
-        punpcklbw   mm3,    mm7
-        punpcklbw   mm4,    mm7
+    punpcklbw   mm3,    mm7
+    punpcklbw   mm4,    mm7
 
-        pmullw      mm3,    mm6
-        pmullw      mm4,    mm5
+    pmullw      mm3,    mm6
+    pmullw      mm4,    mm5
 
 
-        movd        DWORD PTR [edi], mm0
-        paddw       mm1,    mm2
+    movd        DWORD PTR [edi], mm0
+    paddw       mm1,    mm2
 
-        paddw       mm1,    round_values
-        psrlw       mm1,    8
+    paddw       mm1,    round_values
+    psrlw       mm1,    8
 
-        packuswb    mm1,    mm7
-        paddw       mm3,    mm4
+    packuswb    mm1,    mm7
+    paddw       mm3,    mm4
 
-        paddw       mm3,    round_values
-        movd        DWORD PTR [edi+edx], mm1
+    paddw       mm3,    round_values
+    movd        DWORD PTR [edi+edx], mm1
 
-        psrlw       mm3,    8
-        packuswb    mm3,    mm7
+    psrlw       mm3,    8
+    packuswb    mm3,    mm7
 
-        movd        DWORD PTR [edi+edx*2], mm3
+    movd        DWORD PTR [edi+edx*2], mm3
 
 
-        add         edi,    4
-        add         esi,    4
+    add         edi,    4
+    add         esi,    4
 
-        sub         ebx,    4
-        jg          vs_5_3_loop
+    sub         ebx,    4
+    jg          vs_5_3_loop
 
-        pop         ebx
-    }
+    pop         ebx
+  }
 }
 
 
@@ -1609,48 +1583,45 @@ void vertical_band_5_3_scale_mmx(unsigned char *source, unsigned int src_pitch,
 static
 void horizontal_line_2_1_scale_mmx
 (
-    const unsigned char *source,
-    unsigned int source_width,
-    unsigned char *dest,
-    unsigned int dest_width
-)
-{
-    (void) dest_width;
-    (void) source_width;
-    __asm
-    {
-        mov         esi,    source
-        mov         edi,    dest
-
-        pxor        mm7,    mm7
-        mov         ecx,    dest_width
-
-        xor         edx,    edx
-        hs_2_1_loop:
-
-        movq        mm0,    [esi+edx*2]
-        psllw       mm0,    8
-
-        psrlw       mm0,    8
-        packuswb    mm0,    mm7
-
-        movd        DWORD Ptr [edi+edx], mm0;
-        add         edx,    4
-
-        cmp         edx,    ecx
-        jl          hs_2_1_loop
-
-    }
+  const unsigned char *source,
+  unsigned int source_width,
+  unsigned char *dest,
+  unsigned int dest_width
+) {
+  (void) dest_width;
+  (void) source_width;
+  __asm {
+    mov         esi,    source
+    mov         edi,    dest
+
+    pxor        mm7,    mm7
+    mov         ecx,    dest_width
+
+    xor         edx,    edx
+    hs_2_1_loop:
+
+    movq        mm0,    [esi+edx*2]
+    psllw       mm0,    8
+
+    psrlw       mm0,    8
+    packuswb    mm0,    mm7
+
+    movd        DWORD Ptr [edi+edx], mm0;
+    add         edx,    4
+
+    cmp         edx,    ecx
+    jl          hs_2_1_loop
+
+  }
 }
 
 
 
 static
-void vertical_band_2_1_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
-    (void) dest_pitch;
-    (void) src_pitch;
-    vpx_memcpy(dest, source, dest_width);
+void vertical_band_2_1_scale_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width) {
+  (void) dest_pitch;
+  (void) src_pitch;
+  vpx_memcpy(dest, source, dest_width);
 }
 
 
@@ -1658,91 +1629,88 @@ __declspec(align(16)) const static unsigned short three_sixteenths[] = {  48,  4
 __declspec(align(16)) const static unsigned short ten_sixteenths[]   = { 160, 160, 160, 160 };
 
 static
-void vertical_band_2_1_scale_i_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width)
-{
+void vertical_band_2_1_scale_i_mmx(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width) {
 
-    (void) dest_pitch;
-    __asm
-    {
-        mov         esi,        source
-        mov         edi,        dest
+  (void) dest_pitch;
+  __asm {
+    mov         esi,        source
+    mov         edi,        dest
 
-        mov         eax,        src_pitch
-        mov         edx,        dest_width
+    mov         eax,        src_pitch
+    mov         edx,        dest_width
 
-        pxor        mm7,        mm7
-        sub         esi,        eax             //back one line
+    pxor        mm7,        mm7
+    sub         esi,        eax             // back one line
 
 
-        lea         ecx,        [esi+edx];
-        movq        mm6,        round_values;
+    lea         ecx,        [esi+edx];
+    movq        mm6,        round_values;
 
-        movq        mm5,        three_sixteenths;
-        movq        mm4,        ten_sixteenths;
+    movq        mm5,        three_sixteenths;
+    movq        mm4,        ten_sixteenths;
 
-        vs_2_1_i_loop:
-        movd        mm0,        [esi]           //
-        movd        mm1,        [esi+eax]       //
+    vs_2_1_i_loop:
+    movd        mm0,        [esi]           //
+    movd        mm1,        [esi+eax]       //
 
-        movd        mm2,        [esi+eax*2]     //
-        punpcklbw   mm0,        mm7
+    movd        mm2,        [esi+eax*2]     //
+    punpcklbw   mm0,        mm7
 
-        pmullw      mm0,        mm5
-        punpcklbw   mm1,        mm7
+    pmullw      mm0,        mm5
+    punpcklbw   mm1,        mm7
 
-        pmullw      mm1,        mm4
-        punpcklbw   mm2,        mm7
+    pmullw      mm1,        mm4
+    punpcklbw   mm2,        mm7
 
-        pmullw      mm2,        mm5
-        paddw       mm0,        round_values
+    pmullw      mm2,        mm5
+    paddw       mm0,        round_values
 
-        paddw       mm1,        mm2
-        paddw       mm0,        mm1
+    paddw       mm1,        mm2
+    paddw       mm0,        mm1
 
-        psrlw       mm0,        8
-        packuswb    mm0,        mm7
+    psrlw       mm0,        8
+    packuswb    mm0,        mm7
 
-        movd        DWORD PTR [edi],        mm0
-        add         esi,        4
+    movd        DWORD PTR [edi],        mm0
+    add         esi,        4
 
-        add         edi,        4;
-        cmp         esi,        ecx
-        jl          vs_2_1_i_loop
+    add         edi,        4;
+    cmp         esi,        ecx
+    jl          vs_2_1_i_loop
 
-    }
+  }
 }
 
 
 
 void
-register_mmxscalers(void)
-{
-    vp8_horizontal_line_1_2_scale        = horizontal_line_1_2_scale_mmx;
-    vp8_vertical_band_1_2_scale          = vertical_band_1_2_scale_mmx;
-    vp8_last_vertical_band_1_2_scale      = last_vertical_band_1_2_scale_mmx;
-    vp8_horizontal_line_3_5_scale        = horizontal_line_3_5_scale_mmx;
-    vp8_vertical_band_3_5_scale          = vertical_band_3_5_scale_mmx;
-    vp8_last_vertical_band_3_5_scale      = last_vertical_band_3_5_scale_mmx;
-    vp8_horizontal_line_4_5_scale        = horizontal_line_4_5_scale_mmx;
-    vp8_vertical_band_4_5_scale          = vertical_band_4_5_scale_mmx;
-    vp8_last_vertical_band_4_5_scale      = last_vertical_band_4_5_scale_mmx;
-
-    vp8_horizontal_line_3_4_scale        = vp8cx_horizontal_line_3_4_scale_c;
-    vp8_vertical_band_3_4_scale          = vp8cx_vertical_band_3_4_scale_c;
-    vp8_last_vertical_band_3_4_scale      = vp8cx_last_vertical_band_3_4_scale_c;
-    vp8_horizontal_line_2_3_scale        = vp8cx_horizontal_line_2_3_scale_c;
-    vp8_vertical_band_2_3_scale          = vp8cx_vertical_band_2_3_scale_c;
-    vp8_last_vertical_band_2_3_scale      = vp8cx_last_vertical_band_2_3_scale_c;
-
-
-
-    vp8_vertical_band_5_4_scale           = vertical_band_5_4_scale_mmx;
-    vp8_vertical_band_5_3_scale           = vertical_band_5_3_scale_mmx;
-    vp8_vertical_band_2_1_scale           = vertical_band_2_1_scale_mmx;
-    vp8_vertical_band_2_1_scale_i         = vertical_band_2_1_scale_i_mmx;
-    vp8_horizontal_line_2_1_scale         = horizontal_line_2_1_scale_mmx;
-    vp8_horizontal_line_5_3_scale         = horizontal_line_5_3_scale_mmx;
-    vp8_horizontal_line_5_4_scale         = horizontal_line_5_4_scale_mmx;
+register_mmxscalers(void) {
+  vp8_horizontal_line_1_2_scale        = horizontal_line_1_2_scale_mmx;
+  vp8_vertical_band_1_2_scale          = vertical_band_1_2_scale_mmx;
+  vp8_last_vertical_band_1_2_scale      = last_vertical_band_1_2_scale_mmx;
+  vp8_horizontal_line_3_5_scale        = horizontal_line_3_5_scale_mmx;
+  vp8_vertical_band_3_5_scale          = vertical_band_3_5_scale_mmx;
+  vp8_last_vertical_band_3_5_scale      = last_vertical_band_3_5_scale_mmx;
+  vp8_horizontal_line_4_5_scale        = horizontal_line_4_5_scale_mmx;
+  vp8_vertical_band_4_5_scale          = vertical_band_4_5_scale_mmx;
+  vp8_last_vertical_band_4_5_scale      = last_vertical_band_4_5_scale_mmx;
+
+  vp8_horizontal_line_3_4_scale        = vp8cx_horizontal_line_3_4_scale_c;
+  vp8_vertical_band_3_4_scale          = vp8cx_vertical_band_3_4_scale_c;
+  vp8_last_vertical_band_3_4_scale      = vp8cx_last_vertical_band_3_4_scale_c;
+  vp8_horizontal_line_2_3_scale        = vp8cx_horizontal_line_2_3_scale_c;
+  vp8_vertical_band_2_3_scale          = vp8cx_vertical_band_2_3_scale_c;
+  vp8_last_vertical_band_2_3_scale      = vp8cx_last_vertical_band_2_3_scale_c;
+
+
+
+  vp8_vertical_band_5_4_scale           = vertical_band_5_4_scale_mmx;
+  vp8_vertical_band_5_3_scale           = vertical_band_5_3_scale_mmx;
+  vp8_vertical_band_2_1_scale           = vertical_band_2_1_scale_mmx;
+  vp8_vertical_band_2_1_scale_i         = vertical_band_2_1_scale_i_mmx;
+  vp8_horizontal_line_2_1_scale         = horizontal_line_2_1_scale_mmx;
+  vp8_horizontal_line_5_3_scale         = horizontal_line_5_3_scale_mmx;
+  vp8_horizontal_line_5_4_scale         = horizontal_line_5_4_scale_mmx;
 
 
 
index 19e61c3..98913d1 100644 (file)
@@ -46,46 +46,42 @@ extern void register_mmxscalers(void);
  *
  ****************************************************************************/
 void
-vp8_scale_machine_specific_config(void)
-{
-    // If MMX supported then set to use MMX versions of functions else
-    // use original 'C' versions.
-    int mmx_enabled;
-    int xmm_enabled;
-    int wmt_enabled;
+vp8_scale_machine_specific_config(void) {
+  // If MMX supported then set to use MMX versions of functions else
+  // use original 'C' versions.
+  int mmx_enabled;
+  int xmm_enabled;
+  int wmt_enabled;
 
-    vpx_get_processor_flags(&mmx_enabled, &xmm_enabled, &wmt_enabled);
+  vpx_get_processor_flags(&mmx_enabled, &xmm_enabled, &wmt_enabled);
 
-    if (mmx_enabled || xmm_enabled || wmt_enabled)
-    {
-        register_mmxscalers();
-    }
-    else
-    {
-        vp8_horizontal_line_1_2_scale        = vp8cx_horizontal_line_1_2_scale_c;
-        vp8_vertical_band_1_2_scale          = vp8cx_vertical_band_1_2_scale_c;
-        vp8_last_vertical_band_1_2_scale      = vp8cx_last_vertical_band_1_2_scale_c;
-        vp8_horizontal_line_3_5_scale        = vp8cx_horizontal_line_3_5_scale_c;
-        vp8_vertical_band_3_5_scale          = vp8cx_vertical_band_3_5_scale_c;
-        vp8_last_vertical_band_3_5_scale      = vp8cx_last_vertical_band_3_5_scale_c;
-        vp8_horizontal_line_3_4_scale        = vp8cx_horizontal_line_3_4_scale_c;
-        vp8_vertical_band_3_4_scale          = vp8cx_vertical_band_3_4_scale_c;
-        vp8_last_vertical_band_3_4_scale      = vp8cx_last_vertical_band_3_4_scale_c;
-        vp8_horizontal_line_2_3_scale        = vp8cx_horizontal_line_2_3_scale_c;
-        vp8_vertical_band_2_3_scale          = vp8cx_vertical_band_2_3_scale_c;
-        vp8_last_vertical_band_2_3_scale      = vp8cx_last_vertical_band_2_3_scale_c;
-        vp8_horizontal_line_4_5_scale        = vp8cx_horizontal_line_4_5_scale_c;
-        vp8_vertical_band_4_5_scale          = vp8cx_vertical_band_4_5_scale_c;
-        vp8_last_vertical_band_4_5_scale      = vp8cx_last_vertical_band_4_5_scale_c;
+  if (mmx_enabled || xmm_enabled || wmt_enabled) {
+    register_mmxscalers();
+  } else {
+    vp8_horizontal_line_1_2_scale        = vp8cx_horizontal_line_1_2_scale_c;
+    vp8_vertical_band_1_2_scale          = vp8cx_vertical_band_1_2_scale_c;
+    vp8_last_vertical_band_1_2_scale      = vp8cx_last_vertical_band_1_2_scale_c;
+    vp8_horizontal_line_3_5_scale        = vp8cx_horizontal_line_3_5_scale_c;
+    vp8_vertical_band_3_5_scale          = vp8cx_vertical_band_3_5_scale_c;
+    vp8_last_vertical_band_3_5_scale      = vp8cx_last_vertical_band_3_5_scale_c;
+    vp8_horizontal_line_3_4_scale        = vp8cx_horizontal_line_3_4_scale_c;
+    vp8_vertical_band_3_4_scale          = vp8cx_vertical_band_3_4_scale_c;
+    vp8_last_vertical_band_3_4_scale      = vp8cx_last_vertical_band_3_4_scale_c;
+    vp8_horizontal_line_2_3_scale        = vp8cx_horizontal_line_2_3_scale_c;
+    vp8_vertical_band_2_3_scale          = vp8cx_vertical_band_2_3_scale_c;
+    vp8_last_vertical_band_2_3_scale      = vp8cx_last_vertical_band_2_3_scale_c;
+    vp8_horizontal_line_4_5_scale        = vp8cx_horizontal_line_4_5_scale_c;
+    vp8_vertical_band_4_5_scale          = vp8cx_vertical_band_4_5_scale_c;
+    vp8_last_vertical_band_4_5_scale      = vp8cx_last_vertical_band_4_5_scale_c;
 
 
-        vp8_vertical_band_5_4_scale           = vp8cx_vertical_band_5_4_scale_c;
-        vp8_vertical_band_5_3_scale           = vp8cx_vertical_band_5_3_scale_c;
-        vp8_vertical_band_2_1_scale           = vp8cx_vertical_band_2_1_scale_c;
-        vp8_vertical_band_2_1_scale_i         = vp8cx_vertical_band_2_1_scale_i_c;
-        vp8_horizontal_line_2_1_scale         = vp8cx_horizontal_line_2_1_scale_c;
-        vp8_horizontal_line_5_3_scale         = vp8cx_horizontal_line_5_3_scale_c;
-        vp8_horizontal_line_5_4_scale         = vp8cx_horizontal_line_5_4_scale_c;
+    vp8_vertical_band_5_4_scale           = vp8cx_vertical_band_5_4_scale_c;
+    vp8_vertical_band_5_3_scale           = vp8cx_vertical_band_5_3_scale_c;
+    vp8_vertical_band_2_1_scale           = vp8cx_vertical_band_2_1_scale_c;
+    vp8_vertical_band_2_1_scale_i         = vp8cx_vertical_band_2_1_scale_i_c;
+    vp8_horizontal_line_2_1_scale         = vp8cx_horizontal_line_2_1_scale_c;
+    vp8_horizontal_line_5_3_scale         = vp8cx_horizontal_line_5_3_scale_c;
+    vp8_horizontal_line_5_4_scale         = vp8cx_horizontal_line_5_4_scale_c;
 
-    }
+  }
 }
index 800f700..6a8a1fc 100644 (file)
@@ -16,54 +16,54 @@ extern "C"
 {
 #endif
 
-#define VP7BORDERINPIXELS       48
 #define VP8BORDERINPIXELS       32
+#define VP9BORDERINPIXELS       64
+#define VP9_INTERP_EXTEND        4
 
-    /*************************************
-     For INT_YUV:
+  /*************************************
+   For INT_YUV:
 
-     Y = (R+G*2+B)/4;
-     U = (R-B)/2;
-     V =  (G*2 - R - B)/4;
-    And
-     R = Y+U-V;
-     G = Y+V;
-     B = Y-U-V;
-    ************************************/
-    typedef enum
-    {
-        REG_YUV = 0,    /* Regular yuv */
-        INT_YUV = 1     /* The type of yuv that can be tranfer to and from RGB through integer transform */
-              }
-              YUV_TYPE;
+   Y = (R+G*2+B)/4;
+   U = (R-B)/2;
+   V =  (G*2 - R - B)/4;
+  And
+   R = Y+U-V;
+   G = Y+V;
+   B = Y-U-V;
+  ************************************/
+  typedef enum
+  {
+    REG_YUV = 0,    /* Regular yuv */
+    INT_YUV = 1     /* The type of yuv that can be tranfer to and from RGB through integer transform */
+  }
+            YUV_TYPE;
 
-    typedef struct yv12_buffer_config
-    {
-        int   y_width;
-        int   y_height;
-        int   y_stride;
-/*    int   yinternal_width; */
+  typedef struct yv12_buffer_config {
+    int   y_width;
+    int   y_height;
+    int   y_stride;
+    /*    int   yinternal_width; */
 
-        int   uv_width;
-        int   uv_height;
-        int   uv_stride;
-/*    int   uvinternal_width; */
+    int   uv_width;
+    int   uv_height;
+    int   uv_stride;
+    /*    int   uvinternal_width; */
 
-        unsigned char *y_buffer;
-        unsigned char *u_buffer;
-        unsigned char *v_buffer;
+    unsigned char *y_buffer;
+    unsigned char *u_buffer;
+    unsigned char *v_buffer;
 
-        unsigned char *buffer_alloc;
-        int border;
-        int frame_size;
-        YUV_TYPE clrtype;
+    unsigned char *buffer_alloc;
+    int border;
+    int frame_size;
+    YUV_TYPE clrtype;
 
-        int corrupted;
-        int flags;
-    } YV12_BUFFER_CONFIG;
+    int corrupted;
+    int flags;
+  } YV12_BUFFER_CONFIG;
 
-    int vp8_yv12_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf, int width, int height, int border);
-    int vp8_yv12_de_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf);
+  int vp8_yv12_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf, int width, int height, int border);
+  int vp8_yv12_de_alloc_frame_buffer(YV12_BUFFER_CONFIG *ybf);
 
 #ifdef __cplusplus
 }