aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter
diff options
context:
space:
mode:
authorVitor Sessak <vitor1001@gmail.com>2008-02-15 22:13:52 +0000
committerVitor Sessak <vitor1001@gmail.com>2008-02-15 22:13:52 +0000
commit60bf6ce3ba7c2950de704883f80e44ac87555000 (patch)
treec8265a5e465cd396982f33923e037ac1a6eb6741 /libavfilter
parentb42a6a92ffc5969baed31c1b6558ba1f6aa2b20c (diff)
downloadffmpeg-60bf6ce3ba7c2950de704883f80e44ac87555000.tar.gz
Allow filters to set the requirements on permissions for incoming buffers.
Commited in SoC by Bobby Bingham on 2007-08-17 16:40:26 Originally committed as revision 12098 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/avfilter.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index f86f9fe31b..bcc1fd9c75 100644
--- a/libavfilter/avfilter.h
+++ b/libavfilter/avfilter.h
@@ -118,6 +118,25 @@ struct AVFilterPad
#define AV_PAD_VIDEO 0 ///< video pad
/**
+ * Minimum required permissions on incoming buffers. Any buffers with
+ * insufficient permissions will be automatically copied by the filter
+ * system to a new buffer which provides the needed access permissions.
+ *
+ * Input pads only.
+ */
+ int min_perms;
+
+ /**
+ * Permissions which are not accepted on incoming buffers. Any buffer
+ * which has any of these permissions set be automatically copied by the
+ * filter system to a new buffer which does not have those permissions.
+ * This can be used to easily disallow buffers with AV_PERM_REUSE.
+ *
+ * Input pads only.
+ */
+ int rej_perms;
+
+ /**
* Callback to get a list of supported formats. The returned list should
* be terminated by -1 (see avfilter_make_format_list for an easy way to
* create such a list).
@@ -272,6 +291,15 @@ struct AVFilterLink
int h; ///< agreed upon image height
enum PixelFormat format; ///< agreed upon image colorspace
+ /**
+ * The picture reference currently being sent across the link by the source
+ * filter. This is used internally by the filter system to allow
+ * automatic copying of pictures which d not have sufficient permissions
+ * for the destination. This should not be accessed directly by the
+ * filters.
+ */
+ AVFilterPicRef *srcpic;
+
AVFilterPicRef *cur_pic;
AVFilterPicRef *outpic;
};