FFmpeg  4.0
Functions | Variables
webvttdec.c File Reference

WebVTT subtitle decoder. More...

#include "avcodec.h"
#include "ass.h"
#include "libavutil/bprint.h"

Go to the source code of this file.

Functions

static int webvtt_event_to_ass (AVBPrint *buf, const char *p)
 
static int webvtt_decode_frame (AVCodecContext *avctx, void *data, int *got_sub_ptr, AVPacket *avpkt)
 

Variables

struct {
   const char *   from
 
   const char *   to
 
webvtt_tag_replace []
 
AVCodec ff_webvtt_decoder
 

Detailed Description

WebVTT subtitle decoder.

See also
http://dev.w3.org/html5/webvtt/
Todo:
need to support extended markups and cue settings

Definition in file webvttdec.c.

Function Documentation

◆ webvtt_event_to_ass()

static int webvtt_event_to_ass ( AVBPrint *  buf,
const char *  p 
)
static

Definition at line 45 of file webvttdec.c.

Referenced by webvtt_decode_frame().

◆ webvtt_decode_frame()

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

Definition at line 82 of file webvttdec.c.

Variable Documentation

◆ from

const char* from

Definition at line 33 of file webvttdec.c.

Referenced by webvtt_event_to_ass().

◆ to

const char* to

◆ webvtt_tag_replace

const { ... } webvtt_tag_replace[]
Initial value:
= {
{"<i>", "{\\i1}"}, {"</i>", "{\\i0}"},
{"<b>", "{\\b1}"}, {"</b>", "{\\b0}"},
{"<u>", "{\\u1}"}, {"</u>", "{\\u0}"},
{"{", "\\{"}, {"}", "\\}"},
{"&gt;", ">"}, {"&lt;", "<"},
{"&lrm;", ""}, {"&rlm;", ""},
{"&amp;", "&"}, {"&nbsp;", "\\h"},
}

Referenced by webvtt_event_to_ass().

◆ ff_webvtt_decoder

AVCodec ff_webvtt_decoder
Initial value:
= {
.name = "webvtt",
.long_name = NULL_IF_CONFIG_SMALL("WebVTT 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
void ff_ass_decoder_flush(AVCodecContext *avctx)
Helper to flush a text subtitles decoder making use of the FFASSDecoderContext.
Definition: ass.c:124
static int webvtt_decode_frame(AVCodecContext *avctx, void *data, int *got_sub_ptr, AVPacket *avpkt)
Definition: webvttdec.c:82

Definition at line 101 of file webvttdec.c.