This is an ad-hoc release that is almost identical to 0.10.34:
* work around GLib atomic ops API change
* some minor win32/mingw fixes
* don't use G_CONST_RETURN in public headers
Highlights:
- new parser base class: GstBaseParse
- new core element: funnel
- OSX multi-arch fixes
- new QoS type for QoS events
- new progress message API to notify applications of asynchronous operations
- countless other fixes and improvements
Seems like the best fit to what it does, and is shorter than
set_frame_properties() which might also have been confusing
because of GstBaseParseFrame.
https://bugzilla.gnome.org/show_bug.cgi?id=518857
Just like gst_caps_intersect, but adds a new parameter 'mode'
that allows selecting the intersection algorithm to use.
Currently we have GST_CAPS_INTERSECT_MODE_ZIG_ZAG (default) and
GST_CAPS_INTERSECT_MODE_FIRST.
API: gst_caps_intersect_full
API: GstCapsIntersectMode
API: GST_CAPS_INTERSECT_MODE_ZIG_ZAG
API: GST_CAPS_INTERSECT_MODE_FIRST
https://bugzilla.gnome.org/show_bug.cgi?id=617045
GST_DISABLE_DEPRECATED should only affect visibility of declarations in headers,
not actually remove symbols. See GitDeveloperGuidelines and DeprecatingAPI
pages in wiki.
https://bugzilla.gnome.org/show_bug.cgi?id=402141
Add new functions to clarify how the caps are compared to the template caps of
the element factory. Improve the docs to point out the difference.
Deprecate: gst_element_factory_can_{src|sink}_caps
API: add gst_element_factory_can_{src|sink}_{any|all}_capps
https://bugzilla.gnome.org/show_bug.cgi?id=402141
Add function that (unlike the GLib equivalent) also accepts paths that
aren't absolute and will clean up relative markers such as ./ and ../
before forming a URI.
Fixes warnings with e.g. filesrc location=foo ! typefind caused by the
recent switch to g_filename_to_uri(), but also actually creates valid
URIs for the first time.
Windows code paths could need some more work, e.g. we don't clean up
the relative markers there for now (because path could have \ and /
as separators).
API: gst_filename_to_uri()
The new request_new_pad_full vmethod provides an additional caps field,
which allows elements to take better decision process.
Also, add a gst_element_request_pad() function to allow developers to be
able to specify which pad template they want a pad of.
Convert gstutils to use that new method instead of the old one when more
efficient.
This is useful for being able to request pads in a more flexible way,
especially when the element can provide pads whose caps depend on
runtime configuration and therefore can't provide pre-registered
pad templates.
API: GstElement::request_new_pad_full
API: gst_element_request_pad
https://bugzilla.gnome.org/show_bug.cgi?id=637300
Adds 2 variants for the gst_date_time_from_unix_epoch function,
one for UTC and another for local time.
API: gst_date_time_new_from_unix_epoch_utc
API: gst_date_time_new_from_unix_epoch_local_time
Fixes#653031https://bugzilla.gnome.org/show_bug.cgi?id=635031
Add a function to retrieve a list of buffers containing the first N bytes from
the adapter. This can be done without a memcpy and should make it possible to
transfer the list to a GstBufferList later.
Add _set_value() variants that take ownership of the value passed
instead of making a copy of the value. This is useful for setting
values to things that aren't refcounted (e.g. GValueArrays or
strings or string arrays, etc.).
API: gst_structure_take_value()
API: gst_structure_id_take_value()
https://bugzilla.gnome.org/show_bug.cgi?id=629831
Add a GstStructure to GstElementClass and GstElementFactory. Add setters/getter.
Handle it in the registry code. Print items in gst-inspect.
Fixes#396774.
API: gst_element_class_set_meta_data(), gst_element_factory_get_meta_data_detail()
Added a new query type to retrieve informations about the areas of the
media currently buffered. See bug 623121.
API: gst_query_add_buffering_range
API: gst_query_get_n_buffering_ranges
API: gst_query_parse_nth_buffering_range