FFmpeg
Classes | Macros | Typedefs | Enumerations | Functions | Variables
vsrc_mandelbrot.c File Reference

Mandelbrot fractal renderer. More...

#include "avfilter.h"
#include "formats.h"
#include "video.h"
#include "internal.h"
#include "libavutil/imgutils.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include <float.h>
#include <math.h>

Classes

struct  Point
 
struct  MBContext
 

Macros

#define SQR(a)   ((a)*(a))
 
#define OFFSET(x)   offsetof(MBContext, x)
 
#define FLAGS   AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
 
#define Z_Z2_C(outr, outi, inr, ini)
 
#define Z_Z2_C_ZYKLUS(outr, outi, inr, ini, Z)
 

Typedefs

typedef struct Point Point
 
typedef struct MBContext MBContext
 

Enumerations

enum  Outer { ITERATION_COUNT, NORMALIZED_ITERATION_COUNT, WHITE, OUTZ }
 
enum  Inner { BLACK, PERIOD, CONVTIME, MINCOL }
 

Functions

 AVFILTER_DEFINE_CLASS (mandelbrot)
 

Variables

AVFilter ff_vsrc_mandelbrot
 

Detailed Description

Mandelbrot fractal renderer.

Macro Definition Documentation

§ Z_Z2_C

#define Z_Z2_C (   outr,
  outi,
  inr,
  ini 
)
Value:
outr= inr*inr - ini*ini + cr;\
outi= 2*inr*ini + ci;

§ Z_Z2_C_ZYKLUS

#define Z_Z2_C_ZYKLUS (   outr,
  outi,
  inr,
  ini,
 
)
Value:
Z_Z2_C(outr,outi,inr,ini)\
if(use_zyklus){\
if(Z && fabs(s->zyklus[i>>1][0]-outr)+fabs(s->zyklus[i>>1][1]-outi) <= epsilon)\
break;\
}\
s->zyklus[i][0]= outr;\
s->zyklus[i][1]= outi;\

Variable Documentation

§ ff_vsrc_mandelbrot

AVFilter ff_vsrc_mandelbrot
Initial value:
= {
.name = "mandelbrot",
.description = NULL_IF_CONFIG_SMALL("Render a Mandelbrot fractal."),
.priv_size = sizeof(MBContext),
.priv_class = &mandelbrot_class,
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = NULL,
.outputs = mandelbrot_outputs,
}
Definition: vsrc_mandelbrot.c:60
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186