xine-lib: xine-lib-1.2.12/src/audio_dec/gsm610.c File Reference

xine-lib 1.2.12

Data Structures | Macros | Typedefs | Functions | Variables
gsm610.c File Reference
`#include <stdlib.h>`
`#include <string.h>`
`#include <xine/xine_internal.h>`
`#include <xine/audio_out.h>`
`#include <xine/buffer.h>`
`#include <xine/xineutils.h>`
`#include "bswap.h"`
`#include "private.h"`
`#include "gsm.h"`

## Data Structures
struct | gsm610_decoder_s

## Macros
#define | AUDIOBUFSIZE 128*1024
#define | GSM610_SAMPLE_SIZE 16
#define | GSM610_BLOCK_SIZE 160

## Typedefs
typedef struct gsm610_decoder_s | gsm610_decoder_t

## Functions
static void | gsm610_decode_data (audio_decoder_t *this_gen, buf_element_t *buf)
static void | gsm610_reset (audio_decoder_t *this_gen)
static void | gsm610_discontinuity (audio_decoder_t *this_gen)
static void | gsm610_dispose (audio_decoder_t *this_gen)
static audio_decoder_t * | open_plugin (audio_decoder_class_t *class_gen, xine_stream_t *stream)
static void * | init_plugin (xine_t *xine, const void *data)

## Variables
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

## ◆ AUDIOBUFSIZE

#define AUDIOBUFSIZE 128*1024

## ◆ GSM610_BLOCK_SIZE

#define GSM610_BLOCK_SIZE 160

## ◆ GSM610_SAMPLE_SIZE

#define GSM610_SAMPLE_SIZE 16

## Typedef Documentation

## ◆ gsm610_decoder_t

typedef struct gsm610_decoder_s gsm610_decoder_t

## Function Documentation

## ◆ gsm610_decode_data()

static void gsm610_decode_data | ( | audio_decoder_t * | this_gen,
|  | buf_element_t * | buf
| ) |  |
| static

References _x_meta_info_set_utf8(), AO_CAP_MODE_MONO, AUDIOBUFSIZE, BUF_AUDIO_MSGSM, BUF_FLAG_FRAME_END, BUF_FLAG_STDHEADER, buf_type, buf_element_s::content, buf_element_s::decoder_flags, buf_element_s::decoder_info, GSM610_BLOCK_SIZE, GSM610_SAMPLE_SIZE, audio_buffer_s::mem, audio_buffer_s::num_frames, buf_element_s::pts, buf_element_s::size, audio_buffer_s::stream, buf_element_s::type, audio_buffer_s::vpts, xine_container_of, xine_fast_memcpy, XINE_META_INFO_AUDIOCODEC, XINE_VERBOSITY_DEBUG, and xprintf.

Referenced by open_plugin().

## ◆ gsm610_discontinuity()

static void gsm610_discontinuity | ( | audio_decoder_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ gsm610_dispose()

static void gsm610_dispose | ( | audio_decoder_t * | this_gen | ) |
| static

References _x_freep(), and xine_container_of.

Referenced by open_plugin().

## ◆ gsm610_reset()

static void gsm610_reset | ( | audio_decoder_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ init_plugin()

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

References N_, NULL, open_plugin(), and audio_decoder_class_s::open_plugin.

## ◆ open_plugin()

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

References gsm610_decode_data(), gsm610_discontinuity(), gsm610_dispose(), gsm610_reset(), and NULL.

Referenced by init_plugin().

## Variable Documentation

## ◆ audio_types

const uint32_t audio_types[]
| static

Initial value:
= {
BUF_AUDIO_MSGSM,
BUF_AUDIO_GSM610,
0
}
BUF_AUDIO_GSM610
#define BUF_AUDIO_GSM610
Definition: buffer.h:239
BUF_AUDIO_MSGSM
#define BUF_AUDIO_MSGSM
Definition: buffer.h:217

## ◆ dec_info_audio

const decoder_info_t dec_info_audio
| static

Initial value:
= {
.supported_types = audio_types,
.priority = 9,
}
audio_types
static const uint32_t audio_types[]
Definition: gsm610.c:265

## ◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED

Initial value:
= {
{ PLUGIN_AUDIO_DECODER, 16, "gsm610", XINE_VERSION_CODE, &dec_info_audio, init_plugin },
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
init_plugin
static void * init_plugin(xine_t *xine, const void *data)
Definition: gsm610.c:252
dec_info_audio
static const decoder_info_t dec_info_audio
Definition: gsm610.c:271
XINE_VERSION_CODE
#define XINE_VERSION_CODE
Definition: xine_internal.h:57
NULL
NULL
Definition: xine_plugin.c:78
PLUGIN_AUDIO_DECODER
#define PLUGIN_AUDIO_DECODER
Definition: xine_plugin.h:32
PLUGIN_NONE
#define PLUGIN_NONE
Definition: xine_plugin.h:29