[FFmpeg-devel] [PATCH 1/5] libavutil: Add fixed_dsp

James Almer jamrial at gmail.com
Mon Mar 10 23:18:17 CET 2014


On 10/03/14 9:43 AM, Nedeljko Babic wrote:
> From: Nedeljko Babic <nbabic at mips.com>
> 
> Signed-off-by: Nedeljko Babic <nbabic at mips.com>
> ---
>  libavutil/Makefile    |   1 +
>  libavutil/fixed_dsp.c |  98 ++++++++++++++++++++++++++++++++++
>  libavutil/fixed_dsp.h | 144 ++++++++++++++++++++++++++++++++++++++++++++++++++
>  libavutil/version.h   |   2 +-
>  4 files changed, 244 insertions(+), 1 deletion(-)
>  create mode 100644 libavutil/fixed_dsp.c
>  create mode 100644 libavutil/fixed_dsp.h
> 

[...]

> +typedef struct AVFixedDSPContext {
> +    /**
> +     * Overlap/add with window function.
> +     * Used primarily by MDCT-based audio codecs.
> +     * Source and destination vectors must overlap exactly or not at all.
> +     *
> +     * @param dst  result vector
> +     *             constraints: 16-byte aligned
> +     * @param src0 first source vector
> +     *             constraints: 16-byte aligned
> +     * @param src1 second source vector
> +     *             constraints: 16-byte aligned
> +     * @param win  half-window vector
> +     *             constraints: 16-byte aligned
> +     * @param len  length of vector
> +     *             constraints: multiple of 4
> +     * @param bits scaling parameter
> +     *
> +     */
> +    void (*vector_fmul_window_fixed_scaled)(int16_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len, uint8_t bits);
> +

Nit: The name is already long enough that you could remove the "fixed". It's after 
all pretty much implied by being inside AVFixedDSPContext.

> +    /**
> +     * Overlap/add with window function.
> +     * Used primarily by MDCT-based audio codecs.
> +     * Source and destination vectors must overlap exactly or not at all.
> +     *
> +     * @param dst  result vector
> +     *             constraints: 32-byte aligned
> +     * @param src0 first source vector
> +     *             constraints: 16-byte aligned
> +     * @param src1 second source vector
> +     *             constraints: 16-byte aligned
> +     * @param win  half-window vector
> +     *             constraints: 16-byte aligned
> +     * @param len  length of vector
> +     *             constraints: multiple of 4
> +     */
> +    void (*vector_fmul_window_fixed)(int32_t *dst, const int32_t *src0, const int32_t *src1, const int32_t *win, int len);
> +

Ditto.



More information about the ffmpeg-devel mailing list