libavcodec/arm/vp8dsp_init_arm.c File Reference

#include <stdint.h>
#include "libavcodec/vp8dsp.h"

Go to the source code of this file.

Defines

#define idct_funcs(opt)
#define simple_lf_funcs(opt)
#define VP8_MC_OPT(n, opt)
#define VP8_MC(n)   VP8_MC_OPT(n, neon)
#define VP8_EPEL(w)
#define VP8_V6_MC(n)
#define VP8_EPEL_HV(SIZE, TAPNUMX, TAPNUMY, NAME, HNAME, VNAME, MAXHEIGHT)
#define VP8_EPEL_H_OR_V(SIZE, NAME, HV)
#define set_func_ptrs(opt)

Functions

void ff_vp8_luma_dc_wht_dc_armv6 (DCTELEM block[4][4][16], DCTELEM dc[16])
 This file is part of FFmpeg.
 idct_funcs (neon)
 idct_funcs (armv6)
void ff_vp8_v_loop_filter16_neon (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_h_loop_filter16_neon (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_v_loop_filter8uv_neon (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_h_loop_filter8uv_neon (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_v_loop_filter16_inner_neon (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_h_loop_filter16_inner_neon (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_v_loop_filter8uv_inner_neon (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_h_loop_filter8uv_inner_neon (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
void ff_vp8_v_loop_filter_inner_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh, int count)
void ff_vp8_h_loop_filter_inner_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh, int count)
void ff_vp8_v_loop_filter_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh, int count)
void ff_vp8_h_loop_filter_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh, int count)
static void ff_vp8_v_loop_filter16_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_h_loop_filter16_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_v_loop_filter8uv_armv6 (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_h_loop_filter8uv_armv6 (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_v_loop_filter16_inner_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_h_loop_filter16_inner_armv6 (uint8_t *dst, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_v_loop_filter8uv_inner_armv6 (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
static void ff_vp8_h_loop_filter8uv_inner_armv6 (uint8_t *dstU, uint8_t *dstV, int stride, int flim_E, int flim_I, int hev_thresh)
 simple_lf_funcs (neon)
 simple_lf_funcs (armv6)
 VP8_EPEL (16)
 VP8_MC (pixels16)
 VP8_MC_OPT (pixels16, armv6)
 VP8_EPEL (8)
 VP8_MC (pixels8)
 VP8_MC_OPT (pixels8, armv6)
 VP8_EPEL (4)
 VP8_MC_OPT (pixels4, armv6)
 VP8_MC (bilin16_h)
 VP8_MC (bilin16_v)
 VP8_MC (bilin16_hv)
 VP8_MC (bilin8_h)
 VP8_MC (bilin8_v)
 VP8_MC (bilin8_hv)
 VP8_MC (bilin4_h)
 VP8_MC (bilin4_v)
 VP8_MC (bilin4_hv)
 VP8_V6_MC (epel_v6)
 VP8_V6_MC (epel_h6)
 VP8_V6_MC (epel_v4)
 VP8_V6_MC (epel_h4)
 VP8_V6_MC (bilin_v)
 VP8_V6_MC (bilin_h)
 VP8_EPEL_HV (16, 6, 6, epel, h6, v6, 16)
 VP8_EPEL_HV (16, 2, 2, bilin, h, v, 16)
 VP8_EPEL_HV (8, 6, 6, epel, h6, v6, 16)
 VP8_EPEL_HV (8, 4, 6, epel, h4, v6, 16)
 VP8_EPEL_HV (8, 6, 4, epel, h6, v4, 16)
 VP8_EPEL_HV (8, 4, 4, epel, h4, v4, 16)
 VP8_EPEL_HV (8, 2, 2, bilin, h, v, 16)
 VP8_EPEL_HV (4, 6, 6, epel, h6, v6, 8)
 VP8_EPEL_HV (4, 4, 6, epel, h4, v6, 8)
 VP8_EPEL_HV (4, 6, 4, epel, h6, v4, 8)
 VP8_EPEL_HV (4, 4, 4, epel, h4, v4, 8)
 VP8_EPEL_HV (4, 2, 2, bilin, h, v, 8)
void put_vp8_epel4_v6_c (uint8_t *dst, int d, uint8_t *src, int s, int h, int mx, int my)
 VP8_EPEL_H_OR_V (4, epel, h6)
 VP8_EPEL_H_OR_V (4, epel, h4)
 VP8_EPEL_H_OR_V (4, epel, v6)
 VP8_EPEL_H_OR_V (4, epel, v4)
 VP8_EPEL_H_OR_V (4, bilin, v)
 VP8_EPEL_H_OR_V (4, bilin, h)
 VP8_EPEL_H_OR_V (8, epel, h6)
 VP8_EPEL_H_OR_V (8, epel, h4)
 VP8_EPEL_H_OR_V (8, epel, v6)
 VP8_EPEL_H_OR_V (8, epel, v4)
 VP8_EPEL_H_OR_V (8, bilin, v)
 VP8_EPEL_H_OR_V (8, bilin, h)
 VP8_EPEL_H_OR_V (16, epel, h6)
 VP8_EPEL_H_OR_V (16, epel, v6)
 VP8_EPEL_H_OR_V (16, bilin, v)
 VP8_EPEL_H_OR_V (16, bilin, h)
av_cold void ff_vp8dsp_init_arm (VP8DSPContext *dsp)


Define Documentation

#define idct_funcs ( opt   ) 

Value:

void ff_vp8_luma_dc_wht_ ## opt(DCTELEM block[4][4][16], DCTELEM dc[16]); \
void ff_vp8_idct_add_ ## opt(uint8_t *dst, DCTELEM block[16], int stride); \
void ff_vp8_idct_dc_add_ ## opt(uint8_t *dst, DCTELEM block[16], int stride); \
void ff_vp8_idct_dc_add4y_ ## opt(uint8_t *dst, DCTELEM block[4][16], int stride); \
void ff_vp8_idct_dc_add4uv_ ## opt(uint8_t *dst, DCTELEM block[4][16], int stride)

Definition at line 24 of file vp8dsp_init_arm.c.

#define set_func_ptrs ( opt   ) 

Referenced by ff_vp8dsp_init_arm().

#define simple_lf_funcs ( opt   ) 

Value:

void ff_vp8_v_loop_filter16_simple_ ## opt(uint8_t *dst, int stride, int flim); \
void ff_vp8_h_loop_filter16_simple_ ## opt(uint8_t *dst, int stride, int flim)

Definition at line 121 of file vp8dsp_init_arm.c.

#define VP8_EPEL (  ) 

Value:

VP8_MC(epel ## w ## _h4);                   \
    VP8_MC(epel ## w ## _h6);                   \
    VP8_MC(epel ## w ## _h4v4);                 \
    VP8_MC(epel ## w ## _h6v4);                 \
    VP8_MC(epel ## w ## _v4);                   \
    VP8_MC(epel ## w ## _v6);                   \
    VP8_MC(epel ## w ## _h4v6);                 \
    VP8_MC(epel ## w ## _h6v6)

Definition at line 136 of file vp8dsp_init_arm.c.

#define VP8_EPEL_H_OR_V ( SIZE,
NAME,
HV   ) 

Value:

static void ff_put_vp8_##NAME##SIZE##_##HV##_armv6( \
                                        uint8_t *dst, int dststride, uint8_t *src, \
                                        int srcstride, int h, int mx, int my) \
{ \
    ff_put_vp8_## NAME ## _ ## HV ## _armv6(dst, dststride, src, srcstride, \
                                            SIZE, h, mx | my); \
}

Definition at line 205 of file vp8dsp_init_arm.c.

#define VP8_EPEL_HV ( SIZE,
TAPNUMX,
TAPNUMY,
NAME,
HNAME,
VNAME,
MAXHEIGHT   ) 

Value:

static void ff_put_vp8_##NAME##SIZE##_##HNAME##VNAME##_armv6( \
                                        uint8_t *dst, int dststride, uint8_t *src, \
                                        int srcstride, int h, int mx, int my) \
{ \
    DECLARE_ALIGNED(4, uint8_t, tmp)[SIZE * (MAXHEIGHT + TAPNUMY - 1)]; \
    uint8_t *tmpptr = tmp + SIZE * (TAPNUMY / 2 - 1); \
    src -= srcstride * (TAPNUMY / 2 - 1); \
    ff_put_vp8_ ## NAME ## _ ## HNAME ## _armv6(tmp, SIZE,      src,    srcstride, \
                                                SIZE, h + TAPNUMY - 1,  mx); \
    ff_put_vp8_ ## NAME ## _ ## VNAME ## _armv6(dst, dststride, tmpptr, SIZE, \
                                                SIZE, h,                my); \
}

Definition at line 176 of file vp8dsp_init_arm.c.

#define VP8_MC (  )     VP8_MC_OPT(n, neon)

Definition at line 133 of file vp8dsp_init_arm.c.

#define VP8_MC_OPT ( n,
opt   ) 

Value:

void ff_put_vp8_##n##_##opt(uint8_t *dst, int dststride,            \
                                uint8_t *src, int srcstride,            \
                                int h, int x, int y)

Definition at line 128 of file vp8dsp_init_arm.c.

#define VP8_V6_MC (  ) 

Value:

void ff_put_vp8_##n##_armv6(uint8_t *dst, int dststride, uint8_t *src, \
                            int srcstride, int w, int h, int mxy)

Definition at line 165 of file vp8dsp_init_arm.c.


Function Documentation

static void ff_vp8_h_loop_filter16_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 73 of file vp8dsp_init_arm.c.

static void ff_vp8_h_loop_filter16_inner_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 99 of file vp8dsp_init_arm.c.

void ff_vp8_h_loop_filter16_inner_neon ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_h_loop_filter16_neon ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

static void ff_vp8_h_loop_filter8uv_armv6 ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 86 of file vp8dsp_init_arm.c.

static void ff_vp8_h_loop_filter8uv_inner_armv6 ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 113 of file vp8dsp_init_arm.c.

void ff_vp8_h_loop_filter8uv_inner_neon ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_h_loop_filter8uv_neon ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_h_loop_filter_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh,
int  count 
)

void ff_vp8_h_loop_filter_inner_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh,
int  count 
)

void ff_vp8_luma_dc_wht_dc_armv6 ( DCTELEM  block[4][4][16],
DCTELEM  dc[16] 
)

This file is part of FFmpeg.

FFmpeg is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

FFmpeg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

static void ff_vp8_v_loop_filter16_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 67 of file vp8dsp_init_arm.c.

static void ff_vp8_v_loop_filter16_inner_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 93 of file vp8dsp_init_arm.c.

void ff_vp8_v_loop_filter16_inner_neon ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_v_loop_filter16_neon ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

static void ff_vp8_v_loop_filter8uv_armv6 ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 79 of file vp8dsp_init_arm.c.

static void ff_vp8_v_loop_filter8uv_inner_armv6 ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
) [static]

Definition at line 105 of file vp8dsp_init_arm.c.

void ff_vp8_v_loop_filter8uv_inner_neon ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_v_loop_filter8uv_neon ( uint8_t *  dstU,
uint8_t *  dstV,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh 
)

void ff_vp8_v_loop_filter_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh,
int  count 
)

void ff_vp8_v_loop_filter_inner_armv6 ( uint8_t *  dst,
int  stride,
int  flim_E,
int  flim_I,
int  hev_thresh,
int  count 
)

av_cold void ff_vp8dsp_init_arm ( VP8DSPContext dsp  ) 

Definition at line 231 of file vp8dsp_init_arm.c.

Referenced by ff_vp8dsp_init().

idct_funcs ( armv6   ) 

idct_funcs ( neon   ) 

void put_vp8_epel4_v6_c ( uint8_t *  dst,
int  d,
uint8_t *  src,
int  s,
int  h,
int  mx,
int  my 
)

simple_lf_funcs ( armv6   ) 

simple_lf_funcs ( neon   ) 

VP8_EPEL (  ) 

VP8_EPEL (  ) 

VP8_EPEL ( 16   ) 

VP8_EPEL_H_OR_V ( 16  ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( 16  ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( 16  ,
epel  ,
v6   
)

VP8_EPEL_H_OR_V ( 16  ,
epel  ,
h6   
)

VP8_EPEL_H_OR_V ( ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( ,
epel  ,
v4   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
v6   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
h4   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
h6   
)

VP8_EPEL_H_OR_V ( ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( ,
bilin  ,
 
)

VP8_EPEL_H_OR_V ( ,
epel  ,
v4   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
v6   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
h4   
)

VP8_EPEL_H_OR_V ( ,
epel  ,
h6   
)

VP8_EPEL_HV ( ,
,
,
bilin  ,
,
,
 
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h4  ,
v4  ,
 
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h6  ,
v4  ,
 
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h4  ,
v6  ,
 
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h6  ,
v6  ,
 
)

VP8_EPEL_HV ( ,
,
,
bilin  ,
,
,
16   
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h4  ,
v4  ,
16   
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h6  ,
v4  ,
16   
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h4  ,
v6  ,
16   
)

VP8_EPEL_HV ( ,
,
,
epel  ,
h6  ,
v6  ,
16   
)

VP8_EPEL_HV ( 16  ,
,
,
bilin  ,
,
,
16   
)

VP8_EPEL_HV ( 16  ,
,
,
epel  ,
h6  ,
v6  ,
16   
)

VP8_MC ( bilin4_hv   ) 

VP8_MC ( bilin4_v   ) 

VP8_MC ( bilin4_h   ) 

VP8_MC ( bilin8_hv   ) 

VP8_MC ( bilin8_v   ) 

VP8_MC ( bilin8_h   ) 

VP8_MC ( bilin16_hv   ) 

VP8_MC ( bilin16_v   ) 

VP8_MC ( bilin16_h   ) 

VP8_MC ( pixels8   ) 

VP8_MC ( pixels16   ) 

VP8_MC_OPT ( pixels4  ,
armv6   
)

VP8_MC_OPT ( pixels8  ,
armv6   
)

VP8_MC_OPT ( pixels16  ,
armv6   
)

VP8_V6_MC ( bilin_h   ) 

VP8_V6_MC ( bilin_v   ) 

VP8_V6_MC ( epel_h4   ) 

VP8_V6_MC ( epel_v4   ) 

VP8_V6_MC ( epel_h6   ) 

VP8_V6_MC ( epel_v6   ) 


Generated on Fri Oct 26 02:43:46 2012 for FFmpeg by  doxygen 1.5.8