#include "libavutil/avstring.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
#include "dualinput.h"
#include "drawutils.h"
#include "formats.h"
#include "internal.h"
#include "ssim.h"
#include "video.h"
Go to the source code of this file.
|
| AVFILTER_DEFINE_CLASS (ssim) |
|
static void | set_meta (AVDictionary **metadata, const char *key, char comp, float d) |
|
static void | ssim_4x4xn (const uint8_t *main, ptrdiff_t main_stride, const uint8_t *ref, ptrdiff_t ref_stride, int(*sums)[4], int width) |
|
static float | ssim_end1 (int s1, int s2, int ss, int s12) |
|
static float | ssim_endn (const int(*sum0)[4], const int(*sum1)[4], int width) |
|
static float | ssim_plane (SSIMDSPContext *dsp, uint8_t *main, int main_stride, uint8_t *ref, int ref_stride, int width, int height, void *temp) |
|
static double | ssim_db (double ssim, double weight) |
|
static AVFrame * | do_ssim (AVFilterContext *ctx, AVFrame *main, const AVFrame *ref) |
|
static av_cold int | init (AVFilterContext *ctx) |
|
static int | query_formats (AVFilterContext *ctx) |
|
static int | config_input_ref (AVFilterLink *inlink) |
|
static int | config_output (AVFilterLink *outlink) |
|
static int | filter_frame (AVFilterLink *inlink, AVFrame *buf) |
|
static int | request_frame (AVFilterLink *outlink) |
|
static av_cold void | uninit (AVFilterContext *ctx) |
|
AVFILTER_DEFINE_CLASS |
( |
ssim |
| ) |
|
static void set_meta |
( |
AVDictionary ** |
metadata, |
|
|
const char * |
key, |
|
|
char |
comp, |
|
|
float |
d |
|
) |
| |
|
static |
static void ssim_4x4xn |
( |
const uint8_t * |
main, |
|
|
ptrdiff_t |
main_stride, |
|
|
const uint8_t * |
ref, |
|
|
ptrdiff_t |
ref_stride, |
|
|
int(*) |
sums[4], |
|
|
int |
width |
|
) |
| |
|
static |
static float ssim_end1 |
( |
int |
s1, |
|
|
int |
s2, |
|
|
int |
ss, |
|
|
int |
s12 |
|
) |
| |
|
static |
static float ssim_endn |
( |
const int(*) |
sum0[4], |
|
|
const int(*) |
sum1[4], |
|
|
int |
width |
|
) |
| |
|
static |
static double ssim_db |
( |
double |
ssim, |
|
|
double |
weight |
|
) |
| |
|
static |
Initial value:
Definition at line 69 of file vf_ssim.c.
Initial value:= {
{
.name = "main",
},{
.name = "reference",
},
}
static int filter_frame(AVFilterLink *inlink, AVFrame *buf)
static int config_input_ref(AVFilterLink *inlink)
Definition at line 363 of file vf_ssim.c.
Initial value:= {
{
.name = "default",
},
}
static int request_frame(AVFilterLink *outlink)
static int config_output(AVFilterLink *outlink)
Definition at line 377 of file vf_ssim.c.
Initial value:= {
.name = "ssim",
.priv_class = &ssim_class,
}
static av_cold void uninit(AVFilterContext *ctx)
static const AVFilterPad outputs[]
static av_cold int init(AVFilterContext *ctx)
static const AVFilterPad ssim_inputs[]
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static const AVFilterPad inputs[]
static const AVFilterPad ssim_outputs[]
static int query_formats(AVFilterContext *ctx)
Definition at line 387 of file vf_ssim.c.