dvbsub.c File Reference

Include dependency graph for dvbsub.c:


Data Structures

struct  dvbsub_objectdef_s
struct  dvbsub_color_t
struct  dvbsub_display_s
struct  dvbsub_clut_s
struct  dvbsub_region_s
struct  dvbsub_regiondef_s
struct  dvbsub_page_t
struct  decoder_sys_t
struct  encoder_region_t
struct  encoder_sys_t

Defines

#define POSX_TEXT   N_("Decoding X coordinate")
#define POSX_LONGTEXT   N_("X coordinate of the rendered subtitle")
#define POSY_TEXT   N_("Decoding Y coordinate")
#define POSY_LONGTEXT   N_("Y coordinate of the rendered subtitle")
#define POS_TEXT   N_("Subpicture position")
#define POS_LONGTEXT
#define ENC_POSX_TEXT   N_("Encoding X coordinate")
#define ENC_POSX_LONGTEXT   N_("X coordinate of the encoded subtitle" )
#define ENC_POSY_TEXT   N_("Encoding Y coordinate")
#define ENC_POSY_LONGTEXT   N_("Y coordinate of the encoded subtitle" )
#define DVBSUB_CFG_PREFIX   "dvbsub-"
#define ENC_CFG_PREFIX   "sout-dvbsub-"
#define DVBSUB_ST_PAGE_COMPOSITION   0x10
#define DVBSUB_ST_REGION_COMPOSITION   0x11
#define DVBSUB_ST_CLUT_DEFINITION   0x12
#define DVBSUB_ST_OBJECT_DATA   0x13
#define DVBSUB_ST_DISPLAY_DEFINITION   0x14
#define DVBSUB_ST_ENDOFDISPLAY   0x80
#define DVBSUB_ST_STUFFING   0xff
#define DVBSUB_OT_BASIC_BITMAP   0x00
#define DVBSUB_OT_BASIC_CHAR   0x01
#define DVBSUB_OT_COMPOSITE_STRING   0x02
#define DVBSUB_DT_2BP_CODE_STRING   0x10
#define DVBSUB_DT_4BP_CODE_STRING   0x11
#define DVBSUB_DT_8BP_CODE_STRING   0x12
#define DVBSUB_DT_24_TABLE_DATA   0x20
#define DVBSUB_DT_28_TABLE_DATA   0x21
#define DVBSUB_DT_48_TABLE_DATA   0x22
#define DVBSUB_DT_END_LINE   0xf0
#define DVBSUB_PCS_STATE_ACQUISITION   0x01
#define DVBSUB_PCS_STATE_CHANGE   0x02
#define RGB_TO_Y(r, g, b)   ((int16_t) 77 * r + 150 * g + 29 * b) / 256;
#define RGB_TO_U(r, g, b)   ((int16_t) -44 * r - 87 * g + 131 * b) / 256;
#define RGB_TO_V(r, g, b)   ((int16_t) 131 * r - 110 * g - 21 * b) / 256;

Typedefs

typedef dvbsub_objectdef_s dvbsub_objectdef_t
typedef dvbsub_display_s dvbsub_display_t
typedef dvbsub_clut_s dvbsub_clut_t
typedef dvbsub_region_s dvbsub_region_t
typedef dvbsub_regiondef_s dvbsub_regiondef_t

Functions

static int Open (vlc_object_t *)
static void Close (vlc_object_t *)
static subpicture_tDecode (decoder_t *, block_t **)
static int OpenEncoder (vlc_object_t *)
static void CloseEncoder (vlc_object_t *)
static block_tEncode (encoder_t *, subpicture_t *)
int vlc_entry__main (module_t *p_module)
const char * vlc_entry_license__main (void)
static void decode_segment (decoder_t *, bs_t *)
static void decode_page_composition (decoder_t *, bs_t *)
static void decode_region_composition (decoder_t *, bs_t *)
static void decode_object (decoder_t *, bs_t *)
static void decode_display_definition (decoder_t *, bs_t *)
static void decode_clut (decoder_t *, bs_t *)
static void free_all (decoder_t *)
static void default_clut_init (decoder_t *)
static subpicture_trender (decoder_t *)
static void dvbsub_render_pdata (decoder_t *, dvbsub_region_t *, int, int, uint8_t *, int)
static void dvbsub_pdata2bpp (bs_t *, uint8_t *, int, int *)
static void dvbsub_pdata4bpp (bs_t *, uint8_t *, int, int *)
static void dvbsub_pdata8bpp (bs_t *, uint8_t *, int, int *)
static void encode_page_composition (encoder_t *, bs_t *, subpicture_t *)
static void encode_clut (encoder_t *, bs_t *, subpicture_t *)
static void encode_region_composition (encoder_t *, bs_t *, subpicture_t *)
static void encode_object (encoder_t *, bs_t *, subpicture_t *)
static subpicture_tYuvaYuvp (subpicture_t *p_subpic)
static void encode_pixel_data (encoder_t *p_enc, bs_t *s, subpicture_region_t *p_region, bool b_top)
static void encode_pixel_line_2bp (bs_t *s, subpicture_region_t *p_region, int i_line)
static void encode_pixel_line_4bp (bs_t *s, subpicture_region_t *p_region, int i_line)
static void encode_pixel_line_8bp (bs_t *s, subpicture_region_t *p_region, int i_line)

Variables

static const int pi_pos_values [] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 }
static const char *const ppsz_pos_descriptions []
static const char *const ppsz_enc_options [] = { "x", "y", NULL }

Define Documentation

#define DVBSUB_CFG_PREFIX   "dvbsub-"

#define DVBSUB_DT_24_TABLE_DATA   0x20

#define DVBSUB_DT_28_TABLE_DATA   0x21

#define DVBSUB_DT_2BP_CODE_STRING   0x10

#define DVBSUB_DT_48_TABLE_DATA   0x22

#define DVBSUB_DT_4BP_CODE_STRING   0x11

#define DVBSUB_DT_8BP_CODE_STRING   0x12

#define DVBSUB_DT_END_LINE   0xf0

#define DVBSUB_OT_BASIC_BITMAP   0x00

#define DVBSUB_OT_BASIC_CHAR   0x01

#define DVBSUB_OT_COMPOSITE_STRING   0x02

#define DVBSUB_PCS_STATE_ACQUISITION   0x01

#define DVBSUB_PCS_STATE_CHANGE   0x02

#define DVBSUB_ST_CLUT_DEFINITION   0x12

#define DVBSUB_ST_DISPLAY_DEFINITION   0x14

#define DVBSUB_ST_ENDOFDISPLAY   0x80

#define DVBSUB_ST_OBJECT_DATA   0x13

#define DVBSUB_ST_PAGE_COMPOSITION   0x10

#define DVBSUB_ST_REGION_COMPOSITION   0x11

#define DVBSUB_ST_STUFFING   0xff

#define ENC_CFG_PREFIX   "sout-dvbsub-"

#define ENC_POSX_LONGTEXT   N_("X coordinate of the encoded subtitle" )

#define ENC_POSX_TEXT   N_("Encoding X coordinate")

#define ENC_POSY_LONGTEXT   N_("Y coordinate of the encoded subtitle" )

#define ENC_POSY_TEXT   N_("Encoding Y coordinate")

#define POS_LONGTEXT

Value:

N_( \
  "You can enforce the subpicture position on the video " \
  "(0=center, 1=left, 2=right, 4=top, 8=bottom, you can " \
  "also use combinations of these values, e.g. 6=top-right).")

#define POS_TEXT   N_("Subpicture position")

#define POSX_LONGTEXT   N_("X coordinate of the rendered subtitle")

#define POSX_TEXT   N_("Decoding X coordinate")

#define POSY_LONGTEXT   N_("Y coordinate of the rendered subtitle")

#define POSY_TEXT   N_("Decoding Y coordinate")

#define RGB_TO_U ( r,
g,
 )     ((int16_t) -44 * r - 87 * g + 131 * b) / 256;

#define RGB_TO_V ( r,
g,
 )     ((int16_t) 131 * r - 110 * g - 21 * b) / 256;

#define RGB_TO_Y ( r,
g,
 )     ((int16_t) 77 * r + 150 * g + 29 * b) / 256;


Typedef Documentation

typedef struct dvbsub_clut_s dvbsub_clut_t

typedef struct dvbsub_display_s dvbsub_display_t

typedef struct dvbsub_objectdef_s dvbsub_objectdef_t

typedef struct dvbsub_region_s dvbsub_region_t

typedef struct dvbsub_regiondef_s dvbsub_regiondef_t


Function Documentation

static void Close ( vlc_object_t  )  [static]

static void CloseEncoder ( vlc_object_t  )  [static]

static subpicture_t * Decode ( decoder_t ,
block_t **   
) [static]

static void decode_clut ( decoder_t ,
bs_t  
) [static]

static void decode_display_definition ( decoder_t ,
bs_t  
) [static]

static void decode_object ( decoder_t ,
bs_t  
) [static]

static void decode_page_composition ( decoder_t ,
bs_t  
) [static]

static void decode_region_composition ( decoder_t ,
bs_t  
) [static]

static void decode_segment ( decoder_t ,
bs_t  
) [static]

static void default_clut_init ( decoder_t  )  [static]

static void dvbsub_pdata2bpp ( bs_t ,
uint8_t *  ,
int  ,
int *   
) [static]

static void dvbsub_pdata4bpp ( bs_t ,
uint8_t *  ,
int  ,
int *   
) [static]

static void dvbsub_pdata8bpp ( bs_t ,
uint8_t *  ,
int  ,
int *   
) [static]

static void dvbsub_render_pdata ( decoder_t ,
dvbsub_region_t ,
int  ,
int  ,
uint8_t *  ,
int   
) [static]

static block_t * Encode ( encoder_t ,
subpicture_t  
) [static]

static void encode_clut ( encoder_t ,
bs_t ,
subpicture_t  
) [static]

static void encode_object ( encoder_t ,
bs_t ,
subpicture_t  
) [static]

static void encode_page_composition ( encoder_t ,
bs_t ,
subpicture_t  
) [static]

static void encode_pixel_data ( encoder_t p_enc,
bs_t s,
subpicture_region_t p_region,
bool  b_top 
) [static]

static void encode_pixel_line_2bp ( bs_t s,
subpicture_region_t p_region,
int  i_line 
) [static]

static void encode_pixel_line_4bp ( bs_t s,
subpicture_region_t p_region,
int  i_line 
) [static]

static void encode_pixel_line_8bp ( bs_t s,
subpicture_region_t p_region,
int  i_line 
) [static]

static void encode_region_composition ( encoder_t ,
bs_t ,
subpicture_t  
) [static]

static void free_all ( decoder_t  )  [static]

static int Open ( vlc_object_t  )  [static]

static int OpenEncoder ( vlc_object_t  )  [static]

static subpicture_t * render ( decoder_t  )  [static]

int vlc_entry__main ( module_t p_module  ) 

const char* vlc_entry_license__main ( void   ) 

static subpicture_t* YuvaYuvp ( subpicture_t p_subpic  )  [static]


Variable Documentation

const int pi_pos_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 } [static]

const char* const ppsz_enc_options[] = { "x", "y", NULL } [static]

const char* const ppsz_pos_descriptions[] [static]

Initial value:

{ N_("Center"), N_("Left"), N_("Right"), N_("Top"), N_("Bottom"),
  N_("Top-Left"), N_("Top-Right"), N_("Bottom-Left"), N_("Bottom-Right") }


Generated on Wed Aug 13 08:03:14 2008 for VLC by  doxygen 1.5.1