[FFmpeg-devel] [PATCH 2/4] libavcodec/libavutil: Implementation of AAC_fixed_decoder (LC-module)

Nedeljko Babic Nedeljko.Babic at imgtec.com
Wed Oct 16 15:00:15 CEST 2013


Hi,

We will split the patch in smaller ones and resubmit implementation of this
decoder.

-Nedeljko
________________________________________
Od: ffmpeg-devel-bounces at ffmpeg.org [ffmpeg-devel-bounces at ffmpeg.org] u ime korisnika Paul B Mahol [onemda at gmail.com]
Poslato: 5. oktobar 2013 15:03
Za: FFmpeg development discussions and patches
Cc: Mirjana Vulin; Zeljko Lukac
Tema: Re: [FFmpeg-devel] [PATCH 2/4] libavcodec/libavutil: Implementation of AAC_fixed_decoder (LC-module)

On 9/18/13, Nedeljko Babic <nedeljko.babic at imgtec.com> wrote:
> From: Mirjana Vulin <mirjana.vulin at imgtec.com>
>
> Signed-off-by: Mirjana Vulin <mirjana.vulin at imgtec.com>
> ---
>  libavcodec/Makefile                    |   15 +-
>  libavcodec/aac.h                       |  104 +-
>  libavcodec/aac_float_emu.h             |  699 ++++++++
>  libavcodec/aacdec.c                    | 2763
> ++------------------------------
>  libavcodec/aacdec_fixed.c              |  458 ++++++
>  libavcodec/aacdec_template.c           | 2747
> +++++++++++++++++++++++++++++++
>  libavcodec/aacdectab.h                 |   34 +-
>  libavcodec/aactab.c                    |    2 +
>  libavcodec/aactab.h                    |    2 +
>  libavcodec/allcodecs.c                 |    1 +
>  libavcodec/cbrt_fixed_tablegen.c       |   24 +
>  libavcodec/cbrt_tablegen.c             |   17 +-
>  libavcodec/cbrt_tablegen.h             |   17 +-
>  libavcodec/cbrt_tablegen_template.c    |   37 +
>  libavcodec/dsputil.c                   |   12 +
>  libavcodec/dsputil.h                   |   17 +
>  libavcodec/float_emu.h                 |  400 +++++
>  libavcodec/float_emu_tab.c             |  296 ++++
>  libavcodec/fmtconvert.c                |   19 +-
>  libavcodec/fmtconvert.h                |    2 +
>  libavcodec/lpc.h                       |   48 +
>  libavcodec/mdct.c                      |    5 +
>  libavcodec/mips/Makefile               |   10 +-
>  libavcodec/mips/aacdec_mips.c          |    6 +-
>  libavcodec/mips/fmtconvert_mips.c      |    4 +
>  libavcodec/sinewin.c                   |    1 +
>  libavcodec/sinewin.h                   |   20 +-
>  libavcodec/sinewin_fixed.c             |   21 +
>  libavcodec/sinewin_fixed_tablegen.c    |   24 +
>  libavcodec/sinewin_tablegen.c          |   26 +-
>  libavcodec/sinewin_tablegen.h          |   31 +-
>  libavcodec/sinewin_tablegen_template.c |   60 +
>  libavcodec/tableprint.h                |    2 +
>  libavutil/fixed_dsp.c                  |   63 +-
>  libavutil/fixed_dsp.h                  |   53 +
>  35 files changed, 5269 insertions(+), 2771 deletions(-)
>  create mode 100644 libavcodec/aac_float_emu.h
>  create mode 100644 libavcodec/aacdec_fixed.c
>  create mode 100644 libavcodec/aacdec_template.c
>  create mode 100644 libavcodec/cbrt_fixed_tablegen.c
>  create mode 100644 libavcodec/cbrt_tablegen_template.c
>  create mode 100644 libavcodec/float_emu.h
>  create mode 100644 libavcodec/float_emu_tab.c
>  create mode 100644 libavcodec/sinewin_fixed.c
>  create mode 100644 libavcodec/sinewin_fixed_tablegen.c
>  create mode 100644 libavcodec/sinewin_tablegen_template.c
>

[...]

> diff --git a/libavcodec/aac_float_emu.h b/libavcodec/aac_float_emu.h
> new file mode 100644
> index 0000000..bbce0f4
> --- /dev/null
> +++ b/libavcodec/aac_float_emu.h
> @@ -0,0 +1,699 @@
> +/*
> + * Copyright (c) 2012
> + *      MIPS Technologies, Inc., California.
> + *
> + * Redistribution and use in source and binary forms, with or without
> + * modification, are permitted provided that the following conditions
> + * are met:
> + * 1. Redistributions of source code must retain the above copyright
> + *    notice, this list of conditions and the following disclaimer.
> + * 2. Redistributions in binary form must reproduce the above copyright
> + *    notice, this list of conditions and the following disclaimer in the
> + *    documentation and/or other materials provided with the distribution.
> + * 3. Neither the name of the MIPS Technologies, Inc., nor the names of is
> + *    contributors may be used to endorse or promote products derived from
> + *    this software without specific prior written permission.

Why this 3 clause BSD license?
IIRC this conflict with LGPL.

[...]

> diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
> index 12e09f0..fd804ec 100644
> --- a/libavcodec/aacdec.c
> +++ b/libavcodec/aacdec.c
> @@ -31,53 +31,10 @@
>   * @author Maxim Gavrilov ( maxim.gavrilov gmail com )
>   */
>
> -/*
> - * supported tools
> - *
> - * Support?             Name
> - * N (code in SoC repo) gain control
> - * Y                    block switching
> - * Y                    window shapes - standard
> - * N                    window shapes - Low Delay
> - * Y                    filterbank - standard
> - * N (code in SoC repo) filterbank - Scalable Sample Rate
> - * Y                    Temporal Noise Shaping
> - * Y                    Long Term Prediction
> - * Y                    intensity stereo
> - * Y                    channel coupling
> - * Y                    frequency domain prediction
> - * Y                    Perceptual Noise Substitution
> - * Y                    Mid/Side stereo
> - * N                    Scalable Inverse AAC Quantization
> - * N                    Frequency Selective Switch
> - * N                    upsampling filter
> - * Y                    quantization & coding - AAC
> - * N                    quantization & coding - TwinVQ
> - * N                    quantization & coding - BSAC
> - * N                    AAC Error Resilience tools
> - * N                    Error Resilience payload syntax
> - * N                    Error Protection tool
> - * N                    CELP
> - * N                    Silence Compression
> - * N                    HVXC
> - * N                    HVXC 4kbits/s VR
> - * N                    Structured Audio tools
> - * N                    Structured Audio Sample Bank Format
> - * N                    MIDI
> - * N                    Harmonic and Individual Lines plus Noise
> - * N                    Text-To-Speech Interface
> - * Y                    Spectral Band Replication
> - * Y (not in this code) Layer-1
> - * Y (not in this code) Layer-2
> - * Y (not in this code) Layer-3
> - * N                    SinuSoidal Coding (Transient, Sinusoid, Noise)
> - * Y                    Parametric Stereo
> - * N                    Direct Stream Transfer
> - *
> - * Note: - HE AAC v1 comprises LC AAC with Spectral Band Replication.
> - *       - HE AAC v2 comprises LC AAC with Spectral Band Replication and
> -           Parametric Stereo.
> - */

Could stuff that moves code around be done in separate patch.
Currently its hard to follow what is actually changed and what is newly added
code.

[...]
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel at ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list