xine-lib 1.2.11
Macros | Functions | Variables
spudec.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <unistd.h>
#include <pthread.h>
#include <string.h>
#include <inttypes.h>
#include <sys/types.h>
#include <xine/xine_internal.h>
#include <xine/xineutils.h>
#include <xine/buffer.h>
#include "xine-engine/bswap.h"
#include "nav_read.h"
#include "nav_print.h"
#include "spudec.h"

Macros

#define CMD_SPU_FORCE_DISPLAY   0x00
 
#define CMD_SPU_SHOW   0x01
 
#define CMD_SPU_HIDE   0x02
 
#define CMD_SPU_SET_PALETTE   0x03
 
#define CMD_SPU_SET_ALPHA   0x04
 
#define CMD_SPU_SET_SIZE   0x05
 
#define CMD_SPU_SET_PXD_OFFSET   0x06
 
#define CMD_SPU_WIPE   0x07 /* Not currently implemented */
 
#define CMD_SPU_EOF   0xff
 
#define MINFOUND   20
 

Functions

static void spudec_do_commands (xine_t *xine, spudec_state_t *state, spudec_seq_t *seq, vo_overlay_t *ovl)
 
static void spudec_draw_picture (xine_t *xine, spudec_state_t *state, spudec_seq_t *seq, vo_overlay_t *ovl)
 
static void spudec_discover_clut (xine_t *xine, spudec_state_t *state, vo_overlay_t *ovl)
 
void spudec_decode_nav (spudec_decoder_t *this, buf_element_t *buf)
 
void spudec_clear_nav_list (spudec_decoder_t *this)
 
void spudec_update_nav (spudec_decoder_t *this)
 
void spudec_process_nav (spudec_decoder_t *this)
 
void spudec_reassembly (xine_t *xine, spudec_seq_t *seq, uint8_t *pkt_data, unsigned int pkt_len)
 
void spudec_process (spudec_decoder_t *this, int stream_id)
 
static unsigned int get_bits (unsigned int bits)
 
static int spudec_next_line (vo_overlay_t *spu)
 
int spudec_copy_nav_to_overlay (xine_t *xine, pci_t *nav_pci, uint32_t *clut, int32_t button, int32_t mode, vo_overlay_t *overlay, vo_overlay_t *base)
 

Variables

static uint8_t * bit_ptr [2]
 
static int field
 
static int put_x
 
static int put_y
 

Macro Definition Documentation

◆ CMD_SPU_EOF

#define CMD_SPU_EOF   0xff

◆ CMD_SPU_FORCE_DISPLAY

#define CMD_SPU_FORCE_DISPLAY   0x00

◆ CMD_SPU_HIDE

#define CMD_SPU_HIDE   0x02

◆ CMD_SPU_SET_ALPHA

#define CMD_SPU_SET_ALPHA   0x04

◆ CMD_SPU_SET_PALETTE

#define CMD_SPU_SET_PALETTE   0x03

◆ CMD_SPU_SET_PXD_OFFSET

#define CMD_SPU_SET_PXD_OFFSET   0x06

◆ CMD_SPU_SET_SIZE

#define CMD_SPU_SET_SIZE   0x05

◆ CMD_SPU_SHOW

#define CMD_SPU_SHOW   0x01

◆ CMD_SPU_WIPE

#define CMD_SPU_WIPE   0x07 /* Not currently implemented */

◆ MINFOUND

#define MINFOUND   20

Function Documentation

◆ get_bits()

static unsigned int get_bits ( unsigned int  bits)
static

◆ spudec_clear_nav_list()

void spudec_clear_nav_list ( spudec_decoder_t this)

◆ spudec_copy_nav_to_overlay()

int spudec_copy_nav_to_overlay ( xine_t xine,
pci_t *  nav_pci,
uint32_t *  clut,
int32_t  button,
int32_t  mode,
vo_overlay_t overlay,
vo_overlay_t base 
)

◆ spudec_decode_nav()

void spudec_decode_nav ( spudec_decoder_t this,
buf_element_t buf 
)

◆ spudec_discover_clut()

static void spudec_discover_clut ( xine_t xine,
spudec_state_t state,
vo_overlay_t ovl 
)
static

◆ spudec_do_commands()

static void spudec_do_commands ( xine_t xine,
spudec_state_t state,
spudec_seq_t seq,
vo_overlay_t ovl 
)
static

◆ spudec_draw_picture()

static void spudec_draw_picture ( xine_t xine,
spudec_state_t state,
spudec_seq_t seq,
vo_overlay_t ovl 
)
static

◆ spudec_next_line()

static int spudec_next_line ( vo_overlay_t spu)
static

◆ spudec_process()

void spudec_process ( spudec_decoder_t this,
int  stream_id 
)

◆ spudec_process_nav()

void spudec_process_nav ( spudec_decoder_t this)

◆ spudec_reassembly()

void spudec_reassembly ( xine_t xine,
spudec_seq_t seq,
uint8_t *  pkt_data,
unsigned int  pkt_len 
)

◆ spudec_update_nav()

void spudec_update_nav ( spudec_decoder_t this)

Variable Documentation

◆ bit_ptr

uint8_t* bit_ptr[2]
static

Referenced by get_bits(), and spudec_draw_picture().

◆ field

int field
static

◆ put_x

int put_x
static

◆ put_y

int put_y
static