Go to the documentation of this file.
35 if (!strncmp(p,
"[br]", 4)) {
39 if (p[0] ==
'\n' && p[1])
41 else if (*p !=
'\n' && *p !=
'\r')
55 const char *ptr = avpkt->
data;
65 *got_sub_ptr =
sub->num_rects > 0;
#define AV_BPRINT_SIZE_UNLIMITED
#define FF_CODEC_CAP_INIT_THREADSAFE
The codec does not modify any global variables in the init function, allowing to call the init functi...
int ff_ass_subtitle_header_default(AVCodecContext *avctx)
Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS with default style.
int av_bprint_finalize(AVBPrint *buf, char **ret_str)
Finalize a print buffer.
void av_bprint_init(AVBPrint *buf, unsigned size_init, unsigned size_max)
static float sub(float src0, float src1)
int ff_ass_add_rect(AVSubtitle *sub, const char *dialog, int readorder, int layer, const char *style, const char *speaker)
Add an ASS dialog to a subtitle.
static int subviewer_decode_frame(AVCodecContext *avctx, void *data, int *got_sub_ptr, AVPacket *avpkt)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
void ff_ass_decoder_flush(AVCodecContext *avctx)
Helper to flush a text subtitles decoder making use of the FFASSDecoderContext.
const char * name
Name of the codec implementation.
const AVCodec ff_subviewer_decoder
void av_bprintf(AVBPrint *buf, const char *fmt,...)
main external API structure.
This structure stores compressed data.
static int subviewer_event_to_ass(AVBPrint *buf, const char *p)
void av_bprint_chars(AVBPrint *buf, char c, unsigned n)
Append char c n times to a print buffer.