#include "avcodec.h"#include "put_bits.h"#include "dsputil.h"#include "lpc.h"#include "mathops.h"Go to the source code of this file.
Data Structures | |
| struct | RiceContext |
| struct | AlacLPCContext |
| struct | AlacEncodeContext |
Macros | |
| #define | DEFAULT_FRAME_SIZE 4096 |
| ALAC audio encoder Copyright (c) 2008 Jaikrishnan Menon realityman@gmx.net | |
| #define | DEFAULT_SAMPLE_SIZE 16 |
| #define | MAX_CHANNELS 8 |
| #define | ALAC_EXTRADATA_SIZE 36 |
| #define | ALAC_FRAME_HEADER_SIZE 55 |
| #define | ALAC_FRAME_FOOTER_SIZE 3 |
| #define | ALAC_ESCAPE_CODE 0x1FF |
| #define | ALAC_MAX_LPC_ORDER 30 |
| #define | DEFAULT_MAX_PRED_ORDER 6 |
| #define | DEFAULT_MIN_PRED_ORDER 4 |
| #define | ALAC_MAX_LPC_PRECISION 9 |
| #define | ALAC_MAX_LPC_SHIFT 9 |
| #define | ALAC_CHMODE_LEFT_RIGHT 0 |
| #define | ALAC_CHMODE_LEFT_SIDE 1 |
| #define | ALAC_CHMODE_RIGHT_SIDE 2 |
| #define | ALAC_CHMODE_MID_SIDE 3 |
Typedefs | |
| typedef struct RiceContext | RiceContext |
| typedef struct AlacLPCContext | AlacLPCContext |
| typedef struct AlacEncodeContext | AlacEncodeContext |
Functions | |
| static void | init_sample_buffers (AlacEncodeContext *s, const int16_t *input_samples) |
| static void | encode_scalar (AlacEncodeContext *s, int x, int k, int write_sample_size) |
| static void | write_frame_header (AlacEncodeContext *s, int is_verbatim) |
| static void | calc_predictor_params (AlacEncodeContext *s, int ch) |
| static int | estimate_stereo_mode (int32_t *left_ch, int32_t *right_ch, int n) |
| static void | alac_stereo_decorrelation (AlacEncodeContext *s) |
| static void | alac_linear_predictor (AlacEncodeContext *s, int ch) |
| static void | alac_entropy_coder (AlacEncodeContext *s) |
| static void | write_compressed_frame (AlacEncodeContext *s) |
| static av_cold int | alac_encode_init (AVCodecContext *avctx) |
| static int | alac_encode_frame (AVCodecContext *avctx, uint8_t *frame, int buf_size, void *data) |
| static av_cold int | alac_encode_close (AVCodecContext *avctx) |
Variables | |
| AVCodec | ff_alac_encoder |
| #define ALAC_CHMODE_LEFT_RIGHT 0 |
Definition at line 42 of file alacenc.c.
Referenced by alac_stereo_decorrelation().
| #define ALAC_CHMODE_LEFT_SIDE 1 |
Definition at line 43 of file alacenc.c.
Referenced by alac_stereo_decorrelation().
| #define ALAC_CHMODE_RIGHT_SIDE 2 |
Definition at line 44 of file alacenc.c.
Referenced by alac_stereo_decorrelation().
| #define ALAC_ESCAPE_CODE 0x1FF |
Definition at line 35 of file alacenc.c.
Referenced by encode_scalar().
| #define ALAC_EXTRADATA_SIZE 36 |
Definition at line 31 of file alacenc.c.
Referenced by alac_encode_init().
| #define ALAC_MAX_LPC_ORDER 30 |
Definition at line 36 of file alacenc.c.
Referenced by alac_encode_init().
| #define ALAC_MAX_LPC_PRECISION 9 |
Definition at line 39 of file alacenc.c.
Referenced by calc_predictor_params().
| #define ALAC_MAX_LPC_SHIFT 9 |
Definition at line 40 of file alacenc.c.
Referenced by calc_predictor_params().
| #define DEFAULT_FRAME_SIZE 4096 |
ALAC audio encoder Copyright (c) 2008 Jaikrishnan Menon realityman@gmx.net
This file is part of Libav.
Libav is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
Libav is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with Libav; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Definition at line 28 of file alacenc.c.
Referenced by alac_encode_frame(), and alac_encode_init().
| #define DEFAULT_MAX_PRED_ORDER 6 |
Definition at line 37 of file alacenc.c.
Referenced by alac_encode_init().
| #define DEFAULT_MIN_PRED_ORDER 4 |
Definition at line 38 of file alacenc.c.
Referenced by alac_encode_init().
| #define DEFAULT_SAMPLE_SIZE 16 |
Definition at line 29 of file alacenc.c.
Referenced by alac_encode_init().
| typedef struct AlacEncodeContext AlacEncodeContext |
| typedef struct AlacLPCContext AlacLPCContext |
| typedef struct RiceContext RiceContext |
|
static |
|
static |
|
static |
|
static |
Definition at line 302 of file alacenc.c.
Referenced by write_compressed_frame().
|
static |
Definition at line 239 of file alacenc.c.
Referenced by write_compressed_frame().
|
static |
Definition at line 194 of file alacenc.c.
Referenced by write_compressed_frame().
|
static |
Definition at line 130 of file alacenc.c.
Referenced by write_compressed_frame().
|
static |
Definition at line 92 of file alacenc.c.
Referenced by alac_entropy_coder().
|
static |
Definition at line 160 of file alacenc.c.
Referenced by alac_stereo_decorrelation().
|
static |
Definition at line 78 of file alacenc.c.
Referenced by alac_encode_frame().
|
static |
Definition at line 348 of file alacenc.c.
Referenced by alac_encode_frame().
|
static |
Definition at line 120 of file alacenc.c.
Referenced by alac_encode_frame().
| AVCodec ff_alac_encoder |