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

vorbis.c File Reference


Detailed Description

Vorbis I decoder
Author:
Denes Balatoni ( dbalatoni programozo hu )
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

Definition in file vorbis.c.

#include <math.h>
#include "avcodec.h"
#include "bitstream.h"
#include "dsputil.h"
#include "vorbis.h"
#include <assert.h>

Go to the source code of this file.

Defines

#define ALT_BITSTREAM_READER_LE
#define AV_DEBUG(...)
#define BARK(x)   (13.1f*atan(0.00074f*(x))+2.24f*atan(1.85e-8f*(x)*(x))+1e-4f*(x))
#define BIAS   385
#define ilog(i)   av_log2(2*(i))
#define V_MAX_VLCS   (1<<16)
#define V_NB_BITS   8
#define V_NB_BITS2   11

Functions

static void create_map (vorbis_context *vc, uint_fast8_t floor_number)
static unsigned int get_bits_long_le (GetBitContext *s, int n)
static unsigned int nth_root (unsigned int x, unsigned int n)
static int vorbis_decode_close (AVCodecContext *avccontext)
static int vorbis_decode_frame (AVCodecContext *avccontext, void *data, int *data_size, uint8_t *buf, int buf_size)
static int vorbis_decode_init (AVCodecContext *avccontext)
static uint_fast8_t vorbis_floor0_decode (vorbis_context *vc, vorbis_floor_data *vfu, float *vec)
static uint_fast8_t vorbis_floor1_decode (vorbis_context *vc, vorbis_floor_data *vfu, float *vec)
static void vorbis_free (vorbis_context *vc)
static int vorbis_len2vlc (vorbis_context *vc, uint_fast8_t *bits, uint_fast32_t *codes, uint_fast32_t num)
static int vorbis_parse_audio_packet (vorbis_context *vc)
static int vorbis_parse_id_hdr (vorbis_context *vc)
static int vorbis_parse_setup_hdr (vorbis_context *vc)
static int vorbis_parse_setup_hdr_codebooks (vorbis_context *vc)
static int vorbis_parse_setup_hdr_floors (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_residues (vorbis_context *vc)
static int vorbis_parse_setup_hdr_tdtransforms (vorbis_context *vc)
static int vorbis_residue_decode (vorbis_context *vc, vorbis_residue *vr, uint_fast8_t ch, uint_fast8_t *do_not_decode, float *vec, uint_fast16_t vlen)
static float vorbisfloat2float (uint_fast32_t val)

Variables

AVCodec vorbis_decoder


Generated by  Doxygen 1.6.0   Back to index