FFmpeg  4.0
Enumerations | Functions | Variables
jacosubdec.c File Reference

JACOsub subtitle decoder. More...

#include <time.h>
#include "ass.h"
#include "jacosub.h"
#include "libavutil/avstring.h"
#include "libavutil/bprint.h"
#include "libavutil/time_internal.h"

Go to the source code of this file.

Enumerations

enum  {
  ALIGN_VB = 1<<0, ALIGN_VM = 1<<1, ALIGN_VT = 1<<2, ALIGN_JC = 1<<3,
  ALIGN_JL = 1<<4, ALIGN_JR = 1<<5
}
 

Functions

static int insert_text (AVBPrint *dst, const char *in, const char *arg)
 
static int insert_datetime (AVBPrint *dst, const char *in, const char *arg)
 
static int insert_color (AVBPrint *dst, const char *in, const char *arg)
 
static int insert_font (AVBPrint *dst, const char *in, const char *arg)
 
static void jacosub_to_ass (AVCodecContext *avctx, AVBPrint *dst, const char *src)
 
static int jacosub_decode_frame (AVCodecContext *avctx, void *data, int *got_sub_ptr, AVPacket *avpkt)
 

Variables

struct {
   const char *   from
 
   const char *   arg
 
   int(*   func )(AVBPrint *dst, const char
      *in, const char *arg)
 
ass_codes_map []
 
AVCodec ff_jacosub_decoder
 

Detailed Description

JACOsub subtitle decoder.

See also
http://unicorn.us.com/jacosub/jscripts.html

Definition in file jacosubdec.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
ALIGN_VB 
ALIGN_VM 
ALIGN_VT 
ALIGN_JC 
ALIGN_JL 
ALIGN_JR 

Definition at line 85 of file jacosubdec.c.

Function Documentation

◆ insert_text()

static int insert_text ( AVBPrint *  dst,
const char *  in,
const char *  arg 
)
static

Definition at line 36 of file jacosubdec.c.

◆ insert_datetime()

static int insert_datetime ( AVBPrint *  dst,
const char *  in,
const char *  arg 
)
static

Definition at line 42 of file jacosubdec.c.

◆ insert_color()

static int insert_color ( AVBPrint *  dst,
const char *  in,
const char *  arg 
)
static

Definition at line 54 of file jacosubdec.c.

◆ insert_font()

static int insert_font ( AVBPrint *  dst,
const char *  in,
const char *  arg 
)
static

Definition at line 59 of file jacosubdec.c.

◆ jacosub_to_ass()

static void jacosub_to_ass ( AVCodecContext avctx,
AVBPrint *  dst,
const char *  src 
)
static

Definition at line 94 of file jacosubdec.c.

Referenced by jacosub_decode_frame().

◆ jacosub_decode_frame()

static int jacosub_decode_frame ( AVCodecContext avctx,
void data,
int got_sub_ptr,
AVPacket avpkt 
)
static

Definition at line 164 of file jacosubdec.c.

Variable Documentation

◆ from

const char* from

◆ arg

const char* arg

Definition at line 66 of file jacosubdec.c.

Referenced by async_buffer_task(), async_check_interrupt(), audio_thread(), av_find_info_tag(), av_log_set_flags(), av_thread_message_queue_set_err_recv(), avisynth_open_file(), bktr_init(), check_keyboard_interaction(), checkasm_check_func(), checkasm_fail_func(), checkasm_report(), color_printf(), complex_divide(), complex_multiply(), compute_sat_hue_metrics16(), compute_sat_hue_metrics8(), config_input(), config_output(), convolution_opencl_make_filter_params(), deband_16_c(), deband_16_coupling_c(), deband_8_c(), deband_8_coupling_c(), decode_lowdelay_slice(), decode_slice(), decode_subband_golomb(), decompress_texture_thread(), decompress_texture_thread_internal(), DEFINE_BLEND8(), deinterlace_slice(), do_chromakey_slice(), do_colorkey_slice(), do_despill_slice(), do_lumakey_slice16(), do_lumakey_slice8(), dv_decode_video_segment(), dv_encode_video_segment(), dwt_plane(), encode_hq_slice(), ff_cos(), fft_horizontal(), fft_vertical(), filter16_3x3(), filter16_5x5(), filter16_7x7(), filter16_brng(), filter16_prewitt(), filter16_roberts(), filter16_sobel(), filter16_tout(), filter16_vrep(), filter8_brng(), filter8_tout(), filter8_vrep(), filter_3x3(), filter_5x5(), filter_7x7(), filter_color(), filter_color2(), filter_horizontally(), filter_mono(), filter_postscale(), filter_prewitt(), filter_roberts(), filter_slice(), filter_slice16(), filter_slice8(), filter_slice_alpha(), filter_slice_chroma(), filter_slice_luma(), filter_slice_rgb(), filter_sobel(), filter_vertically(), finish_group(), fir_channel(), frame_worker_thread(), free_frame(), get_rotation(), headphone_convolute(), headphone_fast_convolute(), hls_slice_data(), hls_slice_data_wpp(), ifft_channel(), ifft_horizontal(), ifft_vertical(), init(), jacosub_to_ass(), mxf_read_content_storage(), mxf_read_cryptographic_context(), mxf_read_essence_container_data(), mxf_read_essence_group(), mxf_read_generic_descriptor(), mxf_read_identification_metadata(), mxf_read_index_table_segment(), mxf_read_indirect_value(), mxf_read_partition_pack(), mxf_read_preface_metadata(), mxf_read_primer_pack(), mxf_read_pulldown_component(), mxf_read_sequence(), mxf_read_source_clip(), mxf_read_tagged_value(), mxf_read_timecode_component(), mxf_read_track(), new_output_stream(), nlmeans_slice(), opt_attach(), opt_codec(), opt_input_file(), opt_loglevel(), opt_sdp_file(), opt_show_entries(), parse_map(), parse_meta_type(), parse_speaker_pos(), process_callback(), process_command(), process_slice_uyvy422(), process_slice_yuv420p(), process_slice_yuv422p(), process_slice_yuv444p(), pthread_create(), rate_control(), read_channels(), read_gains(), read_tf_coefficients(), read_thread(), read_zp_coefficients(), receiver_thread(), resample_cubic(), resample_linear(), run_channel_fft(), sender_thread(), shutdown_callback(), slice_geq_filter(), sofalizer_convolute(), sofalizer_fast_convolute(), split_commandline(), subtitle_thread(), thread_entry(), thread_execute(), thread_main(), uninit(), video_thread(), and xrun_callback().

◆ func

int(* func) (AVBPrint *dst, const char *in, const char *arg)

◆ ass_codes_map

const { ... } ass_codes_map[]
Initial value:
= {
{"\\~", "~", insert_text},
{"~", "{\\h}", insert_text},
{"\\n", "\\N", insert_text},
{"\\D", "%d %b %Y", insert_datetime},
{"\\T", "%H:%M", insert_datetime},
{"\\N", "{\\r}", insert_text},
{"\\I", "{\\i1}", insert_text},
{"\\i", "{\\i0}", insert_text},
{"\\B", "{\\b1}", insert_text},
{"\\b", "{\\b0}", insert_text},
{"\\U", "{\\u1}", insert_text},
{"\\u", "{\\u0}", insert_text},
{"\\C", "", insert_color},
{"\\F", "", insert_font},
}
static int insert_datetime(AVBPrint *dst, const char *in, const char *arg)
Definition: jacosubdec.c:42
static int insert_text(AVBPrint *dst, const char *in, const char *arg)
Definition: jacosubdec.c:36
static int insert_color(AVBPrint *dst, const char *in, const char *arg)
Definition: jacosubdec.c:54
static int insert_font(AVBPrint *dst, const char *in, const char *arg)
Definition: jacosubdec.c:59

Referenced by jacosub_to_ass().

◆ ff_jacosub_decoder

AVCodec ff_jacosub_decoder
Initial value:
= {
.name = "jacosub",
.long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle"),
.priv_data_size = sizeof(FFASSDecoderContext),
}
int ff_ass_subtitle_header_default(AVCodecContext *avctx)
Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS with default style.
Definition: ass.c:80
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
static int jacosub_decode_frame(AVCodecContext *avctx, void *data, int *got_sub_ptr, AVPacket *avpkt)
Definition: jacosubdec.c:164
void ff_ass_decoder_flush(AVCodecContext *avctx)
Helper to flush a text subtitles decoder making use of the FFASSDecoderContext.
Definition: ass.c:124

Definition at line 196 of file jacosubdec.c.