summaryrefslogtreecommitdiff
path: root/gst/gstbuffer.h
AgeCommit message (Collapse)AuthorFilesLines
2021-05-24buffer: rename new gst_buffer_new_copy() to gst_buffer_new_memdup()Tim-Philipp Müller1-1/+1
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/826 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/827>
2021-05-23buffer: add gst_buffer_new_copy() convenience functionTim-Philipp Müller1-0/+4
More convenient and discoverable variant of the fairly widely-used gst_buffer_new_wrapped(g_memdup(data,size),size). Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/826>
2021-02-08docs: fix GST_BUFFER_COPY_DEEP comment titleMathieu Duponchelle1-1/+1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/752>
2021-02-05docs: standardize GstBuffer documentationMathieu Duponchelle1-23/+46
* Don't mention explicitly that API is MT safe, this implies that other API is not. GStreamer API is assumed to be MT safe, thread safety should only be explicitly mentioned when API is *not* MT safe * Don't repeat what annotations are stating with respect to ownership transfer, nullability * Document enumeration members in standalone comments, so that their Since tag is accounted for by gobject-introspection * Misc cleanup / typo fixes / addition of links Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/748>
2021-01-11gst: Add non-inline methods for bindings to able to use core APIsSeungha Yang1-67/+20
Provide non-inline version of refcounting APIs so that it can be consumed by bindings Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer-sharp/-/issues/46 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/728>
2020-09-27meta: expose API to register and create custom metaMathieu Duponchelle1-0/+8
Custom meta is backed by a GstStructure, and does not require that users of the API expose their GstMeta implementation as public API for other components to make use of it. In addition, it provides a simpler interface by ignoring the impl vs. api distinction that the regular API exposes. This new API is meant to be the meta counterpart to custom events and messages, and to be more convenient than the lower-level API when the absolute best performance isn't a requirement. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/609>
2019-11-18gstbuffer: update documentationStéphane Cerveau1-4/+4
remove unclear documentation about GST_BUFFER_FLAG_MARKER
2019-06-04Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionallyNiels De Graef1-4/+0
Since we started depending on GLib 2.44, we can be sure this macro is defined (it will be a no-op on compilers that don't support it). For plugins we should just start using `G_DECLARE_FINAL_TYPE` which means we no longer need the macro there, but for most types in core we don't want to break ABI, which means it's better to just keep it like it is (and use the `#ifdef` instead).
2019-05-13doc: Fix hotdoc warningsThibault Saunier1-4/+8
* Making sure that `static inline` function are in the GIR (by first defining them, and make sure to mark as skiped) * Do not try to link to unexisting symbols * Also generate GIR information about gst_tracers
2019-04-23gst: Fix various Since markersSebastian Dröge1-3/+3
2018-11-06gst/buffer: add a new function for wrapping GBytesMatthew Waters1-0/+2
One restriction on the GBytes is that the data cannot be NULL as this is explicitly forbidden by GstMemory. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/318
2018-11-05gst_clear_*: Cast to GstMiniObject** when neededJan Alexander Steffens (heftig)1-1/+1
2018-11-05buffer: add gst_clear_buffer()Niels De Graef1-0/+19
Basically, you can use this instead of using gst_buffer_unref (which needs to be preceded by a NULL-check). Also fixes #275
2018-03-13gst: GST_EXPORT -> GST_APITim-Philipp Müller1-61/+61
We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT.
2018-02-03buffer: fix gtk-doc warning regarding _get_n_meta() declarationTim-Philipp Müller1-1/+1
2018-01-31gstbuffer.h: move FLAG_LAST documentation back to the bottomMathieu Duponchelle1-2/+2
2018-01-31gstbuffer: add GST_BUFFER_FLAG_NON_DROPPABLEMathieu Duponchelle1-43/+49
This can be used to identify buffers for which a higher percentage of redundancy should be allocated when performing forward error correction, or to prevent still video frames from being dropped by elements due to QoS. https://bugzilla.gnome.org/show_bug.cgi?id=793008
2018-01-27buffer: add gst_buffer_get_n_meta() convenience functionTim-Philipp Müller1-0/+3
Counts how many metas there are for a certain api type. https://bugzilla.gnome.org/show_bug.cgi?id=791918
2017-05-15gst: mark symbols explicitly for export with GST_EXPORTTim-Philipp Müller1-8/+95
One omission: gst_allocator_sysmem_get_type() was exported but never in any public header file.
2017-05-12buffer: Add GstReferenceTimestampMetaSebastian Dröge1-0/+43
This is a meta that generically allows to attach additional reference timestamps to a buffer, that don't have to relate to the pipeline clock in any way. Examples of this could be an NTP timestamp when the media was captured, a frame counter on the capture side or the (local) UNIX timestamp when the media was captured. https://bugzilla.gnome.org/show_bug.cgi?id=779213
2017-04-05gst: Cast combined-flags constants to their respective target typesSebastian Dröge1-2/+2
This makes C++ compilers a bit more happy without having the user of the constants cast. It also provides the correct type information to GI. https://bugzilla.gnome.org/show_bug.cgi?id=780923
2017-04-05gst: Set values and types for combined-flags constants in GI annotationsSebastian Dröge1-2/+2
2017-01-27gst: Fix includes so that files can be built separatelyThibault Saunier1-0/+2
It used to work but it has broke in the 1.10 cycle.
2016-12-14buffer: add gst_buffer_iterate_meta_filtered()Tim-Philipp Müller1-0/+4
For convenience. Pretty much every user of gst_buffer_iterate_meta() filters for a specific api type. https://bugzilla.gnome.org/show_bug.cgi?id=775727
2016-08-22buffer: add explicit getters and setters for buffer flagsArjen Veenhuizen1-0/+7
These can be used from bindings. https://bugzilla.gnome.org/show_bug.cgi?id=768301
2016-03-07gstbuffer: fix GstParentBufferMeta GType nameVíctor Manuel Jáquez Leal1-1/+4
The alias define GST_TYPE_PARENT_BUFFER_META_API_TYPE is wrong and breaks the usage of gst_buffer_get_parent_buffer_meta(). This patch fixes the GType alias and make another alias to keep the API compatibility guarded by GST_DISABLE_DEPRECATED. Also added a unit test. https://bugzilla.gnome.org/show_bug.cgi?id=763112
2016-01-03docs: fix some warnings and add some since markersTim-Philipp Müller1-0/+2
2015-12-14core: Add g_autoptr() support to all typesXavier Claessens1-0/+8
https://bugzilla.gnome.org/show_bug.cgi?id=754464
2015-11-09docs: remove dummy function declarations with G_INLINE_FUNCTION for gtk-docTim-Philipp Müller1-16/+0
gtk-doc can handle static inline functions just fine these days, there's no need for this stuff any more.
2015-10-27buffer: flesh out docs for gst_buffer_make_writable() a littleNirbheek Chauhan1-3/+18
There is a similar explanation in gst_caps_make_writable, but the existing documentation can be misleading since it does not define what 'is already writable' means. Also note when this function is meant to be used.
2015-10-27buffer: Add a GST_BUFFER_DTS_OR_PTS macroEdward Hervey1-0/+8
API: GST_BUFFER_DTS_OR_PTS Many scenarios/elements require dealing with streams of buffers that might have DTS set (i.e. encoded data, potentially reordered) To simplify getting the increasing "timestamp" of those buffers, create a macro that will return the DTS if valid, and if not the PTS
2015-06-18doc: Remove parenthesis around Since:Nicolas Dufresne1-1/+1
This confuse the parser, hence it does not endup in the doc and the index properly.
2015-06-19Add GstParentBufferMetaJan Schmidt1-0/+46
A core meta which helps implement the old concept of sub-buffering in some situations, by making it possible for a buffer to keep a ref on a different parent buffer. The parent buffer is unreffed when the Meta is freed. This meta is used to ensure that a buffer whose memory is being shared to a child buffer isn't freed and returned to a buffer pool until the memory is. https://bugzilla.gnome.org/show_bug.cgi?id=750039
2015-06-13doc: Fix Since: marksNicolas Dufresne1-1/+1
There was few Since: mark missing their column. Also unify the way we set the Since mark on enum value and structure members. These sadly don't show up in the index.
2015-06-08Add GST_BUFFER_FLAG_SYNC_AFTER flag, and implement in filesink.Jan Schmidt1-0/+4
Makes it possible to get filesink to fsync() after rendering a buffer.
2015-03-13gstbuffer: add gst_buffer_copy_deepThiago Santos1-2/+6
A variant of gst_buffer_copy that forces the underlying memory to be copied. This is added to avoid adding an extra reference to a GstMemory that might belong to a bufferpool that is trying to be drained. The use case is when the buffer copying is done to release the old buffer and all its resources. https://bugzilla.gnome.org/show_bug.cgi?id=745287
2014-06-26introspection: add nullability annotations to out and inout paramsEvan Nemerson1-3/+3
https://bugzilla.gnome.org/show_bug.cgi?id=730957
2014-05-30docs: convert NULL, TRUE, and FALSE to %NULL, %TRUE, and %FALSEEvan Nemerson1-3/+3
This should help improve documentation generated for languages other than C. https://bugzilla.gnome.org/show_bug.cgi?id=730961
2014-03-07buffer: invert meaning of GST_BUFFER_FLAG_TAG_MEMORYTim-Philipp Müller1-1/+1
It's nicer to only have it set when something noteworthy happened and otherwise unset. https://bugzilla.gnome.org/show_bug.cgi?id=725862
2014-02-27buffer: add function to check writability of memoryWim Taymans1-0/+3
Check if memory is writable in a buffer and thus is exclusively owned by this buffer.
2014-02-27buffer: add a new flag to track memory changesWim Taymans1-0/+3
Add a flag to check if the memory changed in a buffer.
2013-12-07docs: Fix typos in function/object descriptionsSebastian Rasmussen1-1/+1
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720029
2013-12-02docs: cosmetic changes in references/decriptionsSebastian Rasmussen1-4/+4
* fix typo GstBufferFlag -> GstBufferFlags * fix typo GstFeatures -> GstCapsFeatures * fix typo GstAllocatorParams -> GstAllocationParams * fix typo GstContrlSources -> GstControlSource * do not refer to gstcheck as an object * make references gtk_init() and tcase_set_timeout() not be references * gst_element_get_pad() renamed gst_element_get_static_pad() * gst_clock_id_wait_async_full() renamed gst_clock_id_wait_async() * _drop_element() is really gst_queue_array_drop_element() * gst_pad_accept_caps() was removed, do not refer to it * separate GST_META_TAG_MEMORY_STR declaration from description * do not describe removed gst_collect_pads_collect() * correctly link to GstElementClass' virtual set_context() Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719614
2013-04-11buffer: add _gst_max_memory() functionWim Taymans1-0/+2
Add the a function to query the maximum amount of memory blocks that can be added to a buffer. Also improve the docs for _insert_memory().
2013-03-27buffer: Add annotations and pygi friendly extraction functionOlivier Crête1-1/+3
API: gst_buffer_extract_dup
2013-02-27buffer: Gracefully handle gst_memory_copy() returning NULL without crashingSebastian Dröge1-2/+2
gst_buffer_copy_into() and gst_buffer_resize_range() can now fail.
2013-02-16buffer: add since marker for new COPY_DEEP buffer flagTim-Philipp Müller1-1/+1
2013-02-16buffer: add option to deep copy a bufferWim Taymans1-6/+11
Add a buffer copy flag to force a memory copy in all cases.
2012-11-03Fix FSF addressTim-Philipp Müller1-2/+2
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-09-11events: remove STREAM_CONFIGWim Taymans1-2/+1
We won't be able to implement this so it's better to move it out of the way.