Logo Search packages:      
Sourcecode: vdr-plugin-bitstreamout version File versions  Download package

Classes | Public Member Functions | Public Attributes | Protected Attributes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes

cMP2 Class Reference

Inheritance diagram for cMP2:
Inheritance graph
[legend]
Collaboration diagram for cMP2:
Collaboration graph
[legend]

List of all members.

Classes

struct  dither

Public Member Functions

unsigned int BurstSize (void) const
virtual const void ClassReset (void)
void Clear (void)
void ClearErr (void) const
 cMP2 (unsigned int rate)
virtual const bool Count (const uint_8 *buf, const uint_8 *const tail)
virtual const frame_tFrame (const uint_8 *&out, const uint_8 *const end)
const frame_tFrame (void) const
const frame_tFrame (enum_frame_t type)
virtual const bool Initialize (void)
virtual void Offset (const uint_8 poff)
virtual const void Release (void)
void Reset (flags_t arg=0)
unsigned int SampleRate (void) const
void SetBuffer (uint_8 *buf)
void SetErr (void) const
void Switch (void)

Public Attributes

bool isDVD
cPTS pts
unsigned int sample_rate
uint_8 track
uint_16 bfound
uint_16 buffer_gard
size_t buffer_gard
uint_16 fsize
size_t payload_size
size_t pos
size_t sample_size
mp2info_t sync
mp2info_t syncinfo
uint_16 syncword

Protected Attributes

const uint_32 burst_size

Private Types

enum  { MIN_SPL = -MAD_F_ONE, MAX_SPL = MAD_F_ONE - 1 }
typedef struct cMP2::dither dither_t
typedef struct mad_frame mad_frame_t
typedef struct mad_stream mad_stream_t
typedef struct mad_synth mad_synth_t
typedef sint_32(* scale_t )(mad_fixed_t sample, dither_t &dither)

Private Member Functions

bool BufferGuard (void)
int Decode (void)
void parse_syncinfo (mp2info_t &syncinfo, const uint_8 *data)
void reset_count (void)
void reset_scan (void)
ssize_t Sample (uint_8 *data, size_t cnt)
void Start (void)
void Stop (void)
size_t Stream (uint_8 *data, size_t cnt)

Static Private Member Functions

static sint_32 Dither (mad_fixed_t sample, dither_t &dither)
static mad_fixed_t Prng (const mad_fixed_t state)
static sint_32 Round (mad_fixed_t sample, dither_t &dither)

Private Attributes

struct {
   uint_16   bfound
   uint_16   buffer_gard
   uint_16   fsize
   mp2info_t   sync
   uint_16   syncword
c
cMutex ctr
uint_8 * currin
dither_t dith [2]
mad_frame_t frame
uint_8 * nextin
bool running
struct {
   size_t   buffer_gard
   size_t   payload_size
   size_t   pos
   size_t   sample_size
   mp2info_t   syncinfo
   uint_16   syncword
s
scale_t Scale
mad_stream_t stream
mad_synth_t synth

Static Private Attributes

static const uint_32 bitrate_table [5][15]
static const uint_16 magic = 0xffe0
static const uint_32 samplerate_table [3] = {44100, 48000, 32000}

Detailed Description

Definition at line 46 of file mp2.h.


The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index