FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
hevcdsp_init_neon.c File Reference
#include "libavutil/attributes.h"
#include "libavutil/arm/cpu.h"
#include "libavcodec/hevcdsp.h"
#include "hevcdsp_arm.h"

Go to the source code of this file.

Macros

#define PUT_PIXELS(name)
 
#define QPEL_FUNC(name)
 
#define QPEL_FUNC_UW_PIX(name)
 
#define QPEL_FUNC_UW(name)
 

Functions

void ff_hevc_v_loop_filter_luma_neon (uint8_t *_pix, ptrdiff_t _stride, int _beta, int *_tc, uint8_t *_no_p, uint8_t *_no_q)
 
void ff_hevc_h_loop_filter_luma_neon (uint8_t *_pix, ptrdiff_t _stride, int _beta, int *_tc, uint8_t *_no_p, uint8_t *_no_q)
 
void ff_hevc_v_loop_filter_chroma_neon (uint8_t *_pix, ptrdiff_t _stride, int *_tc, uint8_t *_no_p, uint8_t *_no_q)
 
void ff_hevc_h_loop_filter_chroma_neon (uint8_t *_pix, ptrdiff_t _stride, int *_tc, uint8_t *_no_p, uint8_t *_no_q)
 
void ff_hevc_add_residual_4x4_8_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_4x4_10_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_8x8_8_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_8x8_10_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_16x16_8_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_16x16_10_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_32x32_8_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_add_residual_32x32_10_neon (uint8_t *_dst, int16_t *coeffs, ptrdiff_t stride)
 
void ff_hevc_idct_4x4_dc_8_neon (int16_t *coeffs)
 
void ff_hevc_idct_8x8_dc_8_neon (int16_t *coeffs)
 
void ff_hevc_idct_16x16_dc_8_neon (int16_t *coeffs)
 
void ff_hevc_idct_32x32_dc_8_neon (int16_t *coeffs)
 
void ff_hevc_idct_4x4_dc_10_neon (int16_t *coeffs)
 
void ff_hevc_idct_8x8_dc_10_neon (int16_t *coeffs)
 
void ff_hevc_idct_16x16_dc_10_neon (int16_t *coeffs)
 
void ff_hevc_idct_32x32_dc_10_neon (int16_t *coeffs)
 
void ff_hevc_idct_4x4_8_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_8x8_8_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_16x16_8_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_32x32_8_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_4x4_10_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_8x8_10_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_16x16_10_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_idct_32x32_10_neon (int16_t *coeffs, int col_limit)
 
void ff_hevc_transform_luma_4x4_neon_8 (int16_t *coeffs)
 
 PUT_PIXELS (ff_hevc_put_pixels_w2_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w4_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w6_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w8_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w12_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w16_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w24_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w32_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w48_neon_8)
 
 PUT_PIXELS (ff_hevc_put_pixels_w64_neon_8)
 
void ff_hevc_put_qpel_neon_wrapper (int16_t *dst, uint8_t *src, ptrdiff_t srcstride, int height, intptr_t mx, intptr_t my, int width)
 
void ff_hevc_put_qpel_uni_neon_wrapper (uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int height, intptr_t mx, intptr_t my, int width)
 
void ff_hevc_put_qpel_bi_neon_wrapper (uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int16_t *src2, int height, intptr_t mx, intptr_t my, int width)
 
 QPEL_FUNC (ff_hevc_put_qpel_v1_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_v2_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_v3_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h1_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h2_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h3_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h1v1_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h1v2_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h1v3_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h2v1_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h2v2_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h2v3_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h3v1_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h3v2_neon_8)
 
 QPEL_FUNC (ff_hevc_put_qpel_h3v3_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w4_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w8_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w16_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w24_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w32_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w48_neon_8)
 
 QPEL_FUNC_UW_PIX (ff_hevc_put_qpel_uw_pixels_w64_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_pixels_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_v1_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_v2_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_v3_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h1_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h2_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h3_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h1v1_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h1v2_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h1v3_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h2v1_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h2v2_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h2v3_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h3v1_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h3v2_neon_8)
 
 QPEL_FUNC_UW (ff_hevc_put_qpel_uw_h3v3_neon_8)
 
av_cold void ff_hevc_dsp_init_neon (HEVCDSPContext *c, const int bit_depth)
 

Variables

static void(* put_hevc_qpel_neon [4][4])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int height, int width)
 
static void(* put_hevc_qpel_uw_neon [4][4])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, int width, int height, int16_t *src2, ptrdiff_t src2stride)
 

Macro Definition Documentation

#define PUT_PIXELS (   name)
Value:
void name(int16_t *dst, uint8_t *src, \
ptrdiff_t srcstride, int height, \
intptr_t mx, intptr_t my, int width)
#define src
Definition: vp8dsp.c:254
uint8_t
#define height
uint16_t width
Definition: gdv.c:47
const char * name
Definition: opengl_enc.c:103

Definition at line 64 of file hevcdsp_init_neon.c.

#define QPEL_FUNC (   name)
Value:
void name(int16_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, \
int height, int width)
#define src
Definition: vp8dsp.c:254
uint8_t
#define height
uint16_t width
Definition: gdv.c:47
const char * name
Definition: opengl_enc.c:103

Definition at line 91 of file hevcdsp_init_neon.c.

#define QPEL_FUNC_UW_PIX (   name)
Value:
void name(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, \
int height, intptr_t mx, intptr_t my, int width);
uint8_t
#define height
uint16_t width
Definition: gdv.c:47
const char * name
Definition: opengl_enc.c:103

Definition at line 112 of file hevcdsp_init_neon.c.

#define QPEL_FUNC_UW (   name)
Value:
void name(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, \
int width, int height, int16_t* src2, ptrdiff_t src2stride);
uint8_t
#define height
uint16_t width
Definition: gdv.c:47
const char * name
Definition: opengl_enc.c:103

Definition at line 124 of file hevcdsp_init_neon.c.

Function Documentation

void ff_hevc_v_loop_filter_luma_neon ( uint8_t _pix,
ptrdiff_t  _stride,
int  _beta,
int _tc,
uint8_t _no_p,
uint8_t _no_q 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_h_loop_filter_luma_neon ( uint8_t _pix,
ptrdiff_t  _stride,
int  _beta,
int _tc,
uint8_t _no_p,
uint8_t _no_q 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_v_loop_filter_chroma_neon ( uint8_t _pix,
ptrdiff_t  _stride,
int _tc,
uint8_t _no_p,
uint8_t _no_q 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_h_loop_filter_chroma_neon ( uint8_t _pix,
ptrdiff_t  _stride,
int _tc,
uint8_t _no_p,
uint8_t _no_q 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_4x4_8_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_4x4_10_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_8x8_8_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_8x8_10_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_16x16_8_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_16x16_10_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_32x32_8_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_add_residual_32x32_10_neon ( uint8_t _dst,
int16_t *  coeffs,
ptrdiff_t  stride 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_4x4_dc_8_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_8x8_dc_8_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_16x16_dc_8_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_32x32_dc_8_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_4x4_dc_10_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_8x8_dc_10_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_16x16_dc_10_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_32x32_dc_10_neon ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_4x4_8_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_8x8_8_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_16x16_8_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_32x32_8_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_4x4_10_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_8x8_10_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_16x16_10_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_idct_32x32_10_neon ( int16_t *  coeffs,
int  col_limit 
)

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_transform_luma_4x4_neon_8 ( int16_t *  coeffs)

Referenced by ff_hevc_dsp_init_neon().

PUT_PIXELS ( ff_hevc_put_pixels_w2_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w4_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w6_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w8_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w12_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w16_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w24_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w32_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w48_neon_8  )
PUT_PIXELS ( ff_hevc_put_pixels_w64_neon_8  )
void ff_hevc_put_qpel_neon_wrapper ( int16_t *  dst,
uint8_t src,
ptrdiff_t  srcstride,
int  height,
intptr_t  mx,
intptr_t  my,
int  width 
)

Definition at line 145 of file hevcdsp_init_neon.c.

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_put_qpel_uni_neon_wrapper ( uint8_t dst,
ptrdiff_t  dststride,
uint8_t src,
ptrdiff_t  srcstride,
int  height,
intptr_t  mx,
intptr_t  my,
int  width 
)

Definition at line 151 of file hevcdsp_init_neon.c.

Referenced by ff_hevc_dsp_init_neon().

void ff_hevc_put_qpel_bi_neon_wrapper ( uint8_t dst,
ptrdiff_t  dststride,
uint8_t src,
ptrdiff_t  srcstride,
int16_t *  src2,
int  height,
intptr_t  mx,
intptr_t  my,
int  width 
)

Definition at line 157 of file hevcdsp_init_neon.c.

Referenced by ff_hevc_dsp_init_neon().

QPEL_FUNC ( ff_hevc_put_qpel_v1_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_v2_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_v3_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h1_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h2_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h3_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h1v1_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h1v2_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h1v3_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h2v1_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h2v2_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h2v3_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h3v1_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h3v2_neon_8  )
QPEL_FUNC ( ff_hevc_put_qpel_h3v3_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w4_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w8_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w16_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w24_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w32_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w48_neon_8  )
QPEL_FUNC_UW_PIX ( ff_hevc_put_qpel_uw_pixels_w64_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_pixels_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_v1_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_v2_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_v3_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h1_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h2_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h3_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h1v1_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h1v2_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h1v3_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h2v1_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h2v2_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h2v3_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h3v1_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h3v2_neon_8  )
QPEL_FUNC_UW ( ff_hevc_put_qpel_uw_h3v3_neon_8  )
av_cold void ff_hevc_dsp_init_neon ( HEVCDSPContext c,
const int  bit_depth 
)

Definition at line 163 of file hevcdsp_init_neon.c.

Referenced by ff_hevc_dsp_init_arm().

Variable Documentation

void(* put_hevc_qpel_neon[4][4])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int height, int width)
static

Definition at line 80 of file hevcdsp_init_neon.c.

Referenced by ff_hevc_dsp_init_neon(), and ff_hevc_put_qpel_neon_wrapper().

void(* put_hevc_qpel_uw_neon[4][4])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, int width, int height, int16_t *src2, ptrdiff_t src2stride)
static