Logo Search packages:      
Sourcecode: aften version File versions  Download package

a52.h File Reference


Detailed Description

Aften: A/52 audio encoder Copyright (c) 2006 Justin Ruggles

Based on "The simplest AC3 encoder" from FFmpeg Copyright (c) 2000 Fabrice Bellard.

This library 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 of the License, or (at your option) any later version.

This library 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 this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

A/52 common header

Aften: A/52 audio encoder Copyright (c) 2006 Justin Ruggles

Based on "The simplest AC3 encoder" from FFmpeg Copyright (c) 2000 Fabrice Bellard.

This library 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 of the License, or (at your option) any later version.

This library 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 this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

A/52 encoder header

Definition in file a52.h.

#include "common.h"
#include "a52tab.h"
#include "aften-types.h"

Go to the source code of this file.

Classes

struct  A52BitAllocParams
struct  A52Block
struct  A52Frame

Defines

#define A52_MAX_CHANNELS   6
#define A52_NUM_BLOCKS   6
#define AFTEN_VERSION   "git"
#define EXP_D15   1
#define EXP_D25   2
#define EXP_D45   3
#define EXP_NEW   1
#define EXP_REUSE   0
#define QUALITY(csnr, fsnr)   (((csnr) << 4) | (fsnr))

Enumerations

enum  AC3DeltaStrategy { DBA_REUSE = 0, DBA_NEW, DBA_NONE, DBA_RESERVED }

Functions

void a52_bit_alloc_calc_bap (int16_t *mask, int16_t *psd, int start, int end, int snr_offset, int floor, uint8_t *bap)
void a52_bit_alloc_calc_mask (A52BitAllocParams *s, int16_t *band_psd, int start, int end, int fast_gain, int dba_mode, int dba_nsegs, uint8_t *dba_offsets, uint8_t *dba_lengths, uint8_t *dba_values, int16_t *mask)
void a52_bit_alloc_calc_psd (uint8_t *exp, int start, int end, int16_t *psd, int16_t *band_psd)
void a52_common_init (void)
static int log2i (uint32_t v)

Variables

const uint8_t log2tab [256]


Generated by  Doxygen 1.6.0   Back to index