libavfilter/vf_ass.c File Reference

Libass subtitles burning filter. More...

#include <ass/ass.h>
#include "libavutil/avstring.h"
#include "libavutil/imgutils.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include "drawutils.h"
#include "avfilter.h"

Go to the source code of this file.

Data Structures

struct  AssContext

Defines

#define OFFSET(x)   offsetof(AssContext, x)
#define AR(c)   ( (c)>>24)
#define AG(c)   (((c)>>16)&0xFF)
#define AB(c)   (((c)>>8) &0xFF)
#define AA(c)   ((0xFF-c) &0xFF)

Functions

static const char * ass_get_name (void *ctx)
static void ass_log (int ass_level, const char *fmt, va_list args, void *ctx)
static av_cold int init (AVFilterContext *ctx, const char *args, void *opaque)
static av_cold void uninit (AVFilterContext *ctx)
static int query_formats (AVFilterContext *ctx)
static int config_input (AVFilterLink *inlink)
static void null_draw_slice (AVFilterLink *link, int y, int h, int slice_dir)
static void overlay_ass_image (AssContext *ass, AVFilterBufferRef *picref, const ASS_Image *image)
static void end_frame (AVFilterLink *inlink)

Variables

static const AVOption ass_options []
static const AVClass ass_class
int ass_libav_log_level_map []
AVFilter avfilter_vf_ass


Detailed Description

Libass subtitles burning filter.

See also:
{http://www.matroska.org/technical/specs/subtitles/ssa.html}

Definition in file vf_ass.c.


Define Documentation

#define AA ( c   )     ((0xFF-c) &0xFF)

Definition at line 172 of file vf_ass.c.

#define AB ( c   )     (((c)>>8) &0xFF)

Definition at line 171 of file vf_ass.c.

Referenced by overlay_ass_image().

#define AG ( c   )     (((c)>>16)&0xFF)

Definition at line 170 of file vf_ass.c.

Referenced by overlay_ass_image().

#define AR ( c   )     ( (c)>>24)

Definition at line 169 of file vf_ass.c.

Referenced by overlay_ass_image().

#define OFFSET (  )     offsetof(AssContext, x)

Definition at line 50 of file vf_ass.c.


Function Documentation

static const char* ass_get_name ( void *  ctx  )  [static]

Definition at line 57 of file vf_ass.c.

static void ass_log ( int  ass_level,
const char *  fmt,
va_list  args,
void *  ctx 
) [static]

Definition at line 80 of file vf_ass.c.

Referenced by init().

static int config_input ( AVFilterLink inlink  )  [static]

Definition at line 152 of file vf_ass.c.

static void end_frame ( AVFilterLink inlink  )  [static]

Definition at line 189 of file vf_ass.c.

static av_cold int init ( AVFilterContext ctx,
const char *  args,
void *  opaque 
) [static]

Definition at line 88 of file vf_ass.c.

static void null_draw_slice ( AVFilterLink link,
int  y,
int  h,
int  slice_dir 
) [static]

Definition at line 166 of file vf_ass.c.

static void overlay_ass_image ( AssContext ass,
AVFilterBufferRef picref,
const ASS_Image *  image 
) [static]

Definition at line 174 of file vf_ass.c.

Referenced by end_frame().

static int query_formats ( AVFilterContext ctx  )  [static]

Definition at line 146 of file vf_ass.c.

static av_cold void uninit ( AVFilterContext ctx  )  [static]

Definition at line 133 of file vf_ass.c.


Variable Documentation

const AVClass ass_class [static]

Initial value:

 {
    "AssContext",
    ass_get_name,
    ass_options
}

Definition at line 62 of file vf_ass.c.

Initial value:

Definition at line 69 of file vf_ass.c.

Referenced by ass_log().

const AVOption ass_options[] [static]

Initial value:

 {
    {"original_size",  "set the size of the original video (used to scale fonts)", OFFSET(original_w), AV_OPT_TYPE_IMAGE_SIZE, {.str = NULL},  CHAR_MIN, CHAR_MAX },
    {NULL},
}

Definition at line 52 of file vf_ass.c.

Initial value:

 {
    .name          = "ass",
    .description   = NULL_IF_CONFIG_SMALL("Render subtitles onto input video using the libass library."),
    .priv_size     = sizeof(AssContext),
    .init          = init,
    .uninit        = uninit,
    .query_formats = query_formats,

    .inputs = (const AVFilterPad[]) {
        { .name             = "default",
          .type             = AVMEDIA_TYPE_VIDEO,
          .get_video_buffer = avfilter_null_get_video_buffer,
          .start_frame      = avfilter_null_start_frame,
          .draw_slice       = null_draw_slice,
          .end_frame        = end_frame,
          .config_props     = config_input,
          .min_perms        = AV_PERM_WRITE | AV_PERM_READ,
          .rej_perms        = AV_PERM_PRESERVE },
        { .name = NULL}
    },
    .outputs = (const AVFilterPad[]) {
        { .name             = "default",
          .type             = AVMEDIA_TYPE_VIDEO, },
        { .name = NULL}
    },
}

Definition at line 209 of file vf_ass.c.


Generated on Fri Oct 26 02:48:01 2012 for FFmpeg by  doxygen 1.5.8