FFmpeg
|
#include "avcodec.h"
#include "get_bits.h"
#include "bytestream.h"
#include "codec_internal.h"
#include "decode.h"
#include "libavutil/colorspace.h"
#include "libavutil/imgutils.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/thread.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 |
Macros | |
#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_crop_tab + MAX_NEG_CROP) |
#define | RGBA(r, g, b, a) (((unsigned)(a) << 24) | ((r) << 16) | ((g) << 8) | (b)) |
#define | V(x, y) rect->data[0][(x) + (y)*stride] |
#define | L(x, y) list[d[(x) + (y)*stride]] |
#define | DS AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_SUBTITLE_PARAM |
#define | OFFSET(x) offsetof(DVBSubContext, x) |
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 void | init_default_clut (void) |
static av_cold int | dvbsub_init_decoder (AVCodecContext *avctx) |
static av_cold int | dvbsub_close_decoder (AVCodecContext *avctx) |
static int | dvbsub_read_2bit_string (AVCodecContext *avctx, uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table, int x_pos) |
static int | dvbsub_read_4bit_string (AVCodecContext *avctx, uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table, int x_pos) |
static int | dvbsub_read_8bit_string (AVCodecContext *avctx, uint8_t *destbuf, int dbuf_len, const uint8_t **srcbuf, int buf_size, int non_mod, uint8_t *map_table, int x_pos) |
static void | compute_default_clut (DVBSubContext *ctx, uint8_t *clut, AVSubtitleRect *rect, int w, int h) |
static int | save_subtitle_set (AVCodecContext *avctx, AVSubtitle *sub, int *got_output) |
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 int | dvbsub_parse_object_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static int | dvbsub_parse_clut_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static int | dvbsub_parse_region_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size) |
static int | dvbsub_parse_page_segment (AVCodecContext *avctx, const uint8_t *buf, int buf_size, AVSubtitle *sub, int *got_output) |
static int | 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, int *got_output) |
static int | dvbsub_decode (AVCodecContext *avctx, AVSubtitle *sub, int *got_sub_ptr, const AVPacket *avpkt) |
Variables | |
static DVBSubCLUT | default_clut |
static const AVOption | options [] |
static const AVClass | dvbsubdec_class |
const FFCodec | ff_dvbsub_decoder |
#define DVBSUB_PAGE_SEGMENT 0x10 |
Definition at line 33 of file dvbsubdec.c.
#define DVBSUB_REGION_SEGMENT 0x11 |
Definition at line 34 of file dvbsubdec.c.
#define DVBSUB_CLUT_SEGMENT 0x12 |
Definition at line 35 of file dvbsubdec.c.
#define DVBSUB_OBJECT_SEGMENT 0x13 |
Definition at line 36 of file dvbsubdec.c.
#define DVBSUB_DISPLAYDEFINITION_SEGMENT 0x14 |
Definition at line 37 of file dvbsubdec.c.
#define DVBSUB_DISPLAY_SEGMENT 0x80 |
Definition at line 38 of file dvbsubdec.c.
#define cm (ff_crop_tab + MAX_NEG_CROP) |
Definition at line 40 of file dvbsubdec.c.
Definition at line 42 of file dvbsubdec.c.
#define DS AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_SUBTITLE_PARAM |
Definition at line 1558 of file dvbsubdec.c.
#define OFFSET | ( | x | ) | offsetof(DVBSubContext, x) |
Definition at line 1559 of file dvbsubdec.c.
|
static |
Definition at line 145 of file dvbsubdec.c.
Referenced by delete_region_display_list(), dvbsub_parse_object_segment(), and dvbsub_parse_region_segment().
|
static |
Definition at line 156 of file dvbsubdec.c.
Referenced by dvbsub_parse_clut_segment(), and save_subtitle_set().
|
static |
Definition at line 167 of file dvbsubdec.c.
Referenced by dvbsub_parse_pixel_data_block(), dvbsub_parse_region_segment(), and save_subtitle_set().
|
static |
Definition at line 178 of file dvbsubdec.c.
Referenced by delete_regions(), and dvbsub_parse_region_segment().
|
static |
Definition at line 224 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
|
static |
Definition at line 235 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
|
static |
Definition at line 246 of file dvbsubdec.c.
Referenced by dvbsub_close_decoder(), and dvbsub_parse_page_segment().
|
static |
Definition at line 260 of file dvbsubdec.c.
Referenced by dvbsub_init_decoder().
|
static |
Definition at line 325 of file dvbsubdec.c.
|
static |
Definition at line 356 of file dvbsubdec.c.
|
static |
Definition at line 379 of file dvbsubdec.c.
Referenced by dvbsub_parse_pixel_data_block().
|
static |
Definition at line 487 of file dvbsubdec.c.
Referenced by dvbsub_parse_pixel_data_block().
|
static |
Definition at line 610 of file dvbsubdec.c.
Referenced by dvbsub_parse_pixel_data_block().
|
static |
Definition at line 664 of file dvbsubdec.c.
Referenced by save_subtitle_set().
|
static |
Definition at line 730 of file dvbsubdec.c.
Referenced by dvbsub_display_end_segment(), and dvbsub_parse_page_segment().
|
static |
Definition at line 864 of file dvbsubdec.c.
Referenced by dvbsub_parse_object_segment().
|
static |
Definition at line 982 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1046 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1143 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1291 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1385 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1432 of file dvbsubdec.c.
Referenced by dvbsub_decode().
|
static |
Definition at line 1442 of file dvbsubdec.c.
|
static |
Definition at line 55 of file dvbsubdec.c.
Referenced by dvbsub_parse_clut_segment(), init_default_clut(), and save_subtitle_set().
Definition at line 1560 of file dvbsubdec.c.
|
static |
Definition at line 1566 of file dvbsubdec.c.
const FFCodec ff_dvbsub_decoder |
Definition at line 1573 of file dvbsubdec.c.