xine-lib 1.2.13-20230125hg15249
Data Structures | Macros | Typedefs | Functions | Variables
xine_vorbis_decoder.c File Reference
#include <stdlib.h>
#include <string.h>
#include <xine/xine_internal.h>
#include <xine/audio_out.h>
#include <xine/buffer.h>
#include <ogg/ogg.h>
#include <vorbis/codec.h>
#include "ogg_combined.h"

Data Structures

struct  vorbis_class_t
 
struct  vorbis_decoder_s
 

Macros

#define LOG_MODULE   "vorbis_decoder"
 
#define LOG_VERBOSE
 
#define MAX_NUM_SAMPLES   4096
 
#define INIT_BUFSIZE   8192
 

Typedefs

typedef struct vorbis_decoder_s vorbis_decoder_t
 

Functions

static void vorbis_reset (audio_decoder_t *this_gen)
 
static void vorbis_discontinuity (audio_decoder_t *this_gen)
 
static void get_metadata (vorbis_decoder_t *this)
 
static void vorbis_check_bufsize (vorbis_decoder_t *this, int size)
 
static void vorbis_decode_data (audio_decoder_t *this_gen, buf_element_t *buf)
 
static void vorbis_dispose (audio_decoder_t *this_gen)
 
static audio_decoder_topen_plugin (audio_decoder_class_t *class_gen, xine_stream_t *stream)
 
void * vorbis_init_plugin (xine_t *xine, const void *data)
 

Variables

struct { 
 
   const char *   key 
 
   int   xine_metainfo_index 
 
vorbis_comment_keys [] 
 

Macro Definition Documentation

◆ INIT_BUFSIZE

#define INIT_BUFSIZE   8192

Referenced by open_plugin().

◆ LOG_MODULE

#define LOG_MODULE   "vorbis_decoder"

◆ LOG_VERBOSE

#define LOG_VERBOSE

◆ MAX_NUM_SAMPLES

#define MAX_NUM_SAMPLES   4096

Referenced by vorbis_decode_data().

Typedef Documentation

◆ vorbis_decoder_t

Function Documentation

◆ get_metadata()

static void get_metadata ( vorbis_decoder_t * this)
static

◆ open_plugin()

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

◆ vorbis_check_bufsize()

static void vorbis_check_bufsize ( vorbis_decoder_t * this,
int size )
static

References _, XINE_VERBOSITY_LOG, and xprintf.

Referenced by vorbis_decode_data().

◆ vorbis_decode_data()

static void vorbis_decode_data ( audio_decoder_t * this_gen,
buf_element_t * buf )
static

◆ vorbis_discontinuity()

static void vorbis_discontinuity ( audio_decoder_t * this_gen)
static

Referenced by open_plugin().

◆ vorbis_dispose()

static void vorbis_dispose ( audio_decoder_t * this_gen)
static

References lprintf.

Referenced by open_plugin().

◆ vorbis_init_plugin()

void * vorbis_init_plugin ( xine_t * xine,
const void * data )

◆ vorbis_reset()

static void vorbis_reset ( audio_decoder_t * this_gen)
static

Referenced by open_plugin().

Variable Documentation

◆ key

const char* key

Referenced by get_metadata().

◆ [struct]

const struct { ... } vorbis_comment_keys[]
Initial value:
= {
{"ARTIST=", XINE_META_INFO_ARTIST},
{"ALBUM=", XINE_META_INFO_ALBUM},
{"TITLE=", XINE_META_INFO_TITLE},
{"GENRE=", XINE_META_INFO_GENRE},
{"DESCRIPTION=", XINE_META_INFO_COMMENT},
{"COMMENT=", XINE_META_INFO_COMMENT},
{"DATE=", XINE_META_INFO_YEAR},
{"TRACKNUMBER=", XINE_META_INFO_TRACK_NUMBER},
{NULL, 0}
}
#define XINE_META_INFO_ARTIST
Definition xine.h:1081
#define XINE_META_INFO_COMMENT
Definition xine.h:1080
#define XINE_META_INFO_TRACK_NUMBER
Definition xine.h:1090
#define XINE_META_INFO_ALBUM
Definition xine.h:1083
#define XINE_META_INFO_TITLE
Definition xine.h:1079
#define XINE_META_INFO_YEAR
Definition xine.h:1084
#define XINE_META_INFO_GENRE
Definition xine.h:1082
NULL
Definition xine_plugin.c:78

Referenced by get_metadata().

◆ xine_metainfo_index

int xine_metainfo_index

Referenced by get_metadata().