FFmpeg
Macros | Functions
flacdsp_lpc_template.c File Reference
#include <stdint.h>
#include "libavutil/avutil.h"
#include "mathops.h"

Go to the source code of this file.

Macros

#define FUNC(n)   AV_JOIN(n ## _, SAMPLE_SIZE)
 
#define sum_type   int32_t
 
#define MUL(a, b)   ((a) * (b))
 
#define CLIP(x)   (x)
 
#define LPC1(x)
 

Functions

static av_always_inline void FUNC() lpc_encode_unrolled (int32_t *res, const int32_t *smp, int len, int order, const int32_t *coefs, int shift, int big)
 
static void FUNC() flac_lpc_encode_c (int32_t *res, const int32_t *smp, int len, int order, const int32_t *coefs, int shift)
 

Macro Definition Documentation

#define FUNC (   n)    AV_JOIN(n ## _, SAMPLE_SIZE)

Definition at line 29 of file flacdsp_lpc_template.c.

Referenced by flac_lpc_encode_c().

#define sum_type   int32_t

Definition at line 36 of file flacdsp_lpc_template.c.

Referenced by flac_lpc_encode_c(), and lpc_encode_unrolled().

#define MUL (   a,
  b 
)    ((a) * (b))

Definition at line 37 of file flacdsp_lpc_template.c.

Referenced by flac_lpc_encode_c(), and idctRowCondDC().

#define CLIP (   x)    (x)

Definition at line 38 of file flacdsp_lpc_template.c.

Referenced by flac_lpc_encode_c(), and lpc_encode_unrolled().

#define LPC1 (   x)
Value:
{ \
int c = coefs[(x)-1]; \
p0 += MUL(c, s); \
s = smp[i-(x)+1]; \
p1 += MUL(c, s); \
}
Undefined Behavior In the C some operations are like signed integer dereferencing freed accessing outside allocated Undefined Behavior must not occur in a C it is not safe even if the output of undefined operations is unused The unsafety may seem nit picking but Optimizing compilers have in fact optimized code on the assumption that no undefined Behavior occurs Optimizing code based on wrong assumptions can and has in some cases lead to effects beyond the output of computations The signed integer overflow problem in speed critical code Code which is highly optimized and works with signed integers sometimes has the problem that often the output of the computation does not c
Definition: undefined.txt:32
#define s(width, name)
Definition: cbs_vp9.c:257
#define MUL(a, b)
int

Definition at line 41 of file flacdsp_lpc_template.c.

Referenced by lpc_encode_unrolled().

Function Documentation

static av_always_inline void FUNC() lpc_encode_unrolled ( int32_t res,
const int32_t smp,
int  len,
int  order,
const int32_t coefs,
int  shift,
int  big 
)
static

Definition at line 48 of file flacdsp_lpc_template.c.

Referenced by flac_lpc_encode_c().

static void FUNC() flac_lpc_encode_c ( int32_t res,
const int32_t smp,
int  len,
int  order,
const int32_t coefs,
int  shift 
)
static

Definition at line 108 of file flacdsp_lpc_template.c.