FFmpeg
Data Structures | Macros | Enumerations | Functions | Variables
avf_avectorscope.c File Reference
#include "libavutil/avassert.h"
#include "libavutil/channel_layout.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include "avfilter.h"
#include "filters.h"
#include "formats.h"
#include "audio.h"
#include "video.h"
#include "internal.h"

Go to the source code of this file.

Data Structures

struct  AudioVectorScopeContext
 

Macros

#define OFFSET(x)   offsetof(AudioVectorScopeContext, x)
 
#define FLAGS   AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM
 

Enumerations

enum  VectorScopeMode { LISSAJOUS, LISSAJOUS_XY, POLAR, MODE_NB }
 
enum  VectorScopeDraw { DOT, LINE, DRAW_NB }
 
enum  VectorScopeScale {
  LIN, SQRT, CBRT, LOG,
  SCALE_NB
}
 

Functions

 AVFILTER_DEFINE_CLASS (avectorscope)
 
static void draw_dot (AudioVectorScopeContext *s, unsigned x, unsigned y)
 
static void draw_line (AudioVectorScopeContext *s, int x0, int y0, int x1, int y1)
 
static void fade (AudioVectorScopeContext *s)
 
static int query_formats (AVFilterContext *ctx)
 
static int config_input (AVFilterLink *inlink)
 
static int config_output (AVFilterLink *outlink)
 
static int filter_frame (AVFilterLink *inlink, AVFrame *insamples)
 
static int activate (AVFilterContext *ctx)
 
static av_cold void uninit (AVFilterContext *ctx)
 

Variables

static const AVOption avectorscope_options []
 
static const AVFilterPad audiovectorscope_inputs []
 
static const AVFilterPad audiovectorscope_outputs []
 
const AVFilter ff_avf_avectorscope
 

Detailed Description

audio to video multimedia vectorscope filter

Definition in file avf_avectorscope.c.

Macro Definition Documentation

◆ OFFSET

#define OFFSET (   x)    offsetof(AudioVectorScopeContext, x)

Definition at line 76 of file avf_avectorscope.c.

◆ FLAGS

Definition at line 77 of file avf_avectorscope.c.

Enumeration Type Documentation

◆ VectorScopeMode

Enumerator
LISSAJOUS 
LISSAJOUS_XY 
POLAR 
MODE_NB 

Definition at line 37 of file avf_avectorscope.c.

◆ VectorScopeDraw

Enumerator
DOT 
LINE 
DRAW_NB 

Definition at line 44 of file avf_avectorscope.c.

◆ VectorScopeScale

Enumerator
LIN 
SQRT 
CBRT 
LOG 
SCALE_NB 

Definition at line 50 of file avf_avectorscope.c.

Function Documentation

◆ AVFILTER_DEFINE_CLASS()

AVFILTER_DEFINE_CLASS ( avectorscope  )

◆ draw_dot()

static void draw_dot ( AudioVectorScopeContext s,
unsigned  x,
unsigned  y 
)
static

Definition at line 117 of file avf_avectorscope.c.

Referenced by draw_line(), and filter_frame().

◆ draw_line()

static void draw_line ( AudioVectorScopeContext s,
int  x0,
int  y0,
int  x1,
int  y1 
)
static

Definition at line 137 of file avf_avectorscope.c.

Referenced by filter_frame().

◆ fade()

static void fade ( AudioVectorScopeContext s)
static

Definition at line 163 of file avf_avectorscope.c.

Referenced by filter_frame().

◆ query_formats()

static int query_formats ( AVFilterContext ctx)
static

Definition at line 182 of file avf_avectorscope.c.

◆ config_input()

static int config_input ( AVFilterLink inlink)
static

Definition at line 209 of file avf_avectorscope.c.

◆ config_output()

static int config_output ( AVFilterLink outlink)
static

Definition at line 219 of file avf_avectorscope.c.

◆ filter_frame()

static int filter_frame ( AVFilterLink inlink,
AVFrame insamples 
)
static

Definition at line 234 of file avf_avectorscope.c.

Referenced by activate().

◆ activate()

static int activate ( AVFilterContext ctx)
static

Definition at line 371 of file avf_avectorscope.c.

◆ uninit()

static av_cold void uninit ( AVFilterContext ctx)
static

Definition at line 393 of file avf_avectorscope.c.

Variable Documentation

◆ avectorscope_options

const AVOption avectorscope_options[]
static

Definition at line 79 of file avf_avectorscope.c.

◆ audiovectorscope_inputs

const AVFilterPad audiovectorscope_inputs[]
static
Initial value:
= {
{
.name = "default",
.config_props = config_input,
},
{ NULL }
}

Definition at line 400 of file avf_avectorscope.c.

◆ audiovectorscope_outputs

const AVFilterPad audiovectorscope_outputs[]
static
Initial value:
= {
{
.name = "default",
.config_props = config_output,
},
{ NULL }
}

Definition at line 409 of file avf_avectorscope.c.

◆ ff_avf_avectorscope

const AVFilter ff_avf_avectorscope
Initial value:
= {
.name = "avectorscope",
.description = NULL_IF_CONFIG_SMALL("Convert input audio to vectorscope video output."),
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(AudioVectorScopeContext),
.priv_class = &avectorscope_class,
}

Definition at line 418 of file avf_avectorscope.c.

inputs
these buffered frames must be flushed immediately if a new input produces new the filter must not call request_frame to get more It must just process the frame or queue it The task of requesting more frames is left to the filter s request_frame method or the application If a filter has several inputs
Definition: filter_design.txt:243
AVMEDIA_TYPE_AUDIO
@ AVMEDIA_TYPE_AUDIO
Definition: avutil.h:202
outputs
static const AVFilterPad outputs[]
Definition: af_acontrast.c:203
NULL
#define NULL
Definition: coverity.c:32
config_input
static int config_input(AVFilterLink *inlink)
Definition: avf_avectorscope.c:209
AudioVectorScopeContext
Definition: avf_avectorscope.c:58
NULL_IF_CONFIG_SMALL
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition: internal.h:117
audiovectorscope_inputs
static const AVFilterPad audiovectorscope_inputs[]
Definition: avf_avectorscope.c:400
config_output
static int config_output(AVFilterLink *outlink)
Definition: avf_avectorscope.c:219
uninit
static av_cold void uninit(AVFilterContext *ctx)
Definition: avf_avectorscope.c:393
AVMEDIA_TYPE_VIDEO
@ AVMEDIA_TYPE_VIDEO
Definition: avutil.h:201
activate
static int activate(AVFilterContext *ctx)
Definition: avf_avectorscope.c:371
query_formats
static int query_formats(AVFilterContext *ctx)
Definition: avf_avectorscope.c:182
audiovectorscope_outputs
static const AVFilterPad audiovectorscope_outputs[]
Definition: avf_avectorscope.c:409