25 #ifndef AVUTIL_BUFFER_H 
   26 #define AVUTIL_BUFFER_H 
  113 #define AV_BUFFER_FLAG_READONLY (1 << 0) 
  131                               void (*free)(
void *opaque, 
uint8_t *data),
 
  132                               void *opaque, 
int flags);
 
int av_buffer_make_writable(AVBufferRef **buf)
Create a writable reference from a given buffer reference, avoiding data copy if possible. 
void av_buffer_unref(AVBufferRef **buf)
Free a given reference and automatically free the buffer if there are no more references to it...
ptrdiff_t const GLvoid * data
void av_buffer_default_free(void *opaque, uint8_t *data)
Default free callback, which calls av_free() on the buffer data. 
void(* pool_free)(void *opaque)
AVBufferRef * av_buffer_create(uint8_t *data, int size, void(*free)(void *opaque, uint8_t *data), void *opaque, int flags)
Create an AVBuffer from an existing array. 
int av_buffer_realloc(AVBufferRef **buf, int size)
Reallocate a given buffer. 
int av_buffer_is_writable(const AVBufferRef *buf)
AVBufferPool * av_buffer_pool_init2(int size, void *opaque, AVBufferRef *(*alloc)(void *opaque, int size), void(*pool_free)(void *opaque))
Allocate and initialize a buffer pool with a more complex allocator. 
AVBufferRef * av_buffer_alloc(int size)
Allocate an AVBuffer of the given size using av_malloc(). 
uint8_t * data
The data buffer. 
int av_buffer_get_ref_count(const AVBufferRef *buf)
AVBufferRef * av_buffer_allocz(int size)
Same as av_buffer_alloc(), except the returned buffer will be initialized to zero. 
void * av_buffer_get_opaque(const AVBufferRef *buf)
void av_buffer_pool_uninit(AVBufferPool **pool)
Mark the pool as being available for freeing. 
A reference counted buffer type. 
int size
Size of data in bytes. 
A reference to a data buffer. 
AVBufferPool * av_buffer_pool_init(int size, AVBufferRef *(*alloc)(int size))
Allocate and initialize a buffer pool. 
AVBufferRef * av_buffer_ref(AVBufferRef *buf)
Create a new reference to an AVBuffer. 
AVBufferRef * av_buffer_pool_get(AVBufferPool *pool)
Allocate a new AVBuffer, reusing an old buffer from the pool when available. 
AVBufferRef *(* alloc)(int size)