FFmpeg
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)

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

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.

## ◆ 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)

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
 dst result vector constraints: 16-byte aligned src0 first source vector constraints: 16-byte aligned src1 second source vector constraints: 16-byte aligned win half-window vector constraints: 16-byte aligned len length of vector constraints: multiple of 4 bits scaling 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)

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

Parameters
 dst result vector constraints: 32-byte aligned src0 first source vector constraints: 16-byte aligned src1 second source vector constraints: 16-byte aligned win half-window vector constraints: 16-byte aligned len length of vector constraints: multiple of 4

Definition at line 98 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), and checkasm_check_fixed_dsp().

## ◆ 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
 dst output vector constraints: 32-byte aligned src0 first input vector constraints: 32-byte aligned src1 second input vector constraints: 32-byte aligned len number of elements in the input constraints: multiple of 16

Definition at line 113 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), and checkasm_check_fixed_dsp().

## ◆ vector_fmul_reverse

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

Definition at line 116 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), and checkasm_check_fixed_dsp().

 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
 dst output vector constraints: 32-byte aligned src0 first input vector constraints: 32-byte aligned src1 second input vector constraints: 32-byte aligned src2 third input vector constraints: 32-byte aligned len number of elements in the input constraints: multiple of 16

Definition at line 132 of file fixed_dsp.h.

Referenced by avpriv_alloc_fixed_dsp(), and checkasm_check_fixed_dsp().

## ◆ scalarproduct_fixed

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

Calculate the scalar product of two vectors of integers.

Parameters
 v1 first vector, 16-byte aligned v2 second vector, 16-byte aligned len length 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(), and checkasm_check_fixed_dsp().

## ◆ 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
 v1 first input vector, sum output, 16-byte aligned v2 second input vector, difference output, 16-byte aligned len length of vectors, multiple of 4

Definition at line 153 of file fixed_dsp.h.

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

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