#include <config.h>
#include <stdlib.h>
#include <stdio.h>
#include "common.h"
#include "interface.h"
#include "tabinit.h"
#include "layer3.h"
#include "lame.h"
#include "machine.h"
#include "VbrTag.h"
#include "decode_i386.h"
#include "layer1.h"
#include "layer2.h"
Include dependency graph for interface.c:
Go to the source code of this file.
Defines | |
#define | XING_HEADER_SIZE 194 |
Functions | |
BOOL | InitMP3 (PMPSTR mp) |
void | ExitMP3 (PMPSTR mp) |
static struct buf * | addbuf (PMPSTR mp, unsigned char *buf, int size) |
void | remove_buf (PMPSTR mp) |
static int | read_buf_byte (PMPSTR mp) |
static void | read_head (PMPSTR mp) |
static void | copy_mp (PMPSTR mp, int size, unsigned char *ptr) |
static int | check_vbr_header (PMPSTR mp, int bytes) |
static int | sync_buffer (PMPSTR mp, int free_match) |
static int | decodeMP3_clipchoice (PMPSTR mp, unsigned char *in, int isize, char *out, int *done, int(*synth_1to1_mono_ptr)(PMPSTR, real *, unsigned char *, int *), int(*synth_1to1_ptr)(PMPSTR, real *, int, unsigned char *, int *)) |
int | decodeMP3 (PMPSTR mp, unsigned char *in, int isize, char *out, int osize, int *done) |
int | decodeMP3_unclipped (PMPSTR mp, unsigned char *in, int isize, char *out, int osize, int *done) |
#define XING_HEADER_SIZE 194 |
Definition at line 75 of file interface.c.
References mpstr_tag::bsize, mpstr_tag::head, memcpy, buf::next, buf::pnt, buf::pos, buf::prev, buf::size, and mpstr_tag::tail.
Referenced by decodeMP3_clipchoice().
static int check_vbr_header | ( | PMPSTR | mp, | |
int | bytes | |||
) | [static] |
Definition at line 209 of file interface.c.
References i, buf::next, buf::pos, buf::size, mpstr_tag::tail, and XING_HEADER_SIZE.
Referenced by decodeMP3_clipchoice().
static void copy_mp | ( | PMPSTR | mp, | |
int | size, | |||
unsigned char * | ptr | |||
) | [static] |
Definition at line 172 of file interface.c.
References mpstr_tag::bsize, memcpy, buf::pnt, buf::pos, remove_buf(), buf::size, and mpstr_tag::tail.
Referenced by decodeMP3_clipchoice().
Here is the call graph for this function:
int decodeMP3 | ( | PMPSTR | mp, | |
unsigned char * | in, | |||
int | isize, | |||
char * | out, | |||
int | osize, | |||
int * | done | |||
) |
Definition at line 577 of file interface.c.
References decodeMP3_clipchoice(), MP3_ERR, synth_1to1(), and synth_1to1_mono().
Here is the call graph for this function:
static int decodeMP3_clipchoice | ( | PMPSTR | mp, | |
unsigned char * | in, | |||
int | isize, | |||
char * | out, | |||
int * | done, | |||
int(*)(PMPSTR, real *, unsigned char *, int *) | synth_1to1_mono_ptr, | |||
int(*)(PMPSTR, real *, int, unsigned char *, int *) | synth_1to1_ptr | |||
) | [static] |
Definition at line 338 of file interface.c.
References addbuf(), mpstr_tag::bitindex, mpstr_tag::bsize, mpstr_tag::bsnum, mpstr_tag::bsspace, check_vbr_header(), copy_mp(), mpstr_tag::data_parsed, decode_header(), do_layer1(), do_layer2(), do_layer3(), do_layer3_sideinfo(), mpstr_tag::dsize, frame::error_protection, mpstr_tag::fr, frame::framesize, mpstr_tag::framesize, mpstr_tag::free_format, mpstr_tag::fsizeold, mpstr_tag::fsizeold_nopadding, getbits(), mpstr_tag::header, mpstr_tag::header_parsed, i, frame::lay, frame::lsf, MAXFRAMESIZE, MP3_ERR, MP3_NEED_MORE, MP3_OK, mpstr_tag::old_free_format, frame::padding, read_buf_byte(), read_head(), mpstr_tag::side_parsed, buf::size, mpstr_tag::ssize, frame::stereo, mpstr_tag::sync_bitstream, sync_buffer(), mpstr_tag::vbr_header, and mpstr_tag::wordpointer.
Referenced by decodeMP3(), and decodeMP3_unclipped().
Here is the call graph for this function:
int decodeMP3_unclipped | ( | PMPSTR | mp, | |
unsigned char * | in, | |||
int | isize, | |||
char * | out, | |||
int | osize, | |||
int * | done | |||
) |
Definition at line 589 of file interface.c.
References decodeMP3_clipchoice(), MP3_ERR, real, synth_1to1_mono_unclipped(), and synth_1to1_unclipped().
Here is the call graph for this function:
void ExitMP3 | ( | PMPSTR | mp | ) |
BOOL InitMP3 | ( | PMPSTR | mp | ) |
Definition at line 27 of file interface.c.
References mpstr_tag::bitindex, mpstr_tag::bsize, mpstr_tag::bsnum, mpstr_tag::bsspace, mpstr_tag::data_parsed, mpstr_tag::dsize, mpstr_tag::enc_delay, mpstr_tag::enc_padding, mpstr_tag::fr, mpstr_tag::framesize, mpstr_tag::free_format, mpstr_tag::fsizeold, mpstr_tag::head, mpstr_tag::header_parsed, init_layer2(), init_layer3(), make_decode_tables(), mpstr_tag::num_frames, mpstr_tag::old_free_format, SBLIMIT, mpstr_tag::side_parsed, frame::single, mpstr_tag::ssize, mpstr_tag::sync_bitstream, mpstr_tag::synth_bo, mpstr_tag::tail, mpstr_tag::vbr_header, and mpstr_tag::wordpointer.
Here is the call graph for this function:
static int read_buf_byte | ( | PMPSTR | mp | ) | [static] |
Definition at line 124 of file interface.c.
References mpstr_tag::bsize, buf::pnt, buf::pos, remove_buf(), buf::size, and mpstr_tag::tail.
Referenced by decodeMP3_clipchoice(), and read_head().
Here is the call graph for this function:
static void read_head | ( | PMPSTR | mp | ) | [static] |
Definition at line 151 of file interface.c.
References mpstr_tag::header, and read_buf_byte().
Referenced by decodeMP3_clipchoice().
Here is the call graph for this function:
void remove_buf | ( | PMPSTR | mp | ) |
Definition at line 108 of file interface.c.
References mpstr_tag::head, buf::next, buf::pnt, buf::prev, and mpstr_tag::tail.
Referenced by copy_mp(), and read_buf_byte().
static int sync_buffer | ( | PMPSTR | mp, | |
int | free_match | |||
) | [static] |
Definition at line 259 of file interface.c.
References mpstr_tag::bsize, i, buf::next, buf::pos, buf::size, and mpstr_tag::tail.
Referenced by decodeMP3_clipchoice().