Commit 024a5f72 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit '9e0f14f1'

* commit '9e0f14f1':
  lavc: Make pointers to ff_cropTbl const
  vp3: Embed idct_permutation array directly in VP3DecoderContext

Conflicts:
	libavcodec/bit_depth_template.c
	libavcodec/vp3.c
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 5f49e92e 9e0f14f1
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
/* Intra iDCT offset 128 */ /* Intra iDCT offset 128 */
static void bfin_vp3_idct_put(uint8_t *dest, int line_size, int16_t *block) static void bfin_vp3_idct_put(uint8_t *dest, int line_size, int16_t *block)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP + 128; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP + 128;
int i,j; int i,j;
ff_bfin_vp3_idct (block); ff_bfin_vp3_idct (block);
......
...@@ -40,7 +40,7 @@ typedef struct DVDSubContext ...@@ -40,7 +40,7 @@ typedef struct DVDSubContext
static void yuv_a_to_rgba(const uint8_t *ycbcr, const uint8_t *alpha, uint32_t *rgba, int num_values) static void yuv_a_to_rgba(const uint8_t *ycbcr, const uint8_t *alpha, uint32_t *rgba, int num_values)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
uint8_t r, g, b; uint8_t r, g, b;
int i, y, cb, cr; int i, y, cb, cr;
int r_add, g_add, b_add; int r_add, g_add, b_add;
......
...@@ -483,7 +483,7 @@ static void deinterlace_line_c(uint8_t *dst, ...@@ -483,7 +483,7 @@ static void deinterlace_line_c(uint8_t *dst,
const uint8_t *lum, const uint8_t *lum,
int size) int size)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
int sum; int sum;
for(;size > 0;size--) { for(;size > 0;size--) {
...@@ -506,7 +506,7 @@ static void deinterlace_line_inplace_c(uint8_t *lum_m4, uint8_t *lum_m3, ...@@ -506,7 +506,7 @@ static void deinterlace_line_inplace_c(uint8_t *lum_m4, uint8_t *lum_m3,
uint8_t *lum_m2, uint8_t *lum_m1, uint8_t *lum_m2, uint8_t *lum_m1,
uint8_t *lum, int size) uint8_t *lum, int size)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
int sum; int sum;
for(;size > 0;size--) { for(;size > 0;size--) {
......
...@@ -124,7 +124,7 @@ static int rv30_decode_mb_info(RV34DecContext *r) ...@@ -124,7 +124,7 @@ static int rv30_decode_mb_info(RV34DecContext *r)
static inline void rv30_weak_loop_filter(uint8_t *src, const int step, static inline void rv30_weak_loop_filter(uint8_t *src, const int step,
const int stride, const int lim) const int stride, const int lim)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
int i, diff; int i, diff;
for(i = 0; i < 4; i++){ for(i = 0; i < 4; i++){
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#define RV30_LOWPASS(OPNAME, OP) \ #define RV30_LOWPASS(OPNAME, OP) \
static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\
const int h = 8;\ const int h = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i;\ int i;\
for(i = 0; i < h; i++)\ for(i = 0; i < h; i++)\
{\ {\
...@@ -51,7 +51,7 @@ static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src, ...@@ -51,7 +51,7 @@ static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src,
\ \
static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\
const int w = 8;\ const int w = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i;\ int i;\
for(i = 0; i < w; i++)\ for(i = 0; i < w; i++)\
{\ {\
...@@ -82,7 +82,7 @@ static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstSt ...@@ -82,7 +82,7 @@ static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstSt
static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
const int w = 8;\ const int w = 8;\
const int h = 8;\ const int h = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i, j;\ int i, j;\
for(j = 0; j < h; j++){\ for(j = 0; j < h; j++){\
for(i = 0; i < w; i++){\ for(i = 0; i < w; i++){\
...@@ -101,7 +101,7 @@ static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstS ...@@ -101,7 +101,7 @@ static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstS
static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
const int w = 8;\ const int w = 8;\
const int h = 8;\ const int h = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i, j;\ int i, j;\
for(j = 0; j < h; j++){\ for(j = 0; j < h; j++){\
for(i = 0; i < w; i++){\ for(i = 0; i < w; i++){\
...@@ -120,7 +120,7 @@ static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dst ...@@ -120,7 +120,7 @@ static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dst
static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
const int w = 8;\ const int w = 8;\
const int h = 8;\ const int h = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i, j;\ int i, j;\
for(j = 0; j < h; j++){\ for(j = 0; j < h; j++){\
for(i = 0; i < w; i++){\ for(i = 0; i < w; i++){\
...@@ -139,7 +139,7 @@ static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dst ...@@ -139,7 +139,7 @@ static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dst
static void OPNAME ## rv30_tpel8_hhvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## rv30_tpel8_hhvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
const int w = 8;\ const int w = 8;\
const int h = 8;\ const int h = 8;\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i, j;\ int i, j;\
for(j = 0; j < h; j++){\ for(j = 0; j < h; j++){\
for(i = 0; i < w; i++){\ for(i = 0; i < w; i++){\
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
#define RV40_LOWPASS(OPNAME, OP) \ #define RV40_LOWPASS(OPNAME, OP) \
static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\
const int h, const int C1, const int C2, const int SHIFT){\ const int h, const int C1, const int C2, const int SHIFT){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i;\ int i;\
for(i = 0; i < h; i++)\ for(i = 0; i < h; i++)\
{\ {\
...@@ -52,7 +52,7 @@ static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, ...@@ -52,7 +52,7 @@ static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src,
\ \
static void OPNAME ## rv40_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ static void OPNAME ## rv40_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\
const int w, const int C1, const int C2, const int SHIFT){\ const int w, const int C1, const int C2, const int SHIFT){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int i;\ int i;\
for(i = 0; i < w; i++)\ for(i = 0; i < w; i++)\
{\ {\
...@@ -351,7 +351,7 @@ static av_always_inline void rv40_weak_loop_filter(uint8_t *src, ...@@ -351,7 +351,7 @@ static av_always_inline void rv40_weak_loop_filter(uint8_t *src,
const int lim_q1, const int lim_q1,
const int lim_p1) const int lim_p1)
{ {
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
int i, t, u, diff; int i, t, u, diff;
for (i = 0; i < 4; i++, src += stride) { for (i = 0; i < 4; i++, src += stride) {
......
...@@ -56,7 +56,7 @@ static void clear_blocks_sh4(int16_t *blocks) ...@@ -56,7 +56,7 @@ static void clear_blocks_sh4(int16_t *blocks)
static void idct_put(uint8_t *dest, int line_size, int16_t *block) static void idct_put(uint8_t *dest, int line_size, int16_t *block)
{ {
int i; int i;
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
ff_idct_sh4(block); ff_idct_sh4(block);
for(i=0;i<8;i++) { for(i=0;i<8;i++) {
dest[0] = cm[block[0]]; dest[0] = cm[block[0]];
...@@ -74,7 +74,7 @@ static void idct_put(uint8_t *dest, int line_size, int16_t *block) ...@@ -74,7 +74,7 @@ static void idct_put(uint8_t *dest, int line_size, int16_t *block)
static void idct_add(uint8_t *dest, int line_size, int16_t *block) static void idct_add(uint8_t *dest, int line_size, int16_t *block)
{ {
int i; int i;
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
ff_idct_sh4(block); ff_idct_sh4(block);
for(i=0;i<8;i++) { for(i=0;i<8;i++) {
dest[0] = cm[dest[0]+block[0]]; dest[0] = cm[dest[0]+block[0]];
......
...@@ -363,7 +363,7 @@ static void gmc1_c(uint8_t *dst, uint8_t *src, int stride, int h, int x16, int y ...@@ -363,7 +363,7 @@ static void gmc1_c(uint8_t *dst, uint8_t *src, int stride, int h, int x16, int y
#define QPEL_MC(r, OPNAME, RND, OP) \ #define QPEL_MC(r, OPNAME, RND, OP) \
static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
do {\ do {\
uint8_t *s = src; \ uint8_t *s = src; \
int src0,src1,src2,src3,src4,src5,src6,src7,src8;\ int src0,src1,src2,src3,src4,src5,src6,src7,src8;\
...@@ -390,7 +390,7 @@ static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstS ...@@ -390,7 +390,7 @@ static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstS
}\ }\
\ \
static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int w=8;\ int w=8;\
do{\ do{\
uint8_t *s = src, *d=dst;\ uint8_t *s = src, *d=dst;\
...@@ -418,7 +418,7 @@ static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstS ...@@ -418,7 +418,7 @@ static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstS
}\ }\
\ \
static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
do {\ do {\
uint8_t *s = src;\ uint8_t *s = src;\
int src0,src1,src2,src3,src4,src5,src6,src7,src8;\ int src0,src1,src2,src3,src4,src5,src6,src7,src8;\
...@@ -462,7 +462,7 @@ static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dst ...@@ -462,7 +462,7 @@ static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dst
}\ }\
\ \
static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\
int w=16;\ int w=16;\
do {\ do {\
uint8_t *s = src, *d=dst;\ uint8_t *s = src, *d=dst;\
...@@ -754,7 +754,7 @@ QPEL_MC(0, avg_ , _ , op_avg) ...@@ -754,7 +754,7 @@ QPEL_MC(0, avg_ , _ , op_avg)
#undef op_put_no_rnd #undef op_put_no_rnd
static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){ static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
do{ do{
int src_1,src0,src1,src2,src3,src4,src5,src6,src7,src8,src9; int src_1,src0,src1,src2,src3,src4,src5,src6,src7,src8,src9;
...@@ -784,7 +784,7 @@ static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int ...@@ -784,7 +784,7 @@ static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int
} }
static void wmv2_mspel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int w){ static void wmv2_mspel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int w){
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
do{ do{
int src_1,src0,src1,src2,src3,src4,src5,src6,src7,src8,src9; int src_1,src0,src1,src2,src3,src4,src5,src6,src7,src8,src9;
......
...@@ -381,7 +381,8 @@ static void init_dequantizer(Vp3DecodeContext *s, int qpi) ...@@ -381,7 +381,8 @@ static void init_dequantizer(Vp3DecodeContext *s, int qpi)
int qmin= 8<<(inter + !i); int qmin= 8<<(inter + !i);
int qscale= i ? ac_scale_factor : dc_scale_factor; int qscale= i ? ac_scale_factor : dc_scale_factor;
s->qmat[qpi][inter][plane][s->idct_permutation[i]]= av_clip((qscale * coeff)/100 * 4, qmin, 4096); s->qmat[qpi][inter][plane][s->idct_permutation[i]] =
av_clip((qscale * coeff) / 100 * 4, qmin, 4096);
} }
// all DC coefficients use the same quant so as not to interfere with DC prediction // all DC coefficients use the same quant so as not to interfere with DC prediction
s->qmat[qpi][inter][plane][0] = s->qmat[0][inter][plane][0]; s->qmat[qpi][inter][plane][0] = s->qmat[0][inter][plane][0];
......
...@@ -160,7 +160,7 @@ static av_always_inline void filter_common(uint8_t *p, ptrdiff_t stride, int is4 ...@@ -160,7 +160,7 @@ static av_always_inline void filter_common(uint8_t *p, ptrdiff_t stride, int is4
{ {
LOAD_PIXELS LOAD_PIXELS
int a, f1, f2; int a, f1, f2;
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
a = 3*(q0 - p0); a = 3*(q0 - p0);
...@@ -215,7 +215,7 @@ static av_always_inline int hev(uint8_t *p, ptrdiff_t stride, int thresh) ...@@ -215,7 +215,7 @@ static av_always_inline int hev(uint8_t *p, ptrdiff_t stride, int thresh)
static av_always_inline void filter_mbedge(uint8_t *p, ptrdiff_t stride) static av_always_inline void filter_mbedge(uint8_t *p, ptrdiff_t stride)
{ {
int a0, a1, a2, w; int a0, a1, a2, w;
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
LOAD_PIXELS LOAD_PIXELS
...@@ -337,7 +337,7 @@ PUT_PIXELS(4) ...@@ -337,7 +337,7 @@ PUT_PIXELS(4)
static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \ static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \
{ \ { \
const uint8_t *filter = subpel_filters[mx-1]; \ const uint8_t *filter = subpel_filters[mx-1]; \
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \
int x, y; \ int x, y; \
\ \
for (y = 0; y < h; y++) { \ for (y = 0; y < h; y++) { \
...@@ -351,7 +351,7 @@ static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst, ptrdiff_t dst ...@@ -351,7 +351,7 @@ static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst, ptrdiff_t dst
static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \ static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \
{ \ { \
const uint8_t *filter = subpel_filters[my-1]; \ const uint8_t *filter = subpel_filters[my-1]; \
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \
int x, y; \ int x, y; \
\ \
for (y = 0; y < h; y++) { \ for (y = 0; y < h; y++) { \
...@@ -365,7 +365,7 @@ static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst, ptrdiff_t dst ...@@ -365,7 +365,7 @@ static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst, ptrdiff_t dst
static void put_vp8_epel ## SIZE ## _h ## HTAPS ## v ## VTAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \ static void put_vp8_epel ## SIZE ## _h ## HTAPS ## v ## VTAPS ## _c(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my) \
{ \ { \
const uint8_t *filter = subpel_filters[mx-1]; \ const uint8_t *filter = subpel_filters[mx-1]; \
uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \ const uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; \
int x, y; \ int x, y; \
uint8_t tmp_array[(2*SIZE+VTAPS-1)*SIZE]; \ uint8_t tmp_array[(2*SIZE+VTAPS-1)*SIZE]; \
uint8_t *tmp = tmp_array; \ uint8_t *tmp = tmp_array; \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment