FFmpeg
|
#include <float_dsp.h>
Data Fields | |
void(* | vector_fmul )(float *dst, const float *src0, const float *src1, int len) |
Calculate the product of two vectors of floats and store the result in a vector of floats. More... | |
void(* | vector_fmac_scalar )(float *dst, const float *src, float mul, int len) |
Multiply a vector of floats by a scalar float and add to destination vector. More... | |
void(* | vector_fmul_scalar )(float *dst, const float *src, float mul, int len) |
Multiply a vector of floats by a scalar float. More... | |
void(* | vector_dmul_scalar )(double *dst, const double *src, double mul, int len) |
Multiply a vector of double by a scalar double. More... | |
void(* | vector_fmul_window )(float *dst, const float *src0, const float *src1, const float *win, int len) |
Overlap/add with window function. More... | |
void(* | vector_fmul_add )(float *dst, const float *src0, const float *src1, const float *src2, int len) |
Calculate the product of two vectors of floats, add a third vector of floats and store the result in a vector of floats. More... | |
void(* | vector_fmul_reverse )(float *dst, const float *src0, const float *src1, int len) |
Calculate the product of two vectors of floats, and store the result in a vector of floats. More... | |
void(* | butterflies_float )(float *av_restrict v1, float *av_restrict v2, int len) |
Calculate the sum and difference of two vectors of floats. More... | |
float(* | scalarproduct_float )(const float *v1, const float *v2, int len) |
Calculate the scalar product of two vectors of floats. More... | |
Detailed Description
Definition at line 24 of file float_dsp.h.
Field Documentation
void(* AVFloatDSPContext::butterflies_float) (float *av_restrict v1, float *av_restrict v2, int len) |
Calculate the sum and difference of two vectors of floats.
- 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 150 of file float_dsp.h.
Referenced by apply_mid_side_stereo(), avpriv_float_dsp_init(), ff_float_dsp_init_mips(), ff_float_dsp_init_neon(), ff_float_dsp_init_x86(), imc_decode_frame(), imdct_output(), and wma_decode_block().
float(* AVFloatDSPContext::scalarproduct_float) (const float *v1, const float *v2, int len) |
Calculate the scalar product of two vectors of floats.
- 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 161 of file float_dsp.h.
Referenced by avpriv_float_dsp_init(), decode_spectrum_and_dequant(), ff_float_dsp_init_neon(), and ff_float_dsp_init_x86().
Multiply a vector of double by a scalar double.
Source and destination vectors must overlap exactly or not at all.
- Parameters
-
dst result vector constraints: 32-byte aligned src input vector constraints: 32-byte aligned mul scalar value len length of vector constraints: multiple of 8
Definition at line 84 of file float_dsp.h.
Referenced by avpriv_float_dsp_init(), ff_float_dsp_init_x86(), and filter_frame().
Multiply a vector of floats by a scalar float and add to destination vector.
Source and destination vectors must overlap exactly or not at all.
- Parameters
-
dst result vector constraints: 32-byte aligned src input vector constraints: 32-byte aligned mul scalar value len length of vector constraints: multiple of 16
Definition at line 54 of file float_dsp.h.
Referenced by avpriv_float_dsp_init(), ff_float_dsp_init_neon(), ff_float_dsp_init_x86(), and output_frame().
Calculate the product of two vectors of floats and store the result in a vector of floats.
- 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 38 of file float_dsp.h.
Referenced by apply_mdct(), apply_window(), apply_window_and_mdct(), avpriv_float_dsp_init(), backward_filter(), DECLARE_ALIGNED(), do_hybrid_window(), ff_float_dsp_init_mips(), ff_float_dsp_init_neon(), ff_float_dsp_init_ppc(), ff_float_dsp_init_vfp(), ff_float_dsp_init_x86(), read_and_decode_spectrum(), sbr_qmf_synthesis(), vorbis_parse_audio_packet(), and windowing_and_mdct_ltp().
void(* AVFloatDSPContext::vector_fmul_add) (float *dst, const float *src0, const float *src1, const float *src2, int len) |
Calculate the product of two vectors of floats, add a third vector of floats and store the result in a vector of floats.
- Parameters
-
dst output vector constraints: 32-byte aligned src0 first input vector constraints: 32-byte aligned src1 second input vector constraints: 32-byte aligned src1 third input vector constraints: 32-byte aligned len number of elements in the input constraints: multiple of 16
Definition at line 121 of file float_dsp.h.
Referenced by avpriv_float_dsp_init(), ff_float_dsp_init_neon(), ff_float_dsp_init_ppc(), ff_float_dsp_init_x86(), sbr_qmf_synthesis(), and wma_window().
void(* AVFloatDSPContext::vector_fmul_reverse) (float *dst, const float *src0, const float *src1, int len) |
Calculate the product of two vectors of floats, and store the result in a vector of floats.
The second vector of floats is iterated over in reverse order.
- Parameters
-
dst output vector constraints: 32-byte aligned src0 first input vector constraints: 32-byte aligned src1 second input vector constraints: 32-byte aligned src1 third input vector constraints: 32-byte aligned len number of elements in the input constraints: multiple of 16
Definition at line 140 of file float_dsp.h.
Referenced by apply_mdct(), apply_window_and_mdct(), avpriv_float_dsp_init(), ff_float_dsp_init_mips(), ff_float_dsp_init_neon(), ff_float_dsp_init_ppc(), ff_float_dsp_init_vfp(), ff_float_dsp_init_x86(), sbr_qmf_analysis(), update_ltp(), windowing_and_mdct_ltp(), and wma_window().
Multiply a vector of floats by a scalar float.
Source and destination vectors must overlap exactly or not at all.
- Parameters
-
dst result vector constraints: 16-byte aligned src input vector constraints: 16-byte aligned mul scalar value len length of vector constraints: multiple of 4
Definition at line 69 of file float_dsp.h.
Referenced by apply_intensity_stereo(), apply_window_and_mdct(), avpriv_float_dsp_init(), decode_spectrum_and_dequant(), decode_subframe(), ff_float_dsp_init_mips(), ff_float_dsp_init_neon(), ff_float_dsp_init_x86(), filter_frame(), inverse_channel_transform(), and mp3lame_encode_frame().
void(* AVFloatDSPContext::vector_fmul_window) (float *dst, const float *src0, const float *src1, const float *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
-
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
Definition at line 103 of file float_dsp.h.
Referenced by avpriv_float_dsp_init(), ff_float_dsp_init_mips(), ff_float_dsp_init_neon(), ff_float_dsp_init_ppc(), ff_float_dsp_init_x86(), imdct_and_window(), imdct_and_windowing(), nelly_decode_block(), vorbis_parse_audio_packet(), and wmapro_window().
The documentation for this struct was generated from the following file:
Generated on Mon Nov 18 2024 06:52:11 for FFmpeg by 1.8.11