Go to the documentation of this file.
61 int prev_chr_is_space = 0;
88 if (!strncmp(p,
" ", 6)) {
102 while (*p && *p !=
'>')
112 else if (!prev_chr_is_space)
137 int *got_sub_ptr,
const AVPacket *avpkt)
139 const char *ptr = avpkt->
data;
142 if (ptr && avpkt->
size > 0) {
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a all references to both lists are replaced with a reference to the intersection And when a single format is eventually chosen for a link amongst the remaining all references to the list are updated That means that if a filter requires that its input and output have the same format amongst a supported all it has to do is use a reference to the same list of formats query_formats can leave some formats unset and return AVERROR(EAGAIN) to cause the negotiation mechanism toagain later. That can be used by filters with complex requirements to use the format negotiated on one link to set the formats supported on another. Frame references ownership and permissions
int ff_ass_subtitle_header_default(AVCodecContext *avctx)
Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS with default style.
void av_bprint_init(AVBPrint *buf, unsigned size_init, unsigned size_max)
char * av_stristr(const char *s1, const char *s2)
Locate the first case-independent occurrence in the string haystack of the string needle.
static av_const int av_isspace(int c)
Locale-independent conversion of ASCII isspace.
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 sami_decode_frame(AVCodecContext *avctx, AVSubtitle *sub, int *got_sub_ptr, const AVPacket *avpkt)
AVCodec p
The public AVCodec.
static av_cold int sami_close(AVCodecContext *avctx)
const FFCodec ff_sami_decoder
static av_cold int sami_init(AVCodecContext *avctx)
static void sami_flush(AVCodecContext *avctx)
char * av_strtok(char *s, const char *delim, char **saveptr)
Split the string into several tokens which can be accessed by successive calls to av_strtok().
#define CODEC_LONG_NAME(str)
int av_strncasecmp(const char *a, const char *b, size_t n)
Locale-independent case-insensitive compare.
int flags2
AV_CODEC_FLAG2_*.
int(* init)(AVBSFContext *ctx)
int av_bprint_finalize(AVBPrint *buf, char **ret_str)
Finalize a print buffer.
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
int ff_htmlmarkup_to_ass(void *log_ctx, AVBPrint *dst, const char *in)
const char * name
Name of the codec implementation.
void av_bprintf(AVBPrint *buf, const char *fmt,...)
static int sami_paragraph_to_ass(AVCodecContext *avctx, const char *src)
main external API structure.
void av_bprint_clear(AVBPrint *buf)
Reset the string to "" but keep internal allocated data.
#define FF_CODEC_DECODE_SUB_CB(func)
char * av_strdup(const char *s)
Duplicate a string.
This structure stores compressed data.
void av_bprint_chars(AVBPrint *buf, char c, unsigned n)
Append char c n times to a print buffer.
#define AV_CODEC_FLAG2_RO_FLUSH_NOOP
Do not reset ASS ReadOrder field on flush (subtitles decoding)