xine-lib  1.2.10
sputext_demuxer.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2000-2018 the xine project
3  *
4  * This file is part of xine, a free video player.
5  *
6  * xine is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * xine is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
19  */
20 
21 void *init_sputext_demux_class (xine_t *xine, const void *data);
xine_s
Definition: xine_internal.h:80
vo_overlay_s::color
uint32_t color[256]
Definition: video_out.h:492
buf_element_s::size
int32_t size
Definition: buffer.h:343
xine_stream_s::xine
xine_t * xine
Definition: xine_internal.h:126
window_def_s::id
uint8_t id
Definition: spuhdmv_decoder.c:103
window_def_s
Definition: spuhdmv_decoder.c:102
spuhdmv_decoder_s::windows
window_def_t * windows
Definition: spuhdmv_decoder.c:708
sputext_decoder_s::font_size
int font_size
Definition: sputext_decoder.c:162
BUF_SPU_HDMV
#define BUF_SPU_HDMV
Definition: buffer.h:294
dvbsub_func_t::max_regions
int max_regions
Definition: spudvb_decoder.c:233
SUBTITLE_SIZE_NUM
@ SUBTITLE_SIZE_NUM
Definition: sputext_decoder.c:110
segment_buffer_t::buf
uint8_t * buf
Definition: spuhdmv_decoder.c:217
subtitle_object_s::data_len
uint32_t data_len
Definition: spuhdmv_decoder.c:88
FORMAT_SSA
#define FORMAT_SSA
Definition: sputext_demuxer.c:121
is_cjk_encoding
static int is_cjk_encoding(const char *enc)
Definition: sputext_decoder.c:520
xine_stream_s
Definition: xine_internal.h:123
metronom_clock_s
Definition: metronom.h:199
OSD_TEXT2
#define OSD_TEXT2
Definition: osd.h:282
demux_sputext_t::errs
int errs
Definition: sputext_demuxer.c:90
sputext_decoder_s::osd
osd_object_t * osd
Definition: sputext_decoder.c:168
SUBTITLE_SIZE_NORMAL
@ SUBTITLE_SIZE_NORMAL
Definition: sputext_decoder.c:105
decode_object
static int decode_object(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:737
sparse_array_entry_t::value
uint32_t value
Definition: spudvb_decoder.c:51
composition_object_s::object_id_ref
uint16_t object_id_ref
Definition: spuhdmv_decoder.c:119
PLUGIN_SPU_DECODER
#define PLUGIN_SPU_DECODER
Definition: xine_plugin.h:34
page_t::page_time_out
int page_time_out
Definition: spudvb_decoder.c:198
default_trans
static unsigned char default_trans[256]
Definition: spudvb_decoder.c:270
copy_crop_rle
static rle_elem_t * copy_crop_rle(subtitle_object_t *obj, composition_object_t *cobj)
Definition: spuhdmv_decoder.c:682
xineutils.h
VO_PROP_OUTPUT_WIDTH
#define VO_PROP_OUTPUT_WIDTH
Definition: video_out.h:265
parse_utf8_size
static int parse_utf8_size(const void *buf)
Definition: sputext_decoder.c:308
dvb_spu_decoder_s
Definition: spudvb_decoder.c:244
presentation_segment_s::palette_id_ref
uint8_t palette_id_ref
Definition: spuhdmv_decoder.c:144
demux_sputext_t::uses_time
int uses_time
Definition: sputext_demuxer.c:89
video2wnd_s::x
int x
Definition: sputext_decoder.c:136
demux_sputext_t::stream
xine_stream_t * stream
Definition: sputext_demuxer.c:79
sputext_decoder_s::stream
xine_stream_t * stream
Definition: sputext_decoder.c:146
sputext_class_s::vertical_offset
int vertical_offset
Definition: sputext_decoder.c:119
FORMAT_MPL2
#define FORMAT_MPL2
Definition: sputext_demuxer.c:128
demux_sputext_get_optional_data
static int demux_sputext_get_optional_data(demux_plugin_t *this_gen, void *data, int data_type)
Definition: sputext_demuxer.c:1386
presentation_segment_s::object_number
uint8_t object_number
Definition: spuhdmv_decoder.c:145
PLUGIN_MUST_PRELOAD
#define PLUGIN_MUST_PRELOAD
Definition: xine_plugin.h:46
dvbsub_func_t::page
page_t page
Definition: spudvb_decoder.c:234
composition_object_s::cropped_flag
uint8_t cropped_flag
Definition: spuhdmv_decoder.c:124
demux_sputext_send_headers
static void demux_sputext_send_headers(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1361
lookup_lut
static const uint8_t * lookup_lut(const dvbsub_func_t *dvbsub, int r)
Definition: spudvb_decoder.c:390
demux_sputext_get_status
static int demux_sputext_get_status(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1314
key
char key[16]
Definition: xine_speex_decoder.c:94
XINE_HDMV_TRACE
#define XINE_HDMV_TRACE
Definition: spuhdmv_decoder.c:45
demux_sputext_t::encoding
char * encoding
Definition: sputext_demuxer.c:97
video_overlay_manager_s::free_handle
void(* free_handle)(video_overlay_manager_t *this_gen, int32_t handle)
Definition: video_out.h:525
BUF_FLAG_HEADER
#define BUF_FLAG_HEADER
Definition: buffer.h:375
sub_read_line_rt
static subtitle_t * sub_read_line_rt(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:467
sparse_array_set
static int sparse_array_set(sparse_array_t *sa, uint32_t key, uint32_t value)
Definition: spudvb_decoder.c:134
sub_autodetect
static int sub_autodetect(demux_sputext_t *this)
Definition: sputext_demuxer.c:1004
rgb2yuv
#define rgb2yuv(R, G, B)
Definition: sputext_decoder.c:68
demux_sputext_t::subtitles
subtitle_t * subtitles
Definition: sputext_demuxer.c:91
sub_read_line_subrip09
static subtitle_t * sub_read_line_subrip09(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:934
free_subtitle_object
static void free_subtitle_object(void *ptr)
Definition: spuhdmv_decoder.c:184
xine_cfg_entry_s::str_value
char * str_value
Definition: xine.h:1646
segbuf_decode_composition_descriptor
static int segbuf_decode_composition_descriptor(segment_buffer_t *buf, composition_descriptor_t *descr)
Definition: spuhdmv_decoder.c:601
demux_sputext_t
Definition: sputext_demuxer.c:76
recalculate_trans
static void recalculate_trans(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:617
region_t::objects_start
int objects_start
Definition: spudvb_decoder.c:211
VO_PROP_WINDOW_HEIGHT
#define VO_PROP_WINDOW_HEIGHT
Definition: video_out.h:262
sub_palette
static const uint32_t sub_palette[22]
Definition: sputext_decoder.c:70
OSD_TEXT1
#define OSD_TEXT1
Definition: osd.h:281
LIST_DESTROY
#define LIST_DESTROY(list, FREE_FUNC)
Definition: spuhdmv_decoder.c:177
process_region_composition_segment
static void process_region_composition_segment(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:808
FORMAT_SUBVIEWER
#define FORMAT_SUBVIEWER
Definition: sputext_demuxer.c:117
BUF_SPU_DVB
#define BUF_SPU_DVB
Definition: buffer.h:289
sputext_decoder_s::ogm
int ogm
Definition: sputext_decoder.c:148
decode_palette
static int decode_palette(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:725
sputext_class_s::use_unscaled
int use_unscaled
Definition: sputext_decoder.c:126
sub_read_file
static subtitle_t * sub_read_file(demux_sputext_t *this)
Definition: sputext_demuxer.c:1148
dvb_spu_decoder_s::pes_pkt_size
unsigned int pes_pkt_size
Definition: spudvb_decoder.c:257
XINE_STREAM_INFO_HAS_VIDEO
#define XINE_STREAM_INFO_HAS_VIDEO
Definition: xine.h:1023
segbuf_skip_segment
static void segbuf_skip_segment(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:290
xine_fast_memcpy
void *(* xine_fast_memcpy)(void *to, const void *from, size_t len)
Definition: memcpy.c:60
clut_union_t::c
clut_t c
Definition: spudvb_decoder.c:218
page_t
Definition: spudvb_decoder.c:197
dvbsub_func_t::i
int i
Definition: spudvb_decoder.c:229
FORMAT_SUBRIP
#define FORMAT_SUBRIP
Definition: sputext_demuxer.c:116
init_spu_decoder_plugin
static void * init_spu_decoder_plugin(xine_t *xine, const void *data)
Definition: sputext_decoder.c:1125
video_overlay.h
segment_buffer_t::len
size_t len
Definition: spuhdmv_decoder.c:218
FORMAT_MICRODVD
#define FORMAT_MICRODVD
Definition: sputext_demuxer.c:115
extra_info_s::input_time
int input_time
Definition: buffer.h:322
segment_buffer_t::segment_end
uint8_t * segment_end
Definition: spuhdmv_decoder.c:213
buf_element_s::decoder_info
uint32_t decoder_info[5]
Definition: buffer.h:353
DEMUX_OK
#define DEMUX_OK
Definition: demux.h:33
demux_sputext_send_chunk
static int demux_sputext_send_chunk(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1329
config_values_s::register_filename
char *(* register_filename)(config_values_t *self, const char *key, const char *def_value, int req_type, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:115
subtitle_size
subtitle_size
Definition: sputext_decoder.c:102
VO_PROP_OUTPUT_HEIGHT
#define VO_PROP_OUTPUT_HEIGHT
Definition: video_out.h:266
decode_2bit_pixel_code_string
static void decode_2bit_pixel_code_string(dvb_spu_decoder_t *this, int r, int object_id, int ofs, int n)
Definition: spudvb_decoder.c:429
spuhdmv_decoder_s::overlay_handles
int overlay_handles[MAX_OBJECTS]
Definition: spuhdmv_decoder.c:711
dvbsub_func_t::x
int x
Definition: spudvb_decoder.c:224
sputext_class_s::font
char font[100]
Definition: sputext_decoder.c:120
dvbsub_func_t::trans
unsigned char trans[16 *256]
Definition: spudvb_decoder.c:237
FORMAT_JACOBSUB
#define FORMAT_JACOBSUB
Definition: sputext_demuxer.c:125
sputext_decoder_s::line_height
int line_height
Definition: sputext_decoder.c:163
BUF_CONTROL_SPU_CHANNEL
#define BUF_CONTROL_SPU_CHANNEL
Definition: buffer.h:75
_sparse_array_sort
static void _sparse_array_sort(sparse_array_t *sa)
Definition: spudvb_decoder.c:94
METRONOM_VPTS_OFFSET
#define METRONOM_VPTS_OFFSET
Definition: metronom.h:176
SUBTITLE_SIZE_LARGE
@ SUBTITLE_SIZE_LARGE
Definition: sputext_decoder.c:106
_x_demux_control_start
void _x_demux_control_start(xine_stream_t *s)
Definition: demux.c:256
metronom_s::got_spu_packet
int64_t(* got_spu_packet)(metronom_t *self, int64_t pts)
Definition: metronom.h:121
dvbsub_func_t::lut
struct dvbsub_func_t::@46 lut[16]
segbuf_decode_object
static subtitle_object_t * segbuf_decode_object(segment_buffer_t *buf, subtitle_object_t *objects)
Definition: spuhdmv_decoder.c:456
config_values_s::register_enum
int(* register_enum)(config_values_t *self, const char *key, int def_value, char **values, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:135
spuhdmv_decoder_s::pts
int64_t pts
Definition: spuhdmv_decoder.c:713
xine_spu_opacity_s
Definition: spu.h:30
sputext_decoder_s::lines
int lines
Definition: sputext_decoder.c:149
hide_overlays
static void hide_overlays(spuhdmv_decoder_t *this, int64_t pts)
Definition: spuhdmv_decoder.c:883
osd.h
close_osd
static void close_osd(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:987
BUF_SPECIAL_CHARSET_ENCODING
#define BUF_SPECIAL_CHARSET_ENCODING
Definition: buffer.h:524
spuhdmv_decoder_s::spu_decoder
spu_decoder_t spu_decoder
Definition: spuhdmv_decoder.c:700
region_t::osd
osd_object_t * osd
Definition: spudvb_decoder.c:214
presentation_segment_s::shown
int shown
Definition: spuhdmv_decoder.c:152
presentation_segment_s::comp_objs
composition_object_t * comp_objs
Definition: spuhdmv_decoder.c:147
dvb_spu_decoder_s::pes_pkt_wrptr
char * pes_pkt_wrptr
Definition: spudvb_decoder.c:256
sputext_decoder_s::last_y
int last_y
Definition: sputext_decoder.c:177
subtitle_clut_s::id
uint8_t id
Definition: spuhdmv_decoder.c:65
subtitle_t::lines
int lines
Definition: sputext_demuxer.c:66
sputext_decoder_s::buf_encoding
const char * buf_encoding
Definition: sputext_decoder.c:158
LOG_MODULE
#define LOG_MODULE
Definition: spudvb_decoder.c:37
composition_object_s::crop_width
uint16_t crop_width
Definition: spuhdmv_decoder.c:126
spudec_decode_data
static void spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *buf)
Definition: sputext_decoder.c:801
sputext_demuxer.h
VO_PROP_DISCARD_FRAMES
#define VO_PROP_DISCARD_FRAMES
Definition: video_out.h:260
unlock_mutex_cancellation_func
static void unlock_mutex_cancellation_func(void *mutex_gen)
Definition: spudvb_decoder.c:945
demux_sputext_t::demux_plugin
demux_plugin_t demux_plugin
Definition: sputext_demuxer.c:78
spudec_info
static const decoder_info_t spudec_info
Definition: spudvb_decoder.c:1380
spuhdmv_decoder_t
struct spuhdmv_decoder_s spuhdmv_decoder_t
page_t::regions
visible_region_t regions[16]
Definition: spudvb_decoder.c:202
MAX_OBJECTS
#define MAX_OBJECTS
Definition: video_overlay.h:34
read_ssa_tag
static void read_ssa_tag(sputext_decoder_t *this, const char *text, int *alignment, int *sub_x, int *sub_y, int *max_width)
Definition: sputext_decoder.c:443
window_def_s::xpos
uint16_t xpos
Definition: spuhdmv_decoder.c:104
composition_descriptor_s
Definition: spuhdmv_decoder.c:134
spu_decoder_s
Definition: spu_decoder.h:74
video_overlay_manager_s::get_handle
int32_t(* get_handle)(video_overlay_manager_t *this_gen, int object_type)
Definition: video_out.h:523
demux_sputext_seek
static int demux_sputext_seek(demux_plugin_t *this_gen, off_t start_pos, int start_time, int playing)
Definition: sputext_demuxer.c:1339
sub_trans
static const uint8_t sub_trans[22]
Definition: sputext_decoder.c:97
segbuf_reset
static void segbuf_reset(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:238
VO_PROP_OUTPUT_YOFFSET
#define VO_PROP_OUTPUT_YOFFSET
Definition: video_out.h:268
config_values_s::register_string
char *(* register_string)(config_values_t *self, const char *key, const char *def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:106
sputext_decoder_s::renderer
osd_renderer_t * renderer
Definition: sputext_decoder.c:167
update_use_unscaled
static void update_use_unscaled(void *class_gen, xine_cfg_entry_t *entry)
Definition: sputext_decoder.c:1074
extra_info_s::vpts
int64_t vpts
Definition: buffer.h:327
sub_read_line_mpsub
static subtitle_t * sub_read_line_mpsub(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:625
dvbsub_func_t::colours
clut_union_t colours[16 *256]
Definition: spudvb_decoder.c:236
vo_overlay_s::hili_bottom
int hili_bottom
Definition: video_out.h:498
sputext_decoder_t
struct sputext_decoder_s sputext_decoder_t
demux_sputext_class_s::max_timeout
int max_timeout
Definition: sputext_demuxer.c:106
osd_object_s
Definition: osd.h:37
sputext_decoder_s::vertical_offset
int vertical_offset
Definition: sputext_decoder.c:156
lprintf
#define lprintf(...)
Definition: xineutils.h:620
composition_object_s::shown
int shown
Definition: spuhdmv_decoder.c:130
set_clut
static void set_clut(dvb_spu_decoder_t *this, int CLUT_id, int CLUT_entry_id, int Y_value, int Cr_value, int Cb_value, int T_value)
Definition: spudvb_decoder.c:636
vo_overlay_s::hili_top
int hili_top
Definition: video_out.h:497
config_values_s::register_num
int(* register_num)(config_values_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:145
segment_buffer_t::segment_data
uint8_t * segment_data
Definition: spuhdmv_decoder.c:212
dvbsub_func_t::curr_obj
unsigned int curr_obj
Definition: spudvb_decoder.c:226
sub_read_line_subrip
static subtitle_t * sub_read_line_subrip(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:345
video2wnd_s::y
int y
Definition: sputext_decoder.c:137
SEGTYPE_WINDOW_DEFINITION
@ SEGTYPE_WINDOW_DEFINITION
Definition: spuhdmv_decoder.c:55
vo_overlay_s
Definition: video_out.h:472
draw_subtitle
static void draw_subtitle(sputext_decoder_t *this, int64_t sub_start, int64_t sub_end)
Definition: sputext_decoder.c:559
extra_info_s::input_normpos
int input_normpos
Definition: buffer.h:319
subtitle_size
subtitle_size
Definition: cmml_decoder.c:39
visible_region_t
Definition: spudvb_decoder.c:192
SPU_PROJECTION_X
#define SPU_PROJECTION_X
Definition: sputext_decoder.c:63
dvb_spu_decoder_s::dvbsub_hide_timeout
struct timespec dvbsub_hide_timeout
Definition: spudvb_decoder.c:263
dvbsub_func_t::lut28
unsigned char lut28[4]
Definition: spudvb_decoder.c:239
demux_sputext_get_capabilities
static uint32_t demux_sputext_get_capabilities(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1381
vo_overlay_s::rgb_clut
int rgb_clut
Definition: video_out.h:494
EXPORTED
const plugin_info_t xine_plugin_info[] EXPORTED
Definition: spuhdmv_decoder.c:1112
SEGTYPE_PALETTE
@ SEGTYPE_PALETTE
Definition: spuhdmv_decoder.c:52
reset_clut
static void reset_clut(dvbsub_func_t *dvbsub)
Definition: spudvb_decoder.c:273
demux_sputext_t::num
int num
Definition: sputext_demuxer.c:92
subtitle_object_s::data_size
size_t data_size
Definition: spuhdmv_decoder.c:85
detect_utf8
static int detect_utf8(subtitle_t *subs, int num_subs)
Definition: sputext_demuxer.c:1110
process_page_composition_segment
static void process_page_composition_segment(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:758
FONTNAME_SIZE
#define FONTNAME_SIZE
Definition: sputext_decoder.c:113
sub_read_line_subviewer
static subtitle_t * sub_read_line_subviewer(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:309
sputext_decoder_s::subtitle_size
subtitle_size subtitle_size
Definition: sputext_decoder.c:155
subtitle_object_s::id
uint16_t id
Definition: spuhdmv_decoder.c:78
composition_object_s::crop_horiz_pos
uint16_t crop_horiz_pos
Definition: spuhdmv_decoder.c:125
spudec_discontinuity
static void spudec_discontinuity(spu_decoder_t *this_gen)
Definition: spudvb_decoder.c:1231
EXPORTED
const plugin_info_t xine_plugin_info[] EXPORTED
Definition: spudvb_decoder.c:1385
presentation_segment_s
Definition: spuhdmv_decoder.c:140
composition_object_s::xpos
uint16_t xpos
Definition: spuhdmv_decoder.c:121
composition_descriptor_s::state
uint8_t state
Definition: spuhdmv_decoder.c:136
xine_usec_sleep
void xine_usec_sleep(unsigned usec)
Definition: utils.c:546
init_plugin
static void * init_plugin(xine_t *xine, const void *data)
Definition: spuhdmv_decoder.c:1090
update_region
static void update_region(dvb_spu_decoder_t *this, int region_id, int region_width, int region_height, int fill, int fill_color)
Definition: spudvb_decoder.c:328
METHOD_EXPLICIT
#define METHOD_EXPLICIT
Definition: demux.h:41
ogm_get_width
static int ogm_get_width(sputext_decoder_t *this, char *text)
Definition: sputext_decoder.c:431
SUBTITLE_SIZE_SMALL
@ SUBTITLE_SIZE_SMALL
Definition: sputext_decoder.c:104
OVERLAY_EVENT_HIDE
#define OVERLAY_EVENT_HIDE
Definition: video_overlay.h:40
dvbsub_func_t::y
int y
Definition: spudvb_decoder.c:225
page_t::page_state
int page_state
Definition: spudvb_decoder.c:200
subtitle_object_s::xpos
uint16_t xpos
Definition: spuhdmv_decoder.c:79
subtitle_object_s
Definition: spuhdmv_decoder.c:77
video_out.h
FORMAT_SUBVIEWER2
#define FORMAT_SUBVIEWER2
Definition: sputext_demuxer.c:126
sputext_decoder_s::height
int height
Definition: sputext_decoder.c:161
DEMUX_CAP_NOCAP
#define DEMUX_CAP_NOCAP
Definition: demux.h:189
OVL_PALETTE_SIZE
#define OVL_PALETTE_SIZE
Definition: video_out.h:280
subtitle_t::start
long start
Definition: sputext_demuxer.c:68
sub_read_line_aqt
static subtitle_t * sub_read_line_aqt(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:672
supported_types
static const uint32_t supported_types[]
Definition: spudvb_decoder.c:1378
buf_element_s::pts
int64_t pts
Definition: buffer.h:345
xine_stream_s::content_detection_method
int content_detection_method
Definition: xine_internal.h:168
window_def_s::height
uint16_t height
Definition: spuhdmv_decoder.c:105
video2wnd_s::dy
double dy
Definition: sputext_decoder.c:139
clut_s::y
uint8_t y
Definition: alphablend.h:47
DEMUX_OPTIONAL_SUCCESS
#define DEMUX_OPTIONAL_SUCCESS
Definition: demux.h:237
dvb_spu_decoder_s::spu_decoder
spu_decoder_t spu_decoder
Definition: spudvb_decoder.c:245
sub_read_line_microdvd
static subtitle_t * sub_read_line_microdvd(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:276
SPU_PROJECTION_Y
#define SPU_PROJECTION_Y
Definition: sputext_decoder.c:64
LINE_LEN_QUOT
#define LINE_LEN_QUOT
Definition: sputext_demuxer.c:58
subtitle_object_s::raw_data
uint8_t * raw_data
Definition: spuhdmv_decoder.c:89
METRONOM_SPU_OFFSET
#define METRONOM_SPU_OFFSET
Definition: metronom.h:175
subtitle_object_s::next
subtitle_object_t * next
Definition: spuhdmv_decoder.c:93
LINE_LEN
#define LINE_LEN
Definition: sputext_demuxer.c:57
vo_overlay_s::hili_right
int hili_right
Definition: video_out.h:500
ERR
#define ERR
Definition: sputext_demuxer.c:54
read_line_from_input
static char * read_line_from_input(demux_sputext_t *this, char *line, off_t len)
Definition: sputext_demuxer.c:150
DEMUX_OPTIONAL_UNSUPPORTED
#define DEMUX_OPTIONAL_UNSUPPORTED
Definition: demux.h:236
NULL
NULL
Definition: xine_plugin.c:78
downscale_region_image
static void downscale_region_image(region_t *reg, unsigned char *dest, int dest_width)
Definition: spudvb_decoder.c:1004
segbuf_decode_palette
static subtitle_clut_t * segbuf_decode_palette(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:341
SPU_MAX_HEIGHT
#define SPU_MAX_HEIGHT
Definition: spudvb_decoder.c:46
clut_s::foo
uint8_t foo
Definition: alphablend.h:48
update_src_encoding
static void update_src_encoding(void *class_gen, xine_cfg_entry_t *entry)
Definition: sputext_decoder.c:1117
draw_subtitles
static void draw_subtitles(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:1015
MAX_REGIONS
#define MAX_REGIONS
Definition: spudvb_decoder.c:43
segbuf_get_u16
static uint16_t segbuf_get_u16(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:327
sputext_decoder_s::width
int width
Definition: sputext_decoder.c:160
XINE_VERBOSITY_LOG
#define XINE_VERBOSITY_LOG
Definition: xine.h:425
video2wnd_t
struct video2wnd_s video2wnd_t
SPU_MAX_WIDTH
#define SPU_MAX_WIDTH
Definition: spudvb_decoder.c:45
_x_assert
#define _x_assert(exp)
Definition: xineutils.h:550
sparse_array_t::sorted_entries
uint32_t sorted_entries
Definition: spudvb_decoder.c:55
dvbsub_func_t::lut48
unsigned char lut48[16]
Definition: spudvb_decoder.c:239
get_font
static char * get_font(sputext_class_t *class)
Definition: sputext_decoder.c:182
dvbsub_func_t::regions
region_t regions[16]
Definition: spudvb_decoder.c:235
sputext_class_t
struct sputext_class_s sputext_class_t
subtitle_clut_s::color
uint32_t color[256]
Definition: spuhdmv_decoder.c:66
sputext_decoder_s::started
int started
Definition: sputext_decoder.c:164
sparse_array_get
static int sparse_array_get(sparse_array_t *sa, uint32_t key, uint32_t *value)
Definition: spudvb_decoder.c:149
sputext_decoder_s::last_subtitle_end
int64_t last_subtitle_end
Definition: sputext_decoder.c:174
init_spu_decoder_plugin
static void * init_spu_decoder_plugin(xine_t *xine, const void *data)
Definition: spudvb_decoder.c:1363
_x_freep
static void _x_freep(void *ptr)
Definition: xineutils.h:263
spudec_decode_data
static void spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *buf)
Definition: spuhdmv_decoder.c:999
rle_elem_t
struct rle_elem_s rle_elem_t
metronom_s::get_option
int64_t(* get_option)(metronom_t *self, int option)
Definition: metronom.h:154
dvb_spu_decoder_s::dvbsub
dvbsub_func_t * dvbsub
Definition: spudvb_decoder.c:265
segbuf_decode_composition_object
static composition_object_t * segbuf_decode_composition_object(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:610
video2wnd_s::dx
double dx
Definition: sputext_decoder.c:138
INPUT_CAP_SEEKABLE
#define INPUT_CAP_SEEKABLE
Definition: input_plugin.h:250
spudec_decode_data
static void spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *buf)
Definition: spudvb_decoder.c:1087
clut_union_t::u32
uint32_t u32
Definition: spudvb_decoder.c:219
update_osd
static void update_osd(dvb_spu_decoder_t *this, int region_id)
Definition: spudvb_decoder.c:300
SUBTITLE_SIZE_TINY
@ SUBTITLE_SIZE_TINY
Definition: sputext_decoder.c:103
subtitle_object_s::shown
int shown
Definition: spuhdmv_decoder.c:95
GET_Y_ALIGNMENT
#define GET_Y_ALIGNMENT(a)
Definition: sputext_decoder.c:56
decoder_info_t
Definition: xine_plugin.h:77
xine_s::config
config_values_t * config
Definition: xine_internal.h:82
demux_sputext_t::mpsub_position
float mpsub_position
Definition: sputext_demuxer.c:87
subtitle_object_s::rle
rle_elem_t * rle
Definition: spuhdmv_decoder.c:83
segbuf_dispose
static void segbuf_dispose(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:232
BUF_SPU_OGM
#define BUF_SPU_OGM
Definition: buffer.h:292
init_sputext_demux_class
void * init_sputext_demux_class(xine_t *xine, const void *data)
Definition: sputext_demuxer.c:1496
decode_8bit_pixel_code_string
static void decode_8bit_pixel_code_string(dvb_spu_decoder_t *this, int r, int object_id, int ofs, int n)
Definition: spudvb_decoder.c:572
update_vertical_offset
static void update_vertical_offset(void *class_gen, xine_cfg_entry_t *entry)
Definition: sputext_decoder.c:1029
segbuf_parse_segment_header
static void segbuf_parse_segment_header(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:251
spuhdmv_decoder_s::buf
segment_buffer_t * buf
Definition: spuhdmv_decoder.c:704
FORMAT_SUBRIP09
#define FORMAT_SUBRIP09
Definition: sputext_demuxer.c:127
width
unsigned int width
Definition: gfontrle.c:4
video_overlay_event_s::vpts
int64_t vpts
Definition: video_overlay.h:55
_x_stream_info_set
void _x_stream_info_set(xine_stream_t *s, int info, int value)
Definition: info_helper.c:79
SUB_BUFSIZE
#define SUB_BUFSIZE
Definition: sputext_demuxer.c:56
XINE_VERSION_CODE
#define XINE_VERSION_CODE
Definition: xine_internal.h:57
sputext_demux_class_dispose
static void sputext_demux_class_dispose(demux_class_t *this_gen)
Definition: sputext_demuxer.c:1487
demux_sputext_class_s::xine
xine_t * xine
Definition: sputext_demuxer.c:105
update_subtitle_size
static void update_subtitle_size(void *class_gen, xine_cfg_entry_t *entry)
Definition: sputext_decoder.c:1067
BUF_SPECIAL_SPU_DVB_DESCRIPTOR
#define BUF_SPECIAL_SPU_DVB_DESCRIPTOR
Definition: buffer.h:553
sparse_array_entry_t
Definition: spudvb_decoder.c:50
sparse_array_delete
static void sparse_array_delete(sparse_array_t *sa)
Definition: spudvb_decoder.c:66
sparse_array_t
Definition: spudvb_decoder.c:54
_
#define _(String)
Definition: vcdplayer.h:39
SEGTYPE_PRESENTATION_SEGMENT
@ SEGTYPE_PRESENTATION_SEGMENT
Definition: spuhdmv_decoder.c:54
subtitle_t::text
char * text[5]
Definition: sputext_demuxer.c:71
sputext_decoder_s::current_osd_text
int current_osd_text
Definition: sputext_decoder.c:169
input_plugin_s
Definition: input_plugin.h:90
VO_CAP_UNSCALED_OVERLAY
#define VO_CAP_UNSCALED_OVERLAY
Definition: video_out.h:311
spu_dvb_descriptor_s
Definition: buffer.h:567
demux_sputext_class_s
Definition: sputext_demuxer.c:101
BUF_FLAG_SPECIAL
#define BUF_FLAG_SPECIAL
Definition: buffer.h:395
video_overlay_event_s
Definition: video_overlay.h:54
eSegmentType
enum @47 eSegmentType
do_plot
static void do_plot(dvb_spu_decoder_t *this, int r, int x, int y, unsigned char pixel)
Definition: spudvb_decoder.c:364
dvb_spu_decoder_t
struct dvb_spu_decoder_s dvb_spu_decoder_t
visible_region_t::y
int y
Definition: spudvb_decoder.c:193
xine_guess_spu_encoding
const char * xine_guess_spu_encoding(void)
Definition: utils.c:694
subtitle_object_s::raw_data_len
size_t raw_data_len
Definition: spuhdmv_decoder.c:90
demux_sputext_t::status
int status
Definition: sputext_demuxer.c:82
segbuf_fill
static void segbuf_fill(segment_buffer_t *buf, uint8_t *data, size_t len)
Definition: spuhdmv_decoder.c:272
vo_overlay_s::rle
rle_elem_t * rle
Definition: video_out.h:474
spudec_dispose_internal
static void spudec_dispose_internal(dvb_spu_decoder_t *this, int thread_running)
Definition: spudvb_decoder.c:1237
spudec_dispose
static void spudec_dispose(spu_decoder_t *this_gen)
Definition: spudvb_decoder.c:1266
subtitle_t
Definition: sputext_demuxer.c:64
demux_sputext_t::input
input_plugin_t * input
Definition: sputext_demuxer.c:80
segment_buffer_t
Definition: spuhdmv_decoder.c:208
clut_union_t
Definition: spudvb_decoder.c:217
PLUGIN_DEMUX
#define PLUGIN_DEMUX
Definition: xine_plugin.h:31
decoder_info_t::supported_types
const uint32_t * supported_types
Definition: xine_plugin.h:78
vo_overlay_s::unscaled
int unscaled
Definition: video_out.h:505
presentation_segment_s::next
presentation_segment_t * next
Definition: spuhdmv_decoder.c:149
vo_overlay_s::num_rle
int num_rle
Definition: video_out.h:476
subtitle_object_s::ypos
uint16_t ypos
Definition: spuhdmv_decoder.c:79
sub_read_line_sami
static subtitle_t * sub_read_line_sami(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:185
dvb_spu_decoder_s::show
int show
Definition: spudvb_decoder.c:266
sub_read_line_vplayer
static subtitle_t * sub_read_line_vplayer(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:412
sparse_array_t::entries
sparse_array_entry_t * entries
Definition: spudvb_decoder.c:56
FORMAT_VPLAYER
#define FORMAT_VPLAYER
Definition: sputext_demuxer.c:119
demux_sputext_t::cur
int cur
Definition: sputext_demuxer.c:93
sparse_array_t::used_entries
uint32_t used_entries
Definition: spudvb_decoder.c:55
segbuf_segment_complete
static int segbuf_segment_complete(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:285
presentation_segment_s::pts
int64_t pts
Definition: spuhdmv_decoder.c:151
sputext_decoder_s::finished
int finished
Definition: sputext_decoder.c:165
spuhdmv_decoder_s
Definition: spuhdmv_decoder.c:699
SEGTYPE_OBJECT
@ SEGTYPE_OBJECT
Definition: spuhdmv_decoder.c:53
sputext_decoder_s::video2wnd
video2wnd_t video2wnd
Definition: sputext_decoder.c:179
spu_decoder_s::dispose
void(* dispose)(spu_decoder_t *this_gen)
Definition: spu_decoder.h:96
FORMAT_RT
#define FORMAT_RT
Definition: sputext_demuxer.c:120
segment_buffer_t::segment_type
uint8_t segment_type
Definition: spuhdmv_decoder.c:211
open_demux_plugin
static demux_plugin_t * open_demux_plugin(demux_class_t *class_gen, xine_stream_t *stream, input_plugin_t *input_gen)
Definition: sputext_demuxer.c:1404
metronom_clock_s::get_current_time
int64_t(* get_current_time)(metronom_clock_t *self)
Definition: metronom.h:239
spu_decoder_class_s
Definition: spu_decoder.h:42
subtitle_clut_s
Definition: spuhdmv_decoder.c:64
segbuf_decode_video_descriptor
static int segbuf_decode_video_descriptor(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:587
_x_get_current_info
void _x_get_current_info(xine_stream_t *s, extra_info_t *extra_info, int size)
Definition: xine.c:2806
sputext_class_s::src_encoding
const char * src_encoding
Definition: sputext_decoder.c:125
osd_renderer_s
Definition: osd.h:82
ALIGN_TOP
#define ALIGN_TOP
Definition: sputext_decoder.c:53
presentation_segment_s::palette_update_flag
uint8_t palette_update_flag
Definition: spuhdmv_decoder.c:143
SUBTITLE_SIZE_VERY_LARGE
@ SUBTITLE_SIZE_VERY_LARGE
Definition: sputext_decoder.c:107
buf_element_s
Definition: buffer.h:337
ALIGN_MIDDLE
#define ALIGN_MIDDLE
Definition: sputext_decoder.c:54
spudec_reset
static void spudec_reset(spu_decoder_t *this_gen)
Definition: sputext_decoder.c:1005
sputext_class_s::xine
xine_t * xine
Definition: sputext_decoder.c:128
composition_object_s::next
composition_object_t * next
Definition: spuhdmv_decoder.c:128
sputext_class_dispose
static void sputext_class_dispose(spu_decoder_class_t *class_gen)
Definition: sputext_decoder.c:1103
process_pixel_data_sub_block
static void process_pixel_data_sub_block(dvb_spu_decoder_t *this, int r, int o, unsigned int pos, int ofs, int n)
Definition: spudvb_decoder.c:703
segbuf_decode_presentation_segment
static presentation_segment_t * segbuf_decode_presentation_segment(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:647
demux_plugin_s
Definition: demux.h:96
page_t::page_id
int page_id
Definition: spudvb_decoder.c:201
FORMAT_PJS
#define FORMAT_PJS
Definition: sputext_demuxer.c:122
XINE_VERBOSITY_DEBUG
#define XINE_VERBOSITY_DEBUG
Definition: xine.h:426
decode_window_definition
static int decode_window_definition(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:749
spudec_info
static const decoder_info_t spudec_info
Definition: sputext_decoder.c:1213
vo_overlay_s::width
int width
Definition: video_out.h:479
dvbsub_timer_func
static void * dvbsub_timer_func(void *this_gen)
Definition: spudvb_decoder.c:964
buffer.h
segbuf_segment_type
static uint8_t segbuf_segment_type(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:307
dvbsub_func_t::buf
uint8_t * buf
Definition: spudvb_decoder.c:228
DEMUX_FINISHED
#define DEMUX_FINISHED
Definition: demux.h:34
FORMAT_SAMI
#define FORMAT_SAMI
Definition: sputext_demuxer.c:118
region_t
Definition: spudvb_decoder.c:205
dvbsub_func_t::compat_depth
int compat_depth
Definition: spudvb_decoder.c:232
sub_read_line_subviewer2
static subtitle_t * sub_read_line_subviewer2(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:903
dvbsub_func_t::i_bits
int i_bits
Definition: spudvb_decoder.c:230
sputext_class_s::class
spu_decoder_class_t class
Definition: sputext_decoder.c:116
BUF_SPU_TEXT
#define BUF_SPU_TEXT
Definition: buffer.h:287
window_def_s::ypos
uint16_t ypos
Definition: spuhdmv_decoder.c:104
plot
static void plot(dvb_spu_decoder_t *this, int r, int run_length, unsigned char pixel)
Definition: spudvb_decoder.c:377
_x_spu_get_opacity
void _x_spu_get_opacity(xine_t *this, xine_spu_opacity_t *opacity)
Definition: spu.c:48
spudec_reset
static void spudec_reset(spu_decoder_t *this_gen)
Definition: spuhdmv_decoder.c:1030
FORMAT_AQTITLE
#define FORMAT_AQTITLE
Definition: sputext_demuxer.c:124
region_t::height
int height
Definition: spudvb_decoder.c:207
spu.h
segment_buffer_t::error
uint8_t error
Definition: spuhdmv_decoder.c:214
VO_CAP_CUSTOM_EXTENT_OVERLAY
#define VO_CAP_CUSTOM_EXTENT_OVERLAY
Definition: video_out.h:329
region_t::CLUT_id
int CLUT_id
Definition: spudvb_decoder.c:210
composition_object_s::forced_flag
uint8_t forced_flag
Definition: spuhdmv_decoder.c:123
XINE_CONFIG_STRING_IS_FILENAME
#define XINE_CONFIG_STRING_IS_FILENAME
Definition: xine.h:1624
video_overlay_manager_s::add_event
int32_t(* add_event)(video_overlay_manager_t *this_gen, void *event)
Definition: video_out.h:527
osd_object_s::width
int width
Definition: osd.h:41
decode_4bit_pixel_code_string
static void decode_4bit_pixel_code_string(dvb_spu_decoder_t *this, int r, int object_id, int ofs, int n)
Definition: spudvb_decoder.c:498
sparse_array_unset
static void sparse_array_unset(sparse_array_t *sa, uint32_t key, uint32_t mask)
Definition: spudvb_decoder.c:159
XINE_STREAM_INFO_HAS_AUDIO
#define XINE_STREAM_INFO_HAS_AUDIO
Definition: xine.h:1024
subtitle_clut_s::trans
uint8_t trans[256]
Definition: spuhdmv_decoder.c:67
video_overlay_manager_s
Definition: video_out.h:518
extra_info_s::frame_number
uint32_t frame_number
Definition: buffer.h:324
default_colours_init
static int default_colours_init
Definition: spudvb_decoder.c:271
height
unsigned int height
Definition: gfontrle.c:5
XINE_STATUS_PLAY
#define XINE_STATUS_PLAY
Definition: xine.h:950
xine_cfg_entry_s
Definition: xine.h:1632
xine_cfg_entry_s::num_value
int num_value
Definition: xine.h:1653
LOG_MODULE
#define LOG_MODULE
Definition: spuhdmv_decoder.c:34
_sparse_array_find
static int _sparse_array_find(sparse_array_t *sa, uint32_t key, uint32_t *pos)
Definition: spudvb_decoder.c:73
vo_overlay_s::hili_left
int hili_left
Definition: video_out.h:499
vo_overlay_s::trans
uint8_t trans[256]
Definition: video_out.h:493
composition_object_s
Definition: spuhdmv_decoder.c:117
composition_descriptor_s::number
uint16_t number
Definition: spuhdmv_decoder.c:135
init_sputext_demux_class
void * init_sputext_demux_class(xine_t *xine, const void *data)
Definition: sputext_demuxer.c:1496
EXPORTED
const plugin_info_t xine_plugin_info[] EXPORTED
Definition: sputext_decoder.c:1218
SUBTITLE_SIZE_HUGE
@ SUBTITLE_SIZE_HUGE
Definition: sputext_decoder.c:108
region_t::empty
int empty
Definition: spudvb_decoder.c:208
region_t::width
int width
Definition: spudvb_decoder.c:207
ALIGN_BOTTOM
#define ALIGN_BOTTOM
Definition: sputext_decoder.c:52
spuhdmv_decoder_s::segments
presentation_segment_t * segments
Definition: spuhdmv_decoder.c:709
window_def_s::next
window_def_t * next
Definition: spuhdmv_decoder.c:107
demux_sputext_class_t
struct demux_sputext_class_s demux_sputext_class_t
YUVA
#define YUVA(r, g, b, a)
subtitle_object_s::num_rle
unsigned int num_rle
Definition: spuhdmv_decoder.c:84
demux_class_s
Definition: demux.h:46
dvb_spu_decoder_s::stream
xine_stream_t * stream
Definition: spudvb_decoder.c:247
demux.h
sparse_array_new
static void sparse_array_new(sparse_array_t *sa)
Definition: spudvb_decoder.c:59
process_display_definition_segment
static void process_display_definition_segment(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:939
composition_object_s::crop_height
uint16_t crop_height
Definition: spuhdmv_decoder.c:126
ogm_render_line
static void ogm_render_line(sputext_decoder_t *this, int x, int y, char *text)
Definition: sputext_decoder.c:435
sub_read_line_pjs
static subtitle_t * sub_read_line_pjs(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:587
spudec_dispose
static void spudec_dispose(spu_decoder_t *this_gen)
Definition: sputext_decoder.c:1019
dvb_spu_decoder_s::dvbsub_restart_timeout
pthread_cond_t dvbsub_restart_timeout
Definition: spudvb_decoder.c:264
sputext_decoder_s::img_duration
int64_t img_duration
Definition: sputext_decoder.c:173
sputext_decoder_s::spu_trans
uint8_t spu_trans[OVL_PALETTE_SIZE]
Definition: sputext_decoder.c:171
buf_element_s::decoder_info_ptr
void * decoder_info_ptr[5]
Definition: buffer.h:355
_x_spu_calculate_opacity
int _x_spu_calculate_opacity(const clut_t *clut, uint8_t trans, const xine_spu_opacity_t *opacity)
Definition: spu.c:58
metronom_s
Definition: metronom.h:71
VO_PROP_WINDOW_WIDTH
#define VO_PROP_WINDOW_WIDTH
Definition: video_out.h:261
SUB_MAX_TEXT
#define SUB_MAX_TEXT
Definition: sputext_decoder.c:45
segbuf_data_length
static size_t segbuf_data_length(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:312
segbuf_decode_rle
static int segbuf_decode_rle(segment_buffer_t *buf, subtitle_object_t *obj)
Definition: spuhdmv_decoder.c:392
sub_read_line_ssa
static subtitle_t * sub_read_line_ssa(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:517
sputext_decoder_s::text
char text[5][256]
Definition: sputext_decoder.c:150
composition_object_s::crop_vert_pos
uint16_t crop_vert_pos
Definition: spuhdmv_decoder.c:125
xine_get_status
int xine_get_status(xine_stream_t *s)
Definition: xine.c:2817
sputext_decoder_s::spu_decoder
spu_decoder_t spu_decoder
Definition: sputext_decoder.c:143
composition_object_s::ypos
uint16_t ypos
Definition: spuhdmv_decoder.c:121
buf_element_s::content
unsigned char * content
Definition: buffer.h:341
vo_overlay_s::x
int x
Definition: video_out.h:477
region_t::version_number
int version_number
Definition: spudvb_decoder.c:206
subtitle_clut_s::next
subtitle_clut_t * next
Definition: spuhdmv_decoder.c:68
sputext_decoder_s::unscaled
int unscaled
Definition: sputext_decoder.c:175
dvb_spu_decoder_s::vpts
int64_t vpts
Definition: spudvb_decoder.c:259
_x_demux_control_newpts
void _x_demux_control_newpts(xine_stream_t *s, int64_t pts, uint32_t flags)
Definition: demux.c:126
visible_region_t::x
int x
Definition: spudvb_decoder.c:193
ogm_render_line_internal
static int ogm_render_line_internal(sputext_decoder_t *this, int x, int y, const char *text, int render)
Definition: sputext_decoder.c:333
PLUGIN_NONE
#define PLUGIN_NONE
Definition: xine_plugin.h:29
sputext_class_s
Definition: sputext_decoder.c:115
demux_sputext_dispose
static void demux_sputext_dispose(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1301
subtitle_object_s::raw_data_size
size_t raw_data_size
Definition: spuhdmv_decoder.c:91
extra_info_s
Structure to pass information from input or demuxer plugins to output frames (past decoder).
Definition: buffer.h:317
OSD_TEXT3
#define OSD_TEXT3
Definition: osd.h:283
dvbsub_func_t::object_pos
sparse_array_t object_pos
Definition: spudvb_decoder.c:241
open_plugin
static spu_decoder_t * open_plugin(spu_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: spuhdmv_decoder.c:1061
sputext_class_open_plugin
static spu_decoder_t * sputext_class_open_plugin(spu_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: sputext_decoder.c:1081
xine_internal.h
subtitle_t::end
long end
Definition: sputext_demuxer.c:69
dvb_spu_decoder_s::end_vpts
int64_t end_vpts
Definition: spudvb_decoder.c:260
SUB_MAX_TEXT
#define SUB_MAX_TEXT
Definition: sputext_demuxer.c:55
spudec_discontinuity
static void spudec_discontinuity(spu_decoder_t *this_gen)
Definition: sputext_decoder.c:1014
dvb_spu_class_open_plugin
static spu_decoder_t * dvb_spu_class_open_plugin(spu_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: spudvb_decoder.c:1272
dec_info_data
static const decoder_info_t dec_info_data
Definition: spuhdmv_decoder.c:1107
free_objs
static void free_objs(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:717
buf_element_s::decoder_flags
uint32_t decoder_flags
Definition: buffer.h:350
demux_sputext_t::format
int format
Definition: sputext_demuxer.c:94
config.h
dvb_spu_decoder_s::dvbsub_osd_mutex
pthread_mutex_t dvbsub_osd_mutex
Definition: spudvb_decoder.c:253
FORMAT_MPSUB
#define FORMAT_MPSUB
Definition: sputext_demuxer.c:123
default_clut
static clut_t default_clut[256]
Definition: spudvb_decoder.c:269
dvb_spu_decoder_s::dvbsub_timer_thread
pthread_t dvbsub_timer_thread
Definition: spudvb_decoder.c:262
ALIGN_RIGHT
#define ALIGN_RIGHT
Definition: sputext_decoder.c:51
sub_read_line_mpl2
static subtitle_t * sub_read_line_mpl2(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:971
supported_types
static const uint32_t supported_types[]
Definition: sputext_decoder.c:1211
spuhdmv_decoder_s::cluts
subtitle_clut_t * cluts
Definition: spuhdmv_decoder.c:706
update_output_size
static void update_output_size(sputext_decoder_t *this)
Definition: sputext_decoder.c:220
segbuf_decode_window_definition
static window_def_t * segbuf_decode_window_definition(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:559
subtitle_clut_s::shown
int shown
Definition: spuhdmv_decoder.c:70
osd_object_s::height
int height
Definition: osd.h:41
spu_decoder_class_s::open_plugin
spu_decoder_t *(* open_plugin)(spu_decoder_class_t *this_gen, xine_stream_t *stream)
Definition: spu_decoder.h:47
DEMUX_OPTIONAL_DATA_SPULANG
#define DEMUX_OPTIONAL_DATA_SPULANG
Definition: demux.h:240
demux_sputext_class_s::demux_class
demux_class_t demux_class
Definition: sputext_demuxer.c:103
window_def_s::width
uint16_t width
Definition: spuhdmv_decoder.c:105
visible_region_t::is_visible
unsigned char is_visible
Definition: spudvb_decoder.c:194
sputext_decoder_s::spu_palette
uint32_t spu_palette[OVL_PALETTE_SIZE]
Definition: sputext_decoder.c:170
buf_element_s::type
uint32_t type
Definition: buffer.h:362
sputext_class_s::subtitle_size
subtitle_size subtitle_size
Definition: sputext_decoder.c:118
dvbsub_func_t
Definition: spudvb_decoder.c:222
GET_X_ALIGNMENT
#define GET_X_ALIGNMENT(a)
Definition: sputext_decoder.c:55
VO_PROP_OUTPUT_XOFFSET
#define VO_PROP_OUTPUT_XOFFSET
Definition: video_out.h:267
eol
static int eol(char p)
Definition: sputext_demuxer.c:130
sub_read_line_jacobsub
static subtitle_t * sub_read_line_jacobsub(demux_sputext_t *this, subtitle_t *current)
Definition: sputext_demuxer.c:705
ALIGN_CENTER
#define ALIGN_CENTER
Definition: sputext_decoder.c:50
spuhdmv_decoder_s::objects
subtitle_object_t * objects
Definition: spuhdmv_decoder.c:707
region_t::objects_end
int objects_end
Definition: spudvb_decoder.c:212
video2wnd_s
Definition: sputext_decoder.c:135
vo_overlay_s::y
int y
Definition: video_out.h:478
GETBIT
#define GETBIT(s, v1, v2, tr)
sputext_decoder_s::last_lines
int last_lines
Definition: sputext_decoder.c:178
SEGTYPE_END_OF_DISPLAY
@ SEGTYPE_END_OF_DISPLAY
Definition: spuhdmv_decoder.c:57
SEGTYPE_INTERACTIVE
@ SEGTYPE_INTERACTIVE
Definition: spuhdmv_decoder.c:56
clut_s
Definition: alphablend.h:44
demux_sputext_t::buflen
off_t buflen
Definition: sputext_demuxer.c:85
MAX
#define MAX(a, b)
Definition: spuhdmv_decoder.c:48
spudec_discontinuity
static void spudec_discontinuity(spu_decoder_t *this_gen)
Definition: spuhdmv_decoder.c:1042
demux_sputext_get_stream_length
static int demux_sputext_get_stream_length(demux_plugin_t *this_gen)
Definition: sputext_demuxer.c:1319
subtitle_object_s::height
uint16_t height
Definition: spuhdmv_decoder.c:80
sub_readtext
static char * sub_readtext(char *source, char **dest)
Definition: sputext_demuxer.c:259
region_t::depth
int depth
Definition: spudvb_decoder.c:209
segbuf_get_u24
static uint32_t segbuf_get_u24(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:332
input
static int input(void)
Definition: goomsl_lex.c:1495
dvbsub_func_t::lut24
unsigned char lut24[4]
Definition: spudvb_decoder.c:239
ALIGN_LEFT
#define ALIGN_LEFT
Definition: sputext_decoder.c:49
show_overlay
static int show_overlay(spuhdmv_decoder_t *this, composition_object_t *cobj, unsigned int palette_id_ref, int overlay_index, int64_t pts, int force_update)
Definition: spuhdmv_decoder.c:783
free_presentation_segment
static void free_presentation_segment(void *ptr)
Definition: spuhdmv_decoder.c:192
segment_buffer_t::segment_len
int segment_len
Definition: spuhdmv_decoder.c:210
sparse_array_entry_t::key
uint32_t key
Definition: spudvb_decoder.c:51
region_t::img
unsigned char * img
Definition: spudvb_decoder.c:213
next_datum
static unsigned char next_datum(dvb_spu_decoder_t *this, int width)
Definition: spudvb_decoder.c:403
decode_presentation_segment
static int decode_presentation_segment(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:761
update_font_size
static void update_font_size(sputext_decoder_t *this, int force_update)
Definition: sputext_decoder.c:191
segment_buffer_t::data_size
size_t data_size
Definition: spuhdmv_decoder.c:219
sputext_decoder_s
Definition: sputext_decoder.c:142
subtitle_object_s::width
uint16_t width
Definition: spuhdmv_decoder.c:80
_x_demux_flush_engine
void _x_demux_flush_engine(xine_stream_t *s)
Definition: demux.c:61
update_osd_font
static void update_osd_font(void *class_gen, xine_cfg_entry_t *entry)
Definition: sputext_decoder.c:1036
METHOD_BY_MRL
#define METHOD_BY_MRL
Definition: demux.h:40
process_CLUT_definition_segment
static void process_CLUT_definition_segment(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:650
dvb_spu_decoder_s::spu_descriptor
spu_dvb_descriptor_t * spu_descriptor
Definition: spudvb_decoder.c:249
trail_space
static void trail_space(char *s)
Definition: sputext_demuxer.c:134
FORMAT_UNKNOWN
#define FORMAT_UNKNOWN
Definition: sputext_demuxer.c:114
_X_SET_CLUT_CM
#define _X_SET_CLUT_CM(clut, color_matrix)
Definition: video_overlay.h:68
update_overlays
static void update_overlays(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:905
spudec_dispose
static void spudec_dispose(spu_decoder_t *this_gen)
Definition: spuhdmv_decoder.c:1049
_x_spu_decoder_sleep
int _x_spu_decoder_sleep(xine_stream_t *s, int64_t next_spu_vpts)
Definition: video_decoder.c:70
rle_size
unsigned int rle_size
Definition: gfontrle.c:7
dvbsub_func_t::in_scanline
int in_scanline
Definition: spudvb_decoder.c:231
config_timeout_cb
static void config_timeout_cb(void *this_gen, xine_cfg_entry_t *entry)
Definition: sputext_demuxer.c:1481
plugin_info_t
Definition: xine_plugin.h:55
demux_sputext_next
static int demux_sputext_next(demux_sputext_t *this_gen)
Definition: sputext_demuxer.c:1260
SUB_BUFSIZE
#define SUB_BUFSIZE
Definition: sputext_decoder.c:46
spudec_reset
static void spudec_reset(spu_decoder_t *this_gen)
Definition: spudvb_decoder.c:1213
xprintf
#define xprintf(xine, verbose,...)
Definition: xineutils.h:664
presentation_segment_s::comp_descr
composition_descriptor_t comp_descr
Definition: spuhdmv_decoder.c:141
dvb_spu_decoder_s::pes_pkt
char * pes_pkt
Definition: spudvb_decoder.c:255
sputext_decoder_s::font
char font[FILENAME_MAX]
Definition: sputext_decoder.c:157
vo_overlay_s::data_size
int data_size
Definition: video_out.h:475
process_object_data_segment
static void process_object_data_segment(dvb_spu_decoder_t *this)
Definition: spudvb_decoder.c:885
N_
#define N_(String)
Definition: xineintl.h:47
spuhdmv_decoder_s::stream
xine_stream_t * stream
Definition: spuhdmv_decoder.c:702
sparse_array_t::max_entries
uint32_t max_entries
Definition: spudvb_decoder.c:55
supported_types
static const uint32_t supported_types[]
Definition: spuhdmv_decoder.c:1105
rle_elem_s
Definition: video_out.h:458
segbuf_init
static segment_buffer_t * segbuf_init(void)
Definition: spuhdmv_decoder.c:226
window_def_s::shown
int shown
Definition: spuhdmv_decoder.c:109
LIST_REPLACE
#define LIST_REPLACE(list, obj, FREE_FUNC)
Definition: spuhdmv_decoder.c:159
composition_object_s::window_id_ref
uint8_t window_id_ref
Definition: spuhdmv_decoder.c:118
BUF_FLAG_PREVIEW
#define BUF_FLAG_PREVIEW
Definition: buffer.h:380
vo_overlay_s::height
int height
Definition: video_out.h:480
clut_s::cr
uint8_t cr
Definition: alphablend.h:46
page_t::page_version_number
int page_version_number
Definition: spudvb_decoder.c:199
segbuf_get_u8
static uint8_t segbuf_get_u8(segment_buffer_t *buf)
Definition: spuhdmv_decoder.c:319
OVERLAY_EVENT_SHOW
#define OVERLAY_EVENT_SHOW
Definition: video_overlay.h:39
config_values_s::register_bool
int(* register_bool)(config_values_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:154
decode_segment
static void decode_segment(spuhdmv_decoder_t *this)
Definition: spuhdmv_decoder.c:940