FFmpeg
|
#include <inttypes.h>
#include <math.h>
#include "libavutil/avassert.h"
#include "libavutil/float_dsp.h"
#include "avcodec.h"
#include "fft.h"
#include "get_bits.h"
#include "internal.h"
#include "vorbis.h"
#include "vorbisdsp.h"
#include "xiph.h"
Go to the source code of this file.
Data Structures | |
struct | vorbis_codebook |
struct | vorbis_floor |
union | vorbis_floor::vorbis_floor_u |
struct | vorbis_floor::vorbis_floor_u::vorbis_floor0_s |
struct | vorbis_floor::vorbis_floor_u::vorbis_floor1_s |
struct | vorbis_residue |
struct | vorbis_mapping |
struct | vorbis_mode |
struct | vorbis_context_s |
Macros | |
#define | BITSTREAM_READER_LE |
#define | V_NB_BITS 8 |
#define | V_NB_BITS2 11 |
#define | V_MAX_VLCS (1 << 16) |
#define | V_MAX_PARTITIONS (1 << 20) |
#define | BARK(x) (13.1f * atan(0.00074f * (x)) + 2.24f * atan(1.85e-8f * (x) * (x)) + 1e-4f * (x)) |
#define | VALIDATE_INDEX(idx, limit) |
#define | GET_VALIDATED_INDEX(idx, bits, limit) |
Typedefs | |
typedef union vorbis_floor_u | vorbis_floor_data |
typedef struct vorbis_floor0_s | vorbis_floor0 |
typedef struct vorbis_floor1_s | vorbis_floor1 |
typedef int(* | vorbis_floor_decode_func) (struct vorbis_context_s *, vorbis_floor_data *, float *) |
Functions | |
static float | vorbisfloat2float (unsigned val) |
static void | vorbis_free (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr_codebooks (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr_tdtransforms (vorbis_context *vc) |
static int | vorbis_floor0_decode (vorbis_context *vc, vorbis_floor_data *vfu, float *vec) |
static int | create_map (vorbis_context *vc, unsigned floor_number) |
static int | vorbis_floor1_decode (vorbis_context *vc, vorbis_floor_data *vfu, float *vec) |
static int | vorbis_parse_setup_hdr_floors (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr_residues (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr_mappings (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr_modes (vorbis_context *vc) |
static int | vorbis_parse_setup_hdr (vorbis_context *vc) |
static int | vorbis_parse_id_hdr (vorbis_context *vc) |
static av_cold int | vorbis_decode_init (AVCodecContext *avctx) |
static av_always_inline int | setup_classifs (vorbis_context *vc, vorbis_residue *vr, uint8_t *do_not_decode, unsigned ch_used, int partition_count, int ptns_to_read) |
static av_always_inline int | vorbis_residue_decode_internal (vorbis_context *vc, vorbis_residue *vr, unsigned ch, uint8_t *do_not_decode, float *vec, unsigned vlen, unsigned ch_left, int vr_type) |
static int | vorbis_residue_decode (vorbis_context *vc, vorbis_residue *vr, unsigned ch, uint8_t *do_not_decode, float *vec, unsigned vlen, unsigned ch_left) |
void | ff_vorbis_inverse_coupling (float *mag, float *ang, intptr_t blocksize) |
static int | vorbis_parse_audio_packet (vorbis_context *vc, float **floor_ptr) |
static int | vorbis_decode_frame (AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt) |
static av_cold int | vorbis_decode_close (AVCodecContext *avctx) |
static av_cold void | vorbis_decode_flush (AVCodecContext *avctx) |
Variables | |
static const char | idx_err_str [] = "Index value %d out of range (0 - %d) for %s at %s:%i\n" |
AVCodec | ff_vorbis_decoder |
Vorbis I decoder
This file is part of FFmpeg.
FFmpeg 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.
FFmpeg 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 FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Vorbis I decoder
Definition in file vorbisdec.c.
#define BITSTREAM_READER_LE |
Definition at line 35 of file vorbisdec.c.
#define V_NB_BITS 8 |
Definition at line 44 of file vorbisdec.c.
#define V_NB_BITS2 11 |
Definition at line 45 of file vorbisdec.c.
#define V_MAX_VLCS (1 << 16) |
Definition at line 46 of file vorbisdec.c.
#define V_MAX_PARTITIONS (1 << 20) |
Definition at line 47 of file vorbisdec.c.
Definition at line 159 of file vorbisdec.c.
#define VALIDATE_INDEX | ( | idx, | |
limit | |||
) |
Definition at line 163 of file vorbisdec.c.
#define GET_VALIDATED_INDEX | ( | idx, | |
bits, | |||
limit | |||
) |
Definition at line 170 of file vorbisdec.c.
typedef union vorbis_floor_u vorbis_floor_data |
Definition at line 58 of file vorbisdec.c.
typedef struct vorbis_floor0_s vorbis_floor0 |
Definition at line 59 of file vorbisdec.c.
typedef struct vorbis_floor1_s vorbis_floor1 |
Definition at line 60 of file vorbisdec.c.
typedef int(* vorbis_floor_decode_func) (struct vorbis_context_s *, vorbis_floor_data *, float *) |
Definition at line 64 of file vorbisdec.c.
|
static |
Definition at line 176 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr_codebooks().
|
static |
Definition at line 188 of file vorbisdec.c.
Referenced by vorbis_decode_close(), vorbis_decode_frame(), and vorbis_decode_init().
|
static |
Definition at line 238 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 473 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 1095 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr_floors().
|
static |
Definition at line 850 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr_floors().
|
static |
Definition at line 1209 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr_floors().
|
static |
Definition at line 499 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 689 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 770 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 885 of file vorbisdec.c.
Referenced by vorbis_parse_setup_hdr().
|
static |
Definition at line 914 of file vorbisdec.c.
Referenced by vorbis_decode_frame(), and vorbis_decode_init().
|
static |
Definition at line 960 of file vorbisdec.c.
Referenced by vorbis_decode_frame(), and vorbis_decode_init().
|
static |
Definition at line 1030 of file vorbisdec.c.
|
static |
Definition at line 1336 of file vorbisdec.c.
Referenced by vorbis_residue_decode_internal().
|
static |
Definition at line 1385 of file vorbisdec.c.
Referenced by vorbis_residue_decode().
|
inlinestatic |
Definition at line 1560 of file vorbisdec.c.
Referenced by vorbis_parse_audio_packet().
void ff_vorbis_inverse_coupling | ( | float * | mag, |
float * | ang, | ||
intptr_t | blocksize | ||
) |
Definition at line 1578 of file vorbisdec.c.
Referenced by ff_vorbisdsp_init().
|
static |
Definition at line 1604 of file vorbisdec.c.
Referenced by vorbis_decode_frame().
|
static |
Definition at line 1767 of file vorbisdec.c.
|
static |
Definition at line 1862 of file vorbisdec.c.
|
static |
Definition at line 1871 of file vorbisdec.c.
Definition at line 162 of file vorbisdec.c.
AVCodec ff_vorbis_decoder |
Definition at line 1883 of file vorbisdec.c.