FFmpeg
Data Fields
AVFixedDSPContext Struct Reference

#include <fixed_dsp.h>

Data Fields

void(* vector_fmul_window_scaled )(int16_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len, uint8_t bits)
 Overlap/add with window function. More...
 
void(* vector_fmul_window )(int32_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len)
 Overlap/add with window function. More...
 
void(* vector_fmul )(int *dst, const int *src0, const int *src1, int len)
 Fixed-point multiplication that calculates the entry wise product of two vectors of integers and stores the result in a vector of integers. More...
 
void(* vector_fmul_reverse )(int *dst, const int *src0, const int *src1, int len)
 
void(* vector_fmul_add )(int *dst, const int *src0, const int *src1, const int *src2, int len)
 Calculate the entry wise product of two vectors of integers, add a third vector of integers and store the result in a vector of integers. More...
 
int(* scalarproduct_fixed )(const int *v1, const int *v2, int len)
 Calculate the scalar product of two vectors of integers. More...
 
void(* butterflies_fixed )(int *av_restrict v1, int *av_restrict v2, int len)
 Calculate the sum and difference of two vectors of integers. More...
 

Detailed Description

Definition at line 56 of file fixed_dsp.h.

Field Documentation

◆ vector_fmul_window_scaled

void(* AVFixedDSPContext::vector_fmul_window_scaled) (int16_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len, uint8_t bits)

Overlap/add with window function.

Result is scaled down by "bits" bits. Used primarily by MDCT-based audio codecs. Source and destination vectors must overlap exactly or not at all.

Parameters
dstresult vector constraints: 16-byte aligned
src0first source vector constraints: 16-byte aligned
src1second source vector constraints: 16-byte aligned
winhalf-window vector constraints: 16-byte aligned
lenlength of vector constraints: multiple of 4
bitsscaling parameter

Definition at line 80 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), and checkasm_check_fixed_dsp().

◆ vector_fmul_window

void(* AVFixedDSPContext::vector_fmul_window) (int32_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len)

Overlap/add with window function.

Used primarily by MDCT-based audio codecs. Source and destination vectors must overlap exactly or not at all.

Parameters
dstresult vector constraints: 32-byte aligned
src0first source vector constraints: 16-byte aligned
src1second source vector constraints: 16-byte aligned
winhalf-window vector constraints: 16-byte aligned
lenlength of vector constraints: multiple of 4

Definition at line 98 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), checkasm_check_fixed_dsp(), and ff_fixed_dsp_init_riscv().

◆ vector_fmul

void(* AVFixedDSPContext::vector_fmul) (int *dst, const int *src0, const int *src1, int len)

Fixed-point multiplication that calculates the entry wise product of two vectors of integers and stores the result in a vector of integers.

Parameters
dstoutput vector constraints: 32-byte aligned
src0first input vector constraints: 32-byte aligned
src1second input vector constraints: 32-byte aligned
lennumber of elements in the input constraints: multiple of 16

Definition at line 113 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), checkasm_check_fixed_dsp(), and ff_fixed_dsp_init_riscv().

◆ vector_fmul_reverse

void(* AVFixedDSPContext::vector_fmul_reverse) (int *dst, const int *src0, const int *src1, int len)

◆ vector_fmul_add

void(* AVFixedDSPContext::vector_fmul_add) (int *dst, const int *src0, const int *src1, const int *src2, int len)

Calculate the entry wise product of two vectors of integers, add a third vector of integers and store the result in a vector of integers.

Parameters
dstoutput vector constraints: 32-byte aligned
src0first input vector constraints: 32-byte aligned
src1second input vector constraints: 32-byte aligned
src2third input vector constraints: 32-byte aligned
lennumber of elements in the input constraints: multiple of 16

Definition at line 132 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), checkasm_check_fixed_dsp(), and ff_fixed_dsp_init_riscv().

◆ scalarproduct_fixed

int(* AVFixedDSPContext::scalarproduct_fixed) (const int *v1, const int *v2, int len)

Calculate the scalar product of two vectors of integers.

Parameters
v1first vector, 16-byte aligned
v2second vector, 16-byte aligned
lenlength of vectors, multiple of 4
Returns
sum of elementwise products

Definition at line 144 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), checkasm_check_fixed_dsp(), and ff_fixed_dsp_init_riscv().

◆ butterflies_fixed

void(* AVFixedDSPContext::butterflies_fixed) (int *av_restrict v1, int *av_restrict v2, int len)

Calculate the sum and difference of two vectors of integers.

Parameters
v1first input vector, sum output, 16-byte aligned
v2second input vector, difference output, 16-byte aligned
lenlength of vectors, multiple of 4

Definition at line 153 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), checkasm_check_fixed_dsp(), ff_fixed_dsp_init_riscv(), and ff_fixed_dsp_init_x86().


The documentation for this struct was generated from the following file: