webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Macros | Functions
scale_common.cc File Reference
#include "libyuv/scale.h"
#include <assert.h>
#include <string.h>
#include "libyuv/cpu_id.h"
#include "libyuv/planar_functions.h"
#include "libyuv/row.h"
#include "libyuv/scale_row.h"

Macros

#define BLENDER(a, b, f)
 
#define BLENDER(a, b, f)
 
#define BLENDER1(a, b, f)   ((a) * (0x7f ^ f) + (b) * f) >> 7
 
#define BLENDERC(a, b, f, s)
 
#define BLENDER(a, b, f)
 
#define CENTERSTART(dx, s)   (dx < 0) ? -((-dx >> 1) + s) : ((dx >> 1) + s)
 

Functions

void ScaleRowDown2_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown2_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown2Linear_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown2Linear_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown2Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown2Box_Odd_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown2Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown4_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown4_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown4Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown4Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown34_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown34_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown34_0_Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *d, int dst_width)
 
void ScaleRowDown34_0_Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *d, int dst_width)
 
void ScaleRowDown34_1_Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *d, int dst_width)
 
void ScaleRowDown34_1_Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *d, int dst_width)
 
void ScaleCols_C (uint8 *dst_ptr, const uint8 *src_ptr, int dst_width, int x, int dx)
 
void ScaleCols_16_C (uint16 *dst_ptr, const uint16 *src_ptr, int dst_width, int x, int dx)
 
void ScaleColsUp2_C (uint8 *dst_ptr, const uint8 *src_ptr, int dst_width, int x, int dx)
 
void ScaleColsUp2_16_C (uint16 *dst_ptr, const uint16 *src_ptr, int dst_width, int x, int dx)
 
void ScaleFilterCols_C (uint8 *dst_ptr, const uint8 *src_ptr, int dst_width, int x, int dx)
 
void ScaleFilterCols64_C (uint8 *dst_ptr, const uint8 *src_ptr, int dst_width, int x32, int dx)
 
void ScaleFilterCols_16_C (uint16 *dst_ptr, const uint16 *src_ptr, int dst_width, int x, int dx)
 
void ScaleFilterCols64_16_C (uint16 *dst_ptr, const uint16 *src_ptr, int dst_width, int x32, int dx)
 
void ScaleRowDown38_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst, int dst_width)
 
void ScaleRowDown38_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst, int dst_width)
 
void ScaleRowDown38_3_Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst_ptr, int dst_width)
 
void ScaleRowDown38_3_Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst_ptr, int dst_width)
 
void ScaleRowDown38_2_Box_C (const uint8 *src_ptr, ptrdiff_t src_stride, uint8 *dst_ptr, int dst_width)
 
void ScaleRowDown38_2_Box_16_C (const uint16 *src_ptr, ptrdiff_t src_stride, uint16 *dst_ptr, int dst_width)
 
void ScaleAddRow_C (const uint8 *src_ptr, uint16 *dst_ptr, int src_width)
 
void ScaleAddRow_16_C (const uint16 *src_ptr, uint32 *dst_ptr, int src_width)
 
void ScaleARGBRowDown2_C (const uint8 *src_argb, ptrdiff_t src_stride, uint8 *dst_argb, int dst_width)
 
void ScaleARGBRowDown2Linear_C (const uint8 *src_argb, ptrdiff_t src_stride, uint8 *dst_argb, int dst_width)
 
void ScaleARGBRowDown2Box_C (const uint8 *src_argb, ptrdiff_t src_stride, uint8 *dst_argb, int dst_width)
 
void ScaleARGBRowDownEven_C (const uint8 *src_argb, ptrdiff_t src_stride, int src_stepx, uint8 *dst_argb, int dst_width)
 
void ScaleARGBRowDownEvenBox_C (const uint8 *src_argb, ptrdiff_t src_stride, int src_stepx, uint8 *dst_argb, int dst_width)
 
void ScaleARGBCols_C (uint8 *dst_argb, const uint8 *src_argb, int dst_width, int x, int dx)
 
void ScaleARGBCols64_C (uint8 *dst_argb, const uint8 *src_argb, int dst_width, int x32, int dx)
 
void ScaleARGBColsUp2_C (uint8 *dst_argb, const uint8 *src_argb, int dst_width, int x, int dx)
 
void ScaleARGBFilterCols_C (uint8 *dst_argb, const uint8 *src_argb, int dst_width, int x, int dx)
 
void ScaleARGBFilterCols64_C (uint8 *dst_argb, const uint8 *src_argb, int dst_width, int x32, int dx)
 
void ScalePlaneVertical (int src_height, int dst_width, int dst_height, int src_stride, int dst_stride, const uint8 *src_argb, uint8 *dst_argb, int x, int y, int dy, int bpp, enum FilterMode filtering)
 
void ScalePlaneVertical_16 (int src_height, int dst_width, int dst_height, int src_stride, int dst_stride, const uint16 *src_argb, uint16 *dst_argb, int x, int y, int dy, int wpp, enum FilterMode filtering)
 
enum FilterMode ScaleFilterReduce (int src_width, int src_height, int dst_width, int dst_height, enum FilterMode filtering)
 
int FixedDiv_C (int num, int div)
 
int FixedDiv1_C (int num, int div)
 
void ScaleSlope (int src_width, int src_height, int dst_width, int dst_height, enum FilterMode filtering, int *x, int *y, int *dx, int *dy)
 

Macro Definition Documentation

◆ BLENDER [1/3]

#define BLENDER (   a,
  b,
  f 
)
Value:
(uint8)((int)(a) + \
(((int)((f) >> 9) * ((int)(b) - (int)(a)) + 0x40) >> 7))
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
GLfloat f
Definition: gl2.h:417
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
unsigned char uint8
Definition: util.h:87

◆ BLENDER [2/3]

#define BLENDER (   a,
  b,
  f 
)
Value:
(uint16)((int)(a) + \
((((int)((f)) * ((int)(b) - (int)(a))) + 0x8000) >> 16))
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
GLfloat f
Definition: gl2.h:417
unsigned short uint16
Definition: basic_types.h:60
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306

◆ BLENDER [3/3]

#define BLENDER (   a,
  b,
  f 
)
Value:
BLENDERC(a, b, f, 24) | BLENDERC(a, b, f, 16) | \
BLENDERC(a, b, f, 8) | BLENDERC(a, b, f, 0)
#define BLENDERC(a, b, f, s)
Definition: scale_common.cc:822
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
GLfloat f
Definition: gl2.h:417
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306

◆ BLENDER1

#define BLENDER1 (   a,
  b,
  f 
)    ((a) * (0x7f ^ f) + (b) * f) >> 7

◆ BLENDERC

#define BLENDERC (   a,
  b,
  f,
  s 
)
Value:
(uint32)( \
BLENDER1(((a) >> s) & 255, ((b) >> s) & 255, f) << s)
#define BLENDER1(a, b, f)
Definition: scale_common.cc:821
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
GLfloat f
Definition: gl2.h:417
struct A s
uint32_t uint32
Definition: angle_config.h:28
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306

◆ CENTERSTART

#define CENTERSTART (   dx,
  s 
)    (dx < 0) ? -((-dx >> 1) + s) : ((dx >> 1) + s)

Function Documentation

◆ FixedDiv1_C()

int FixedDiv1_C ( int  num,
int  div 
)

◆ FixedDiv_C()

int FixedDiv_C ( int  num,
int  div 
)

◆ ScaleAddRow_16_C()

void ScaleAddRow_16_C ( const uint16 src_ptr,
uint32 dst_ptr,
int  src_width 
)

◆ ScaleAddRow_C()

void ScaleAddRow_C ( const uint8 src_ptr,
uint16 dst_ptr,
int  src_width 
)

◆ ScaleARGBCols64_C()

void ScaleARGBCols64_C ( uint8 dst_argb,
const uint8 src_argb,
int  dst_width,
int  x32,
int  dx 
)

◆ ScaleARGBCols_C()

void ScaleARGBCols_C ( uint8 dst_argb,
const uint8 src_argb,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleARGBColsUp2_C()

void ScaleARGBColsUp2_C ( uint8 dst_argb,
const uint8 src_argb,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleARGBFilterCols64_C()

void ScaleARGBFilterCols64_C ( uint8 dst_argb,
const uint8 src_argb,
int  dst_width,
int  x32,
int  dx 
)

◆ ScaleARGBFilterCols_C()

void ScaleARGBFilterCols_C ( uint8 dst_argb,
const uint8 src_argb,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleARGBRowDown2_C()

void ScaleARGBRowDown2_C ( const uint8 src_argb,
ptrdiff_t  src_stride,
uint8 dst_argb,
int  dst_width 
)

◆ ScaleARGBRowDown2Box_C()

void ScaleARGBRowDown2Box_C ( const uint8 src_argb,
ptrdiff_t  src_stride,
uint8 dst_argb,
int  dst_width 
)

◆ ScaleARGBRowDown2Linear_C()

void ScaleARGBRowDown2Linear_C ( const uint8 src_argb,
ptrdiff_t  src_stride,
uint8 dst_argb,
int  dst_width 
)

◆ ScaleARGBRowDownEven_C()

void ScaleARGBRowDownEven_C ( const uint8 src_argb,
ptrdiff_t  src_stride,
int  src_stepx,
uint8 dst_argb,
int  dst_width 
)

◆ ScaleARGBRowDownEvenBox_C()

void ScaleARGBRowDownEvenBox_C ( const uint8 src_argb,
ptrdiff_t  src_stride,
int  src_stepx,
uint8 dst_argb,
int  dst_width 
)

◆ ScaleCols_16_C()

void ScaleCols_16_C ( uint16 dst_ptr,
const uint16 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleCols_C()

void ScaleCols_C ( uint8 dst_ptr,
const uint8 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleColsUp2_16_C()

void ScaleColsUp2_16_C ( uint16 dst_ptr,
const uint16 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleColsUp2_C()

void ScaleColsUp2_C ( uint8 dst_ptr,
const uint8 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleFilterCols64_16_C()

void ScaleFilterCols64_16_C ( uint16 dst_ptr,
const uint16 src_ptr,
int  dst_width,
int  x32,
int  dx 
)

◆ ScaleFilterCols64_C()

void ScaleFilterCols64_C ( uint8 dst_ptr,
const uint8 src_ptr,
int  dst_width,
int  x32,
int  dx 
)

◆ ScaleFilterCols_16_C()

void ScaleFilterCols_16_C ( uint16 dst_ptr,
const uint16 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleFilterCols_C()

void ScaleFilterCols_C ( uint8 dst_ptr,
const uint8 src_ptr,
int  dst_width,
int  x,
int  dx 
)

◆ ScaleFilterReduce()

enum FilterMode ScaleFilterReduce ( int  src_width,
int  src_height,
int  dst_width,
int  dst_height,
enum FilterMode  filtering 
)

◆ ScalePlaneVertical()

void ScalePlaneVertical ( int  src_height,
int  dst_width,
int  dst_height,
int  src_stride,
int  dst_stride,
const uint8 src_argb,
uint8 dst_argb,
int  x,
int  y,
int  dy,
int  bpp,
enum FilterMode  filtering 
)

◆ ScalePlaneVertical_16()

void ScalePlaneVertical_16 ( int  src_height,
int  dst_width,
int  dst_height,
int  src_stride,
int  dst_stride,
const uint16 src_argb,
uint16 dst_argb,
int  x,
int  y,
int  dy,
int  wpp,
enum FilterMode  filtering 
)

◆ ScaleRowDown2_16_C()

void ScaleRowDown2_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown2_C()

void ScaleRowDown2_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown2Box_16_C()

void ScaleRowDown2Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown2Box_C()

void ScaleRowDown2Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown2Box_Odd_C()

void ScaleRowDown2Box_Odd_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown2Linear_16_C()

void ScaleRowDown2Linear_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown2Linear_C()

void ScaleRowDown2Linear_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown34_0_Box_16_C()

void ScaleRowDown34_0_Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 d,
int  dst_width 
)

◆ ScaleRowDown34_0_Box_C()

void ScaleRowDown34_0_Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 d,
int  dst_width 
)

◆ ScaleRowDown34_16_C()

void ScaleRowDown34_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown34_1_Box_16_C()

void ScaleRowDown34_1_Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 d,
int  dst_width 
)

◆ ScaleRowDown34_1_Box_C()

void ScaleRowDown34_1_Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 d,
int  dst_width 
)

◆ ScaleRowDown34_C()

void ScaleRowDown34_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown38_16_C()

void ScaleRowDown38_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown38_2_Box_16_C()

void ScaleRowDown38_2_Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst_ptr,
int  dst_width 
)

◆ ScaleRowDown38_2_Box_C()

void ScaleRowDown38_2_Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst_ptr,
int  dst_width 
)

◆ ScaleRowDown38_3_Box_16_C()

void ScaleRowDown38_3_Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst_ptr,
int  dst_width 
)

◆ ScaleRowDown38_3_Box_C()

void ScaleRowDown38_3_Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst_ptr,
int  dst_width 
)

◆ ScaleRowDown38_C()

void ScaleRowDown38_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown4_16_C()

void ScaleRowDown4_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown4_C()

void ScaleRowDown4_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleRowDown4Box_16_C()

void ScaleRowDown4Box_16_C ( const uint16 src_ptr,
ptrdiff_t  src_stride,
uint16 dst,
int  dst_width 
)

◆ ScaleRowDown4Box_C()

void ScaleRowDown4Box_C ( const uint8 src_ptr,
ptrdiff_t  src_stride,
uint8 dst,
int  dst_width 
)

◆ ScaleSlope()

void ScaleSlope ( int  src_width,
int  src_height,
int  dst_width,
int  dst_height,
enum FilterMode  filtering,
int *  x,
int *  y,
int *  dx,
int *  dy 
)