mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2026-06-19 19:03:00 +02:00
avfilter/vf_maskedminmax: add support for commands
This commit is contained in:
@@ -13991,6 +13991,10 @@ copied from first stream.
|
|||||||
By default value 0xf, all planes will be processed.
|
By default value 0xf, all planes will be processed.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
@subsection Commands
|
||||||
|
|
||||||
|
This filter supports the all above options as @ref{commands}.
|
||||||
|
|
||||||
@section maskedmerge
|
@section maskedmerge
|
||||||
|
|
||||||
Merge the first input stream with the second input stream using per pixel
|
Merge the first input stream with the second input stream using per pixel
|
||||||
@@ -14026,6 +14030,10 @@ copied from first stream.
|
|||||||
By default value 0xf, all planes will be processed.
|
By default value 0xf, all planes will be processed.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
@subsection Commands
|
||||||
|
|
||||||
|
This filter supports the all above options as @ref{commands}.
|
||||||
|
|
||||||
@section maskedthreshold
|
@section maskedthreshold
|
||||||
Pick pixels comparing absolute difference of two video streams with fixed
|
Pick pixels comparing absolute difference of two video streams with fixed
|
||||||
threshold.
|
threshold.
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
#include "framesync.h"
|
#include "framesync.h"
|
||||||
|
|
||||||
#define OFFSET(x) offsetof(MaskedMinMaxContext, x)
|
#define OFFSET(x) offsetof(MaskedMinMaxContext, x)
|
||||||
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM
|
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_RUNTIME_PARAM
|
||||||
|
|
||||||
typedef struct ThreadData {
|
typedef struct ThreadData {
|
||||||
AVFrame *src, *f1, *f2, *dst;
|
AVFrame *src, *f1, *f2, *dst;
|
||||||
@@ -50,7 +50,7 @@ typedef struct MaskedMinMaxContext {
|
|||||||
} MaskedMinMaxContext;
|
} MaskedMinMaxContext;
|
||||||
|
|
||||||
static const AVOption maskedminmax_options[] = {
|
static const AVOption maskedminmax_options[] = {
|
||||||
{ "planes", "set planes", OFFSET(planes), AV_OPT_TYPE_INT, {.i64=0xF}, 0, 0xF, FLAGS },
|
{ "planes", "set planes", OFFSET(planes), AV_OPT_TYPE_INT, {.i64=0xF}, 0, 0xF, FLAGS },
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -340,6 +340,7 @@ AVFilter ff_vf_maskedmin = {
|
|||||||
.inputs = maskedminmax_inputs,
|
.inputs = maskedminmax_inputs,
|
||||||
.outputs = maskedminmax_outputs,
|
.outputs = maskedminmax_outputs,
|
||||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
|
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
|
||||||
|
.process_command = ff_filter_process_command,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define maskedmax_options maskedminmax_options
|
#define maskedmax_options maskedminmax_options
|
||||||
@@ -357,4 +358,5 @@ AVFilter ff_vf_maskedmax = {
|
|||||||
.inputs = maskedminmax_inputs,
|
.inputs = maskedminmax_inputs,
|
||||||
.outputs = maskedminmax_outputs,
|
.outputs = maskedminmax_outputs,
|
||||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
|
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
|
||||||
|
.process_command = ff_filter_process_command,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user