summaryrefslogtreecommitdiff
path: root/gst/gstbufferpool.h
AgeCommit message (Collapse)AuthorFilesLines
2012-04-25bufferpool: Reset the buffer before releasing into poolWim Taymans1-2/+1
Reset the buffer not after we acquire but before we release into the pool. This makes sure that the pool only has buffers in a clean state and that we can set extra metadata on buffers in the acquire method. this means that we need to remove an argument from the method.
2012-04-17meta: add LOCKED flagWim Taymans1-3/+4
Add a new LOCKED flag to the metadata. Refuse removing LOCKED metadata from a buffer. Mark the metadata from the bufferpool LOCKED. Add unit test for LOCKED flag
2012-03-28review some docsWim Taymans1-6/+6
2012-03-27bufferpool: remove const from get/set_paramWim Taymans1-2/+2
Remove the const from the GstCaps in get/set_param. set_param modifies the refcount of the caps. Don't increment the refcount of the caps result of get_param like we do with other objects. Update some annotiations.
2012-03-15bufferpool: split bufferpool configurationWim Taymans1-6/+9
Make separate methods to control the bufferpool and the allocator used by the bufferpool. Make it possible to change the allocator of a pool.
2012-03-15GstBufferPoolParams -> GstBufferPoolAcquireParamsWim Taymans1-23/+23
Because those flags are not from the bufferpool but for the acquire function.
2012-03-14query: also include padding in ALLOCATION queryWim Taymans1-3/+3
Negotiating padding is needed on second thought so include it in the ALLOCATION query. Make the bufferpool take padding into account when allocating. Make basesrc take padding into account. Use padding and prefix when allocating in basetransform.
2012-02-27remove some useless includes in .hWim Taymans1-3/+0
2012-02-27bufferpool: make more stuff privateWim Taymans1-10/+3
2012-02-23bufferpool: improve docsWim Taymans1-1/+3
2012-02-02remove TRACE_NAME from headersWim Taymans1-7/+0
2011-12-23bufferpool: cleanup metadata in reset_bufferWim Taymans1-1/+2
Use the reset_buffer vmethod to remove the unpooled metadata from the buffer.
2011-11-14fix docsWim Taymans1-0/+1
2011-11-11.h: fix header filesWim Taymans1-0/+2
Ensure correct indentation and :retab. Make sure all structures have padding Fix up some old ABI additions.
2011-09-26docs: fix docsWim Taymans1-0/+3
2011-08-04bufferpool: add gst_buffer_pool_is_active()Wim Taymans1-0/+1
2011-07-30bufferpool: add method to check for an optionWim Taymans1-0/+1
Add a method to check if an option is supported on the bufferpool.
2011-07-29bufferpool: add options API to bufferpoolWim Taymans1-7/+8
Make it possible to query the supported options of a bufferpool and enable options. This is a bit more generic than the API to enable metadata. The purpose is to make it possible to add new custom config options to the configuration of the bufferpool when supported.
2011-07-21bufferpool: add reset_buffer vmethodWim Taymans1-1/+34
Add a vmethod to reset a buffer to its original state. Add a default implementation that resets the flags, timestamps and offsets. Add some more docs.
2011-07-15bufferpool: add macro to check for flushingWim Taymans1-0/+9
2011-06-20bufferpool: add function to set metadata apiWim Taymans1-13/+21
Add a function to retrieve an array of supported metadata apis from the the bufferpool. Add functions to configure and query the configured metadata apis in a bufferpool configuration.
2011-06-13bufferpool: small indentation fixWim Taymans1-1/+1
2011-06-11bufferpool: remove postfix parameterWim Taymans1-2/+2
Remove the postfix parameter, it's not used and can be done differently.
2011-06-05docs: update for API changesTim-Philipp Müller1-1/+1
Also remove GST_PAD_CHECKGETRANGEFUNC macro
2011-06-03bufferpool: make the default behaviour to waitWim Taymans1-2/+2
The most common case is to not specify any flags when doing the allocation. Make the allocation from a pool with a maximum amount of buffers block by default for this reason.
2011-03-04bufferpool: add caps to the configWim Taymans1-4/+4
Add the caps to the configuration parameters of the pool. Initialize the private data
2011-03-02buffer: add pool to buffer structureWim Taymans1-1/+0
Keep a pointer to the bufferpool. Release the buffer to the pool when finalizing. Make sure the pool sets itself as the pool member of buffers that it sends out.
2011-03-02bufferpool: Rework buffer management a littleWim Taymans1-1/+4
Add start/stop methods to allow for bulk allocation of buffers. Free buffers only when all outstanding buffers returned. Make things more threadsafe wrt flushing and starting/stopping by keeping track of start and stop method calls.
2011-03-02bufferpool: memory management cleanupsWim Taymans1-1/+2
Use a lock to protect concurrect execution of set_config and set_active. Start freeing the buffers when flushing and all buffers are returned to the pool. Make a copy of the config to avoid crashing with concurrent access.
2011-03-02bufferpool: more updatesWim Taymans1-2/+4
Keep track if the buffer is configured and block activation when not configured yet. Keep track of outstanding buffers and disallow configuration when not all buffers are returned to the pool. We need to do this or else we might end up with wrong buffers in the pool. Add return value to set_active. Small cleanups. Fix finalize.
2011-03-02bufferpool: rename 'flushing' to 'active'Wim Taymans1-3/+3
Rename the flushing variable and methods to active to better match the other gstreamer name conventions
2011-03-02bufferpool: use GstStructure to configure the poolWim Taymans1-32/+20
Use a GstStructure to provide the pool with the right configuration. Also provide some helper methods to configure such a structure. don't pass the config in alloc_buffer, pool implementation will already have parsed it during set_config. Update defs
2011-03-02bufferpool: add simple bufferpool helper objectWim Taymans1-0/+165
2002-07-08- Removed bufferpool code and move that to gstbuffer.cWim Taymans1-99/+0
Original commit message from CVS: - Removed bufferpool code and move that to gstbuffer.c - implemented refcounting on GstData - implemented new buffer code based on Company's work in the EVENTS2 branch - added boxed types for GstData/GstEvent/GstBuffer/GstBufferPool - added refcounting to bufferpools and events - use lockfree allocation for buffers - simplified the clock, use lockfree allocation - use GQueue in GstQueue for faster access to the tail element - update core plugins to the new event API
2001-10-21API docs. revived _buffer_ref_by_count fast types for scheduler and bin.Wim Taymans1-3/+2
Original commit message from CVS: API docs. revived _buffer_ref_by_count fast types for scheduler and bin. error checking on plugin features; removed some prototypes that were not implemented (gst_pipeline_iterate comes to mind) remove gst_pad_event until we know what it's supposed to do. remove sinesrc, it wasn't compiles anymore, so... updates to various elements that used the old event API.
2001-08-27The bufferpool api has changed. Check gstbufferpool.h to see the updated ↵Andy Wingo1-0/+3
interface. Original commit message from CVS: The bufferpool api has changed. Check gstbufferpool.h to see the updated interface. Also, the default bufferpool implementation has been finished somewhat. Take a look at speed.c to see an example of its use, when I get the plugins committed.
2001-08-27hopefully the last commit on libgst wrt bufferpoolsAndy Wingo1-13/+12
Original commit message from CVS: hopefully the last commit on libgst wrt bufferpools
2001-08-27more changes...Andy Wingo1-15/+9
Original commit message from CVS: more changes...
2001-08-27bufferpool changes (next commit will update plugins)Andy Wingo1-18/+22
Original commit message from CVS: bufferpool changes (next commit will update plugins)
2001-08-06Added a missing UNLOCK macro.Wim Taymans1-0/+1
Original commit message from CVS: Added a missing UNLOCK macro.
2001-06-21added ref counting to the buffer pool. also _destroy will clean up the ↵Steve Baker1-3/+22
buffer pool mem_chunk if it is the default imp... Original commit message from CVS: added ref counting to the buffer pool. also _destroy will clean up the buffer pool mem_chunk if it is the default implementation
2001-06-17added _gst_buffer_pool_initializeSteve Baker1-0/+2
Original commit message from CVS: added _gst_buffer_pool_initialize
2001-06-17added a default bufferpool factory function. it reuses existing instances of ↵Steve Baker1-0/+3
bufferpool if requests are made for exis... Original commit message from CVS: added a default bufferpool factory function. it reuses existing instances of bufferpool if requests are made for existing buffer sizes
2000-12-28Updated copyright in all the libgst files.Erik Walthinsen1-3/+6
Original commit message from CVS: Updated copyright in all the libgst files. Created gst_private.h, set up all files to use it.
2000-12-15Header cleanup: try to include as little as possible; this will probably ↵Wim Taymans1-1/+1
speed up compilation a bit. Original commit message from CVS: Header cleanup: try to include as little as possible; this will probably speed up compilation a bit. changed the .c files to use #include "..." Fix for the 'plugins are loaded twice' bug. Fix 22186: GstObject flags are now used everywhere. Added *_FLAG_LAST so elements do not use the same flags. Added some padding in the flag enum for future expansion.
2000-11-04Added the excellent mpeg2dec decoder. Not 100% optimized but allready very fast.Wim Taymans1-8/+12
Original commit message from CVS: Added the excellent mpeg2dec decoder. Not 100% optimized but allready very fast. More cleanup.
2000-08-14Added the bufferpool handler.Wim Taymans1-0/+68
Original commit message from CVS: Added the bufferpool handler. This object is able to generate buffers and is passed between elements to exchange buffers. Elements can also use this pool to efficiently generate output buffers.