#include "avcodec.h"
#include "ass.h"
#include "libavutil/opt.h"
Go to the source code of this file.
|
enum | cc_mode { CCMODE_POPON,
CCMODE_PAINTON,
CCMODE_ROLLUP,
CCMODE_TEXT
} |
|
enum | cc_color_code {
CCCOL_WHITE,
CCCOL_GREEN,
CCCOL_BLUE,
CCCOL_CYAN,
CCCOL_RED,
CCCOL_YELLOW,
CCCOL_MAGENTA,
CCCOL_USERDEFINED,
CCCOL_BLACK,
CCCOL_TRANSPARENT
} |
|
enum | cc_font { CCFONT_REGULAR,
CCFONT_ITALICS,
CCFONT_UNDERLINED,
CCFONT_UNDERLINED_ITALICS
} |
|
enum | cc_charset { CCSET_BASIC_AMERICAN,
CCSET_SPECIAL_AMERICAN,
CCSET_EXTENDED_SPANISH_FRENCH_MISC,
CCSET_EXTENDED_PORTUGUESE_GERMAN_DANISH
} |
|
|
static av_cold int | init_decoder (AVCodecContext *avctx) |
|
static av_cold int | close_decoder (AVCodecContext *avctx) |
|
static void | flush_decoder (AVCodecContext *avctx) |
|
static void | write_char (CCaptionSubContext *ctx, struct Screen *screen, char ch) |
|
static int | validate_cc_data_pair (uint8_t *cc_data_pair) |
| This function after validating parity bit, also remove it from data pair. More...
|
|
static struct Screen * | get_writing_screen (CCaptionSubContext *ctx) |
|
static void | roll_up (CCaptionSubContext *ctx) |
|
static int | capture_screen (CCaptionSubContext *ctx) |
|
static int | reap_screen (CCaptionSubContext *ctx, int64_t pts) |
|
static void | handle_textattr (CCaptionSubContext *ctx, uint8_t hi, uint8_t lo) |
|
static void | handle_pac (CCaptionSubContext *ctx, uint8_t hi, uint8_t lo) |
|
static void | handle_edm (CCaptionSubContext *ctx, int64_t pts) |
|
static void | handle_eoc (CCaptionSubContext *ctx, int64_t pts) |
|
static void | handle_delete_end_of_row (CCaptionSubContext *ctx, char hi, char lo) |
|
static void | handle_char (CCaptionSubContext *ctx, char hi, char lo, int64_t pts) |
|
static void | process_cc608 (CCaptionSubContext *ctx, int64_t pts, uint8_t hi, uint8_t lo) |
|
static int | decode (AVCodecContext *avctx, void *data, int *got_sub, AVPacket *avpkt) |
|
◆ SCREEN_ROWS
◆ SCREEN_COLUMNS
#define SCREEN_COLUMNS 32 |
◆ SET_FLAG
#define SET_FLAG |
( |
|
var, |
|
|
|
val |
|
) |
| ( (var) |= ( 1 << (val)) ) |
◆ UNSET_FLAG
#define UNSET_FLAG |
( |
|
var, |
|
|
|
val |
|
) |
| ( (var) &= ~( 1 << (val)) ) |
◆ CHECK_FLAG
#define CHECK_FLAG |
( |
|
var, |
|
|
|
val |
|
) |
| ( (var) & ( 1 << (val)) ) |
◆ OFFSET
◆ SD
Definition at line 819 of file ccaption_dec.c.
Referenced by common_vt_4t_24w_msa(), common_vt_4t_8x6_msa(), common_vt_8t_12w_msa(), copy_8x8_msa(), copy_width8_msa(), ff_loop_filter_v_16_8_msa(), ff_loop_filter_v_8_8_msa(), ff_vp8_v_loop_filter8uv_msa(), hevc_hz_4t_6w_msa(), hevc_hz_bi_8t_12w_msa(), hevc_hz_bi_8t_24w_msa(), hevc_hz_biwgt_8t_24w_msa(), hevc_intra_pred_angular_lower_4width_msa(), hevc_intra_pred_angular_upper_4width_msa(), hevc_intra_pred_dc_8x8_msa(), hevc_intra_pred_horiz_8x8_msa(), hevc_intra_pred_vert_8x8_msa(), hevc_loopfilter_luma_hor_msa(), hevc_sao_edge_filter_0degree_8width_msa(), hevc_sao_edge_filter_135degree_8width_msa(), hevc_sao_edge_filter_45degree_8width_msa(), hevc_sao_edge_filter_90degree_8width_msa(), hevc_vt_4t_6w_msa(), and intra_predict_plane_8x8_msa().
◆ cc_mode
Enumerator |
---|
CCMODE_POPON | |
CCMODE_PAINTON | |
CCMODE_ROLLUP | |
CCMODE_TEXT | |
Definition at line 39 of file ccaption_dec.c.
◆ cc_color_code
Enumerator |
---|
CCCOL_WHITE | |
CCCOL_GREEN | |
CCCOL_BLUE | |
CCCOL_CYAN | |
CCCOL_RED | |
CCCOL_YELLOW | |
CCCOL_MAGENTA | |
CCCOL_USERDEFINED | |
CCCOL_BLACK | |
CCCOL_TRANSPARENT | |
Definition at line 46 of file ccaption_dec.c.
◆ cc_font
Enumerator |
---|
CCFONT_REGULAR | |
CCFONT_ITALICS | |
CCFONT_UNDERLINED | |
CCFONT_UNDERLINED_ITALICS | |
Definition at line 59 of file ccaption_dec.c.
◆ cc_charset
Enumerator |
---|
CCSET_BASIC_AMERICAN | |
CCSET_SPECIAL_AMERICAN | |
CCSET_EXTENDED_SPANISH_FRENCH_MISC | |
CCSET_EXTENDED_PORTUGUESE_GERMAN_DANISH | |
Definition at line 66 of file ccaption_dec.c.
◆ init_decoder()
◆ close_decoder()
◆ flush_decoder()
◆ write_char()
◆ validate_cc_data_pair()
static int validate_cc_data_pair |
( |
uint8_t * |
cc_data_pair | ) |
|
|
static |
This function after validating parity bit, also remove it from data pair.
The first byte doesn't pass parity, we replace it with a solid blank and process the pair. If the second byte doesn't pass parity, it returns INVALIDDATA user can ignore the whole pair and pass the other pair.
Definition at line 350 of file ccaption_dec.c.
Referenced by decode().
◆ get_writing_screen()
◆ roll_up()
◆ capture_screen()
◆ reap_screen()
◆ handle_textattr()
◆ handle_pac()
◆ handle_edm()
◆ handle_eoc()
◆ handle_delete_end_of_row()
◆ handle_char()
◆ process_cc608()
◆ decode()
◆ ms_tb
◆ charset_overrides
const char* charset_overrides[4][128] |
|
static |
◆ pac2_attribs
const unsigned char pac2_attribs[32][3] |
|
static |
◆ options
Initial value:= {
{
"real_time",
"emit subtitle events as they are decoded for real-time display",
OFFSET(real_time),
AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1,
SD },
}
Definition at line 820 of file ccaption_dec.c.
◆ ccaption_dec_class
Initial value:= {
.class_name = "Closed caption Decoder",
}
#define LIBAVUTIL_VERSION_INT
const char * av_default_item_name(void *ptr)
Return the context name.
static const AVOption options[]
Definition at line 825 of file ccaption_dec.c.
◆ ff_ccaption_decoder
Initial value:= {
.name = "cc_dec",
}
static void flush(AVCodecContext *avctx)
static av_cold int init(AVCodecContext *avctx)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static av_cold int init_decoder(AVCodecContext *avctx)
static void flush_decoder(AVCodecContext *avctx)
static const AVClass ccaption_dec_class
static int decode(AVCodecContext *avctx, void *data, int *got_sub, AVPacket *avpkt)
static av_cold int close_decoder(AVCodecContext *avctx)
Definition at line 832 of file ccaption_dec.c.