#include "avcodec.h"
#include "dsputil.h"
#include "get_bits.h"
#include "bytestream.h"
#include "libavutil/colorspace.h"
Go to the source code of this file.
Data Structures | |
struct | DVBSubCLUT |
struct | DVBSubObjectDisplay |
struct | DVBSubObject |
struct | DVBSubRegionDisplay |
struct | DVBSubRegion |
struct | DVBSubDisplayDefinition |
struct | DVBSubContext |
Defines | |
#define | DVBSUB_PAGE_SEGMENT 0x10 |
#define | DVBSUB_REGION_SEGMENT 0x11 |
#define | DVBSUB_CLUT_SEGMENT 0x12 |
#define | DVBSUB_OBJECT_SEGMENT 0x13 |
#define | DVBSUB_DISPLAYDEFINITION_SEGMENT 0x14 |
#define | DVBSUB_DISPLAY_SEGMENT 0x80 |
#define | cm (ff_cropTbl + MAX_NEG_CROP) |
#define | RGBA(r, g, b, a) (((a) << 24) | ((r) << 16) | ((g) << 8) | (b)) |
Functions | |
static DVBSubObject * | get_object (DVBSubContext *ctx, int object_id) |
static DVBSubCLUT * | get_clut (DVBSubContext *ctx, int clut_id) |
static DVBSubRegion * | get_region (DVBSubContext *ctx, int region_id) |
static void | delete_region_display_list (DVBSubContext *ctx, DVBSubRegion *region) |
static void | delete_cluts (DVBSubContext *ctx) |
static void | delete_objects (DVBSubContext *ctx) |
static void | delete_regions (DVBSubContext *ctx) |
static av_cold int | dvbsub_init_decoder (AVCodecContext *avctx) |
static av_cold int | dvbsub_close_decoder (AVCodecContext *avctx) |
static int | dvbsub_read_2bit_string (uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table) |
static int | dvbsub_read_4bit_string (uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table) |
static int | dvbsub_read_8bit_string (uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table) |
static void | dvbsub_parse_pixel_data_block (AVCodecContext *avctx, DVBSubObjectDisplay *display, const uint8_t *buf, int buf_size, int top_bottom, int non_mod) |
static void | dvbsub_parse_object_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static void | dvbsub_parse_clut_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static void | dvbsub_parse_region_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static void | dvbsub_parse_page_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static void | dvbsub_parse_display_definition_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static int | dvbsub_display_end_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size, AVSubtitle *sub) |
static int | dvbsub_decode (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
Variables | |
static DVBSubCLUT | default_clut |
AVCodec | ff_dvbsub_decoder |
#define cm (ff_cropTbl + MAX_NEG_CROP) |
Definition at line 34 of file dvbsubdec.c.
Referenced by add_pixels_clamped2_c(), add_pixels_clamped4_c(), cavs_idct8_add_c(), deinterlace_line_c(), deinterlace_line_inplace_c(), ff_add_pixels_clamped_c(), ff_bfin_vp3_idct_put(), ff_idct_put_mlib(), ff_jref_idct1_add(), ff_jref_idct1_put(), ff_put_pixels_clamped_c(), ff_svq3_add_idct_c(), ff_vp3_idct_dc_add_c(), filter_common(), filter_mbedge(), h_block_filter(), idct(), idct4col_add(), idct4col_put(), idct_add(), idct_put(), idctSparseColAdd(), idctSparseColPut(), intra_pred_plane(), mp_yuv_to_rgb(), parse_palette_segment(), pred16x16_tm_vp8_c(), pred4x4_tm_vp8_c(), pred8x8_tm_vp8_c(), put_pixels_clamped2_c(), put_pixels_clamped4_c(), rv30_weak_loop_filter(), rv40_weak_loop_filter(), v_block_filter(), vc1_filter_line(), vc1_inv_trans_4x4_c(), vc1_inv_trans_4x4_dc_c(), vc1_inv_trans_4x8_c(), vc1_inv_trans_4x8_dc_c(), vc1_inv_trans_8x4_c(), vc1_inv_trans_8x4_dc_c(), vc1_inv_trans_8x8_dc_c(), vp8_idct_add_c(), vp8_idct_dc_add_c(), wmv2_mspel8_h_lowpass(), wmv2_mspel8_v_lowpass(), and yuv_a_to_rgba().
#define DVBSUB_CLUT_SEGMENT 0x12 |
#define DVBSUB_DISPLAY_SEGMENT 0x80 |
#define DVBSUB_DISPLAYDEFINITION_SEGMENT 0x14 |
#define DVBSUB_OBJECT_SEGMENT 0x13 |
#define DVBSUB_PAGE_SEGMENT 0x10 |
#define DVBSUB_REGION_SEGMENT 0x11 |
Definition at line 153 of file dvbsubdec.c.
Referenced by dvbsub_init_decoder(), dvbsub_parse_clut_segment(), parse_palette_segment(), and rgbToRgbWrapper().
static void delete_cluts | ( | DVBSubContext * | ctx | ) | [static] |
Definition at line 321 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
static void delete_objects | ( | DVBSubContext * | ctx | ) | [static] |
Definition at line 334 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
static void delete_region_display_list | ( | DVBSubContext * | ctx, | |
DVBSubRegion * | region | |||
) | [static] |
Definition at line 275 of file dvbsubdec.c.
Referenced by delete_regions(), and dvbsub_parse_region_segment().
static void delete_regions | ( | DVBSubContext * | ctx | ) | [static] |
Definition at line 347 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
static av_cold int dvbsub_close_decoder | ( | AVCodecContext * | avctx | ) | [static] |
Definition at line 440 of file dvbsubdec.c.
static int dvbsub_decode | ( | AVCodecContext * | avctx, | |
void * | data, | |||
int * | data_size, | |||
AVPacket * | avpkt | |||
) | [static] |
Definition at line 1403 of file dvbsubdec.c.
static int dvbsub_display_end_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size, | |||
AVSubtitle * | sub | |||
) | [static] |
static av_cold int dvbsub_init_decoder | ( | AVCodecContext * | avctx | ) | [static] |
Definition at line 363 of file dvbsubdec.c.
static void dvbsub_parse_clut_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size | |||
) | [static] |
static void dvbsub_parse_display_definition_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size | |||
) | [static] |
static void dvbsub_parse_object_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size | |||
) | [static] |
static void dvbsub_parse_page_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size | |||
) | [static] |
static void dvbsub_parse_pixel_data_block | ( | AVCodecContext * | avctx, | |
DVBSubObjectDisplay * | display, | |||
const uint8_t * | buf, | |||
int | buf_size, | |||
int | top_bottom, | |||
int | non_mod | |||
) | [static] |
static void dvbsub_parse_region_segment | ( | AVCodecContext * | avctx, | |
const uint8_t * | buf, | |||
int | buf_size | |||
) | [static] |
static int dvbsub_read_2bit_string | ( | uint8_t * | destbuf, | |
int | dbuf_len, | |||
const uint8_t ** | srcbuf, | |||
int | buf_size, | |||
int | non_mod, | |||
uint8_t * | map_table | |||
) | [static] |
static int dvbsub_read_4bit_string | ( | uint8_t * | destbuf, | |
int | dbuf_len, | |||
const uint8_t ** | srcbuf, | |||
int | buf_size, | |||
int | non_mod, | |||
uint8_t * | map_table | |||
) | [static] |
static int dvbsub_read_8bit_string | ( | uint8_t * | destbuf, | |
int | dbuf_len, | |||
const uint8_t ** | srcbuf, | |||
int | buf_size, | |||
int | non_mod, | |||
uint8_t * | map_table | |||
) | [static] |
static DVBSubCLUT* get_clut | ( | DVBSubContext * | ctx, | |
int | clut_id | |||
) | [static] |
Definition at line 253 of file dvbsubdec.c.
Referenced by dvbsub_display_end_segment(), and dvbsub_parse_clut_segment().
static DVBSubObject* get_object | ( | DVBSubContext * | ctx, | |
int | object_id | |||
) | [static] |
Definition at line 242 of file dvbsubdec.c.
Referenced by delete_region_display_list(), dvbsub_parse_object_segment(), and dvbsub_parse_region_segment().
static DVBSubRegion* get_region | ( | DVBSubContext * | ctx, | |
int | region_id | |||
) | [static] |
Definition at line 264 of file dvbsubdec.c.
Referenced by dvbsub_display_end_segment(), dvbsub_parse_pixel_data_block(), and dvbsub_parse_region_segment().
DVBSubCLUT default_clut [static] |
Definition at line 165 of file dvbsubdec.c.
Initial value:
{ "dvbsub", AVMEDIA_TYPE_SUBTITLE, CODEC_ID_DVB_SUBTITLE, sizeof(DVBSubContext), dvbsub_init_decoder, NULL, dvbsub_close_decoder, dvbsub_decode, .long_name = NULL_IF_CONFIG_SMALL("DVB subtitles"), }
Definition at line 1483 of file dvbsubdec.c.