FFmpeg
Macros | Functions
motion.c File Reference
#include <string.h>
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem_internal.h"
#include "libavcodec/me_cmp.h"
#include "checkasm.h"

Go to the source code of this file.

Macros

#define ITERATIONS   16
 
#define WIDTH   64
 
#define HEIGHT   64
 
#define ME_CMP_1D_ARRAYS(XX)
 
#define XX(me_cmp_array)
 

Functions

static void fill_random (uint8_t *tab, int size)
 
static void test_motion (const char *name, me_cmp_func test_func)
 
static void check_motion (void)
 
void checkasm_check_motion (void)
 

Macro Definition Documentation

◆ ITERATIONS

#define ITERATIONS   16

◆ WIDTH

#define WIDTH   64

◆ HEIGHT

#define HEIGHT   64

◆ ME_CMP_1D_ARRAYS

#define ME_CMP_1D_ARRAYS (   XX)
Value:
XX(sad) \
XX(sse) \
XX(hadamard8_diff) \
XX(vsad) \
XX(vsse) \
XX(nsse) \
XX(median_sad)

Definition at line 90 of file motion.c.

◆ XX

#define XX (   me_cmp_array)
Value:
for (int i = 0; i < FF_ARRAY_ELEMS(me_ctx.me_cmp_array); i++) { \
snprintf(buf, sizeof(buf), #me_cmp_array "_%d", i); \
test_motion(buf, me_ctx.me_cmp_array[i]); \
}

Function Documentation

◆ fill_random()

static void fill_random ( uint8_t *  tab,
int  size 
)
static

Definition at line 30 of file motion.c.

Referenced by test_motion().

◆ test_motion()

static void test_motion ( const char *  name,
me_cmp_func  test_func 
)
static

Definition at line 38 of file motion.c.

Referenced by check_motion().

◆ check_motion()

static void check_motion ( void  )
static

Definition at line 112 of file motion.c.

Referenced by checkasm_check_motion().

◆ checkasm_check_motion()

void checkasm_check_motion ( void  )

Definition at line 137 of file motion.c.

FF_ARRAY_ELEMS
#define FF_ARRAY_ELEMS(a)
Definition: sinewin_tablegen.c:29
XX
#define XX(me_cmp_array)
i
#define i(width, name, range_min, range_max)
Definition: cbs_h2645.c:256
sse
static int sse(MpegEncContext *s, const uint8_t *src1, const uint8_t *src2, int w, int h, int stride)
Definition: mpegvideo_enc.c:2653