interface.c File Reference

#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 bufaddbuf (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 Documentation

#define XING_HEADER_SIZE   194

Definition at line 196 of file interface.c.

Referenced by check_vbr_header().


Function Documentation

static struct buf* addbuf ( PMPSTR  mp,
unsigned char *  buf,
int  size 
) [static, read]

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  ) 

Definition at line 62 of file interface.c.

References buf::next, buf::pnt, and mpstr_tag::tail.

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().


Generated on Sun Dec 2 11:37:33 2007 for LAME by  doxygen 1.5.2