mirror of https://git.ffmpeg.org/ffmpeg.git
lavfi/vf_libvmaf: update to use libvmaf v1.3.9
Signed-off-by: Kyle Swanson <kswanson@netflix.com>
This commit is contained in:
parent
1581caa7ca
commit
87cc7e8d4e
|
@ -6089,7 +6089,7 @@ enabled libtwolame && require libtwolame twolame.h twolame_init -ltwolame
|
||||||
die "ERROR: libtwolame must be installed and version must be >= 0.3.10"; }
|
die "ERROR: libtwolame must be installed and version must be >= 0.3.10"; }
|
||||||
enabled libv4l2 && require_pkg_config libv4l2 libv4l2 libv4l2.h v4l2_ioctl
|
enabled libv4l2 && require_pkg_config libv4l2 libv4l2 libv4l2.h v4l2_ioctl
|
||||||
enabled libvidstab && require_pkg_config libvidstab "vidstab >= 0.98" vid.stab/libvidstab.h vsMotionDetectInit
|
enabled libvidstab && require_pkg_config libvidstab "vidstab >= 0.98" vid.stab/libvidstab.h vsMotionDetectInit
|
||||||
enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 0.6.2" libvmaf.h compute_vmaf
|
enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 1.3.9" libvmaf.h compute_vmaf
|
||||||
enabled libvo_amrwbenc && require libvo_amrwbenc vo-amrwbenc/enc_if.h E_IF_init -lvo-amrwbenc
|
enabled libvo_amrwbenc && require libvo_amrwbenc vo-amrwbenc/enc_if.h E_IF_init -lvo-amrwbenc
|
||||||
enabled libvorbis && require_pkg_config libvorbis vorbis vorbis/codec.h vorbis_info_init &&
|
enabled libvorbis && require_pkg_config libvorbis vorbis vorbis/codec.h vorbis_info_init &&
|
||||||
require_pkg_config libvorbisenc vorbisenc vorbis/vorbisenc.h vorbis_encode_init
|
require_pkg_config libvorbisenc vorbisenc vorbis/vorbisenc.h vorbis_encode_init
|
||||||
|
|
|
@ -10868,7 +10868,7 @@ The obtained VMAF score is printed through the logging system.
|
||||||
|
|
||||||
It requires Netflix's vmaf library (libvmaf) as a pre-requisite.
|
It requires Netflix's vmaf library (libvmaf) as a pre-requisite.
|
||||||
After installing the library it can be enabled using:
|
After installing the library it can be enabled using:
|
||||||
@code{./configure --enable-libvmaf}.
|
@code{./configure --enable-libvmaf --enable-version3}.
|
||||||
If no model path is specified it uses the default model: @code{vmaf_v0.6.1.pkl}.
|
If no model path is specified it uses the default model: @code{vmaf_v0.6.1.pkl}.
|
||||||
|
|
||||||
The filter has following options:
|
The filter has following options:
|
||||||
|
@ -10902,6 +10902,15 @@ Enables computing ms_ssim along with vmaf.
|
||||||
|
|
||||||
@item pool
|
@item pool
|
||||||
Set the pool method (mean, min or harmonic mean) to be used for computing vmaf.
|
Set the pool method (mean, min or harmonic mean) to be used for computing vmaf.
|
||||||
|
|
||||||
|
@item n_threads
|
||||||
|
Set number of threads to be used when computing vmaf.
|
||||||
|
|
||||||
|
@item n_subsample
|
||||||
|
Set interval for frame subsampling used when computing vmaf.
|
||||||
|
|
||||||
|
@item enable_conf_interval
|
||||||
|
Enables confidence interval.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
This filter also supports the @ref{framesync} options.
|
This filter also supports the @ref{framesync} options.
|
||||||
|
|
|
@ -62,6 +62,9 @@ typedef struct LIBVMAFContext {
|
||||||
int ssim;
|
int ssim;
|
||||||
int ms_ssim;
|
int ms_ssim;
|
||||||
char *pool;
|
char *pool;
|
||||||
|
int n_threads;
|
||||||
|
int n_subsample;
|
||||||
|
int enable_conf_interval;
|
||||||
int error;
|
int error;
|
||||||
} LIBVMAFContext;
|
} LIBVMAFContext;
|
||||||
|
|
||||||
|
@ -78,6 +81,9 @@ static const AVOption libvmaf_options[] = {
|
||||||
{"ssim", "Enables computing ssim along with vmaf.", OFFSET(ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
{"ssim", "Enables computing ssim along with vmaf.", OFFSET(ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||||
{"ms_ssim", "Enables computing ms-ssim along with vmaf.", OFFSET(ms_ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
{"ms_ssim", "Enables computing ms-ssim along with vmaf.", OFFSET(ms_ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||||
{"pool", "Set the pool method to be used for computing vmaf.", OFFSET(pool), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
{"pool", "Set the pool method to be used for computing vmaf.", OFFSET(pool), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||||
|
{"n_threads", "Set number of threads to be used when computing vmaf.", OFFSET(n_threads), AV_OPT_TYPE_INT, {.i64=0}, 0, UINT_MAX, FLAGS},
|
||||||
|
{"n_subsample", "Set interval for frame subsampling used when computing vmaf.", OFFSET(n_subsample), AV_OPT_TYPE_INT, {.i64=1}, 1, UINT_MAX, FLAGS},
|
||||||
|
{"enable_conf_interval", "Enables confidence interval.", OFFSET(enable_conf_interval), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -166,7 +172,8 @@ static void compute_vmaf_score(LIBVMAFContext *s)
|
||||||
read_frame, s, s->model_path, s->log_path,
|
read_frame, s, s->model_path, s->log_path,
|
||||||
s->log_fmt, 0, 0, s->enable_transform,
|
s->log_fmt, 0, 0, s->enable_transform,
|
||||||
s->phone_model, s->psnr, s->ssim,
|
s->phone_model, s->psnr, s->ssim,
|
||||||
s->ms_ssim, s->pool);
|
s->ms_ssim, s->pool,
|
||||||
|
s->n_threads, s->n_subsample, s->enable_conf_interval);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void *call_vmaf(void *ctx)
|
static void *call_vmaf(void *ctx)
|
||||||
|
|
Loading…
Reference in New Issue