#include "avcodec.h"
#include "dsputil.h"
#include "get_bits.h"
#include "colorspace.h"
Go to the source code of this file.
Data Structures | |
struct | DVBSubCLUT |
struct | DVBSubObjectDisplay |
struct | DVBSubObject |
struct | DVBSubRegionDisplay |
struct | DVBSubRegion |
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_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_state (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 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 | dvbsub_decoder |
#define cm (ff_cropTbl + MAX_NEG_CROP) |
Definition at line 36 of file dvbsubdec.c.
Referenced by add_pixels_clamped2_c(), add_pixels_clamped4_c(), add_pixels_clamped_c(), cavs_idct8_add_c(), deinterlace_line(), deinterlace_line_inplace(), ff_bfin_vp3_idct_put(), ff_h264_idct8_add_c(), ff_h264_idct8_dc_add_c(), ff_h264_idct_dc_add_c(), ff_idct_put_mlib(), ff_jref_idct1_add(), ff_jref_idct1_put(), ff_svq3_add_idct_c(), ff_vp3_idct_dc_add_c(), h_block_filter(), idct(), idct4col_add(), idct4col_put(), idct_add(), idct_internal(), idct_put(), idctSparseColAdd(), idctSparseColPut(), intra_pred_plane(), mp_yuv_to_rgb(), parse_palette_segment(), pred16x16_plane_compat_c(), pred8x8_plane_c(), put_pixels_clamped2_c(), put_pixels_clamped4_c(), put_pixels_clamped_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(), 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_OBJECT_SEGMENT 0x13 |
#define DVBSUB_PAGE_SEGMENT 0x10 |
#define DVBSUB_REGION_SEGMENT 0x11 |
Definition at line 154 of file dvbsubdec.c.
Referenced by dvbsub_init_decoder(), dvbsub_parse_clut_segment(), parse_palette_segment(), and rgbToRgbWrapper().
static void delete_region_display_list | ( | DVBSubContext * | ctx, | |
DVBSubRegion * | region | |||
) | [static] |
Definition at line 266 of file dvbsubdec.c.
Referenced by delete_state(), and dvbsub_parse_region_segment().
static void delete_state | ( | DVBSubContext * | ctx | ) | [static] |
Definition at line 312 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 415 of file dvbsubdec.c.
static int dvbsub_decode | ( | AVCodecContext * | avctx, | |
void * | data, | |||
int * | data_size, | |||
AVPacket * | avpkt | |||
) | [static] |
Definition at line 1335 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 342 of file dvbsubdec.c.
static void dvbsub_parse_clut_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 244 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 233 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 255 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 166 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 1414 of file dvbsubdec.c.