summaryrefslogtreecommitdiff
path: root/libavfilter/avfilter.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2021-11-22 14:39:11 +0100
committerAnton Khirnov <anton@khirnov.net>2021-12-04 14:07:19 +0100
commitb9c928a486fda3c0d79b153591ac86beb1c53708 (patch)
tree4cbc1fe372de041aa3a147c60a31bf5fba532356 /libavfilter/avfilter.h
parent944c34a94c3150fc84816c3288cc6f2143f1581b (diff)
avfilter: add AVFILTER_FLAG_METADATA_ONLY
This flag allows distinguishing between filters that actually modify the data and those that only modify metadata or gather some stream information.
Diffstat (limited to 'libavfilter/avfilter.h')
-rw-r--r--libavfilter/avfilter.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index f7208754a7..b105dc3159 100644
--- a/libavfilter/avfilter.h
+++ b/libavfilter/avfilter.h
@@ -120,6 +120,22 @@ enum AVMediaType avfilter_pad_get_type(const AVFilterPad *pads, int pad_idx);
*/
#define AVFILTER_FLAG_SLICE_THREADS (1 << 2)
/**
+ * The filter is a "metadata" filter - it does not modify the frame data in any
+ * way. It may only affect the metadata (i.e. those fields copied by
+ * av_frame_copy_props()).
+ *
+ * More precisely, this means:
+ * - video: the data of any frame output by the filter must be exactly equal to
+ * some frame that is received on one of its inputs. Furthermore, all frames
+ * produced on a given output must correspond to frames received on the same
+ * input and their order must be unchanged. Note that the filter may still
+ * drop or duplicate the frames.
+ * - audio: the data produced by the filter on any of its outputs (viewed e.g.
+ * as an array of interleaved samples) must be exactly equal to the data
+ * received by the filter on one of its inputs.
+ */
+#define AVFILTER_FLAG_METADATA_ONLY (1 << 3)
+/**
* Some filters support a generic "enable" expression option that can be used
* to enable or disable a filter in the timeline. Filters supporting this
* option have this flag set. When the enable expression is false, the default