summaryrefslogtreecommitdiff
path: root/libavutil/buffer.h
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2019-12-07 01:56:56 +0100
committerMarton Balint <cus@passwd.hu>2019-12-26 00:47:24 +0100
commit16685114d5999a9b5ab3ea537d89fca3669d94c9 (patch)
tree635c8f50f3f15c2ad9a34182972216a761f042e3 /libavutil/buffer.h
parente3dca0744d21aa8d2c6f31f74a0e2142376333e1 (diff)
avutil/buffer: add av_buffer_pool_buffer_get_opaque
In order to access the original opaque parameter of a buffer in the buffer pool. (The buffer pool implementation overrides the normal opaque parameter but also saves it so it is accessible). v2: add assertion check before dereferencing the BufferPoolEntry. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavutil/buffer.h')
-rw-r--r--libavutil/buffer.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/libavutil/buffer.h b/libavutil/buffer.h
index 73b6bd0b14..e0f94314f4 100644
--- a/libavutil/buffer.h
+++ b/libavutil/buffer.h
@@ -285,6 +285,19 @@ void av_buffer_pool_uninit(AVBufferPool **pool);
AVBufferRef *av_buffer_pool_get(AVBufferPool *pool);
/**
+ * Query the original opaque parameter of an allocated buffer in the pool.
+ *
+ * @param ref a buffer reference to a buffer returned by av_buffer_pool_get.
+ * @return the opaque parameter set by the buffer allocator function of the
+ * buffer pool.
+ *
+ * @note the opaque parameter of ref is used by the buffer pool implementation,
+ * therefore you have to use this function to access the original opaque
+ * parameter of an allocated buffer.
+ */
+void *av_buffer_pool_buffer_get_opaque(AVBufferRef *ref);
+
+/**
* @}
*/