xine-lib 1.2.11
Data Structures | Macros | Typedefs | Functions | Variables
xine_a52_spdif.c File Reference
#include "config.h"
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <xine/xine_internal.h>
#include <xine/audio_out.h>
#include <xine/buffer.h>
#include <xine/xineutils.h>
#include "xine_a52_parser.h"

Data Structures

struct  frmsize_s
 
struct  a52dec_decoder_s
 

Macros

#define _DEFAULT_SOURCE   1
 
#define _XOPEN_SOURCE   500
 
#define _BSD_SOURCE   1
 
#define LOG_MODULE   "a52_spdif"
 
#define LOG_VERBOSE
 
#define A52_MONO   1
 
#define A52_STEREO   2
 
#define A52_3F   3
 
#define A52_2F1R   4
 
#define A52_3F1R   5
 
#define A52_2F2R   6
 
#define A52_3F2R   7
 
#define A52_DOLBY   10
 
#define A52_CHANNEL_MASK   15
 
#define A52_LFE   16
 

Typedefs

typedef struct a52dec_decoder_s a52dec_decoder_t
 

Functions

static int a52_syncinfo (uint8_t *buf, int *flags, int *sample_rate, int *bit_rate)
 
static void a52dec_reset (audio_decoder_t *this_gen)
 
static void a52dec_discontinuity (audio_decoder_t *this_gen)
 
static void a52dec_decode_frame (a52dec_decoder_t *this, int64_t pts, int preview_mode)
 
static void a52dec_decode_data (audio_decoder_t *this_gen, buf_element_t *buf)
 
static void a52dec_dispose (audio_decoder_t *this_gen)
 
static audio_decoder_topen_plugin (audio_decoder_class_t *class_gen, xine_stream_t *stream)
 
static void * init_plugin (xine_t *xine, const void *data)
 

Variables

static const struct frmsize_s frmsizecod_tbl [64]
 
static const uint32_t audio_types []
 
static const decoder_info_t dec_info_audio
 
const plugin_info_t xine_plugin_info[] EXPORTED
 

Macro Definition Documentation

◆ _BSD_SOURCE

#define _BSD_SOURCE   1

◆ _DEFAULT_SOURCE

#define _DEFAULT_SOURCE   1

◆ _XOPEN_SOURCE

#define _XOPEN_SOURCE   500

◆ A52_2F1R

#define A52_2F1R   4

◆ A52_2F2R

#define A52_2F2R   6

◆ A52_3F

#define A52_3F   3

◆ A52_3F1R

#define A52_3F1R   5

◆ A52_3F2R

#define A52_3F2R   7

◆ A52_CHANNEL_MASK

#define A52_CHANNEL_MASK   15

◆ A52_DOLBY

#define A52_DOLBY   10

◆ A52_LFE

#define A52_LFE   16

◆ A52_MONO

#define A52_MONO   1

◆ A52_STEREO

#define A52_STEREO   2

◆ LOG_MODULE

#define LOG_MODULE   "a52_spdif"

◆ LOG_VERBOSE

#define LOG_VERBOSE

Typedef Documentation

◆ a52dec_decoder_t

Function Documentation

◆ a52_syncinfo()

static int a52_syncinfo ( uint8_t *  buf,
int *  flags,
int *  sample_rate,
int *  bit_rate 
)
static

References A52_DOLBY, A52_LFE, and frmsize_s::bit_rate.

Referenced by xine_a52_parse_data().

◆ a52dec_decode_data()

static void a52dec_decode_data ( audio_decoder_t this_gen,
buf_element_t buf 
)
static

◆ a52dec_decode_frame()

static void a52dec_decode_frame ( a52dec_decoder_t this,
int64_t  pts,
int  preview_mode 
)
static

◆ a52dec_discontinuity()

static void a52dec_discontinuity ( audio_decoder_t this_gen)
static

References a52dec_reset().

Referenced by open_plugin().

◆ a52dec_dispose()

static void a52dec_dispose ( audio_decoder_t this_gen)
static

Referenced by open_plugin().

◆ a52dec_reset()

static void a52dec_reset ( audio_decoder_t this_gen)
static

◆ init_plugin()

static void * init_plugin ( xine_t xine,
const void *  data 
)
static

◆ open_plugin()

static audio_decoder_t * open_plugin ( audio_decoder_class_t class_gen,
xine_stream_t stream 
)
static

Variable Documentation

◆ audio_types

const uint32_t audio_types[]
static
Initial value:
= {
0
}
#define BUF_AUDIO_DNET
Definition: buffer.h:224
#define BUF_AUDIO_A52
Definition: buffer.h:209

◆ dec_info_audio

const decoder_info_t dec_info_audio
static
Initial value:
= {
.supported_types = audio_types,
.priority = 20,
}
static const uint32_t audio_types[]
Definition: xine_a52_spdif.c:322

◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED
Initial value:
= {
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
static void * init_plugin(xine_t *xine, const void *data)
Definition: xine_a52_spdif.c:308
static const decoder_info_t dec_info_audio
Definition: xine_a52_spdif.c:328
#define XINE_VERSION_CODE
Definition: xine_internal.h:57
NULL
Definition: xine_plugin.c:78
#define PLUGIN_AUDIO_DECODER
Definition: xine_plugin.h:32
#define PLUGIN_NONE
Definition: xine_plugin.h:29
#define PLUGIN_MUST_PRELOAD
Definition: xine_plugin.h:46

◆ frmsizecod_tbl

const struct frmsize_s frmsizecod_tbl[64]
static

Referenced by a52dec_decode_frame().