- May 31, 2021
-
-
Tim-Philipp Müller authored
-
- May 27, 2021
-
-
Tyler Pickett authored
This allows us to cover the case where we're on some unknown system that doesn't have a known native precision monotonic time source. Sadly this reintroduces some of the complexity removed in previous commits. Part-of: <!829>
-
Tyler Pickett authored
This simplifies the pre-processor checks a little to make it easier to follow the code. Part-of: <gstreamer/gstreamer!829>
-
Tyler Pickett authored
These targets previously were unable to produce wall clock times when using GstSystemClock, this change makes it possible. Part-of: <gstreamer/gstreamer!829>
-
Tyler Pickett authored
The gst_system_clock_get_internal_time and gst_system_clock_get_resolution functions had some nested defined checks making this code somewhat harder to reason about and much harder to change. The logical meaning of the checks has changed but the actual code coming out of the pre-processor should not have changed significantly. The main logical change was flattening the checks for existence of posix timing functionality, from what I can tell these functions aren't available on Windows where they were trying to be included. I have checked the Linux and macOS output and they are functionally unchanged. Part-of: <gstreamer/gstreamer!829>
-
- May 24, 2021
-
-
Tim-Philipp Müller authored
!826 Part-of: <!827>
-
- May 23, 2021
-
-
More convenient and discoverable variant of the fairly widely-used gst_buffer_new_wrapped(g_memdup(data,size),size). Part-of: <gstreamer/gstreamer!826>
-
- May 16, 2021
-
-
Tim-Philipp Müller authored
Most of these are only of historical interest, and for that it's fine if they're maintained in the git history. They're confusing for anyone stumbling across them expecting documentation relating to current versions of GStreamer. Part-of: <gstreamer/gstreamer!824>
-
- May 14, 2021
-
-
When concat adjusts the base of the segments it forwards downstream, it needs to also adjust the running time offsets, as GstPad does when an offset is set by the application on a pad. Part-of: <gstreamer/gstreamer!819>
-
- May 12, 2021
-
-
The hotdoc syntax is #ClassName::function, but the code was using without anything before. Part-of: <gstreamer/gstreamer!808>
-
Ensures that all unused threads are exited before the atexit() handlers run. This prevents a race with any thread that used the OpenSSL library between it's thread cleanup routine and it's atexit() cleanup routine which can cause a SIGSEGV. Part-of: <gstreamer/gstreamer!812>
-
- May 11, 2021
-
-
concat->current_start_offset needs the lock taken for safe access, as it can be accessed from outside of the streaming thread, eg in release_pad. An early break is also added for an error case. Part-of: <gstreamer/gstreamer!818>
-
- May 07, 2021
-
-
Doug Nazar authored
When switching between read/write a fseek() or fflush() is required. Part-of: <gstreamer/gstreamer!814>
-
Doug Nazar authored
On Windows, the file handles must be closed before you can delete a file. Also, it would cause an error if you try to close an already closed handle. Part-of: <gstreamer/gstreamer!814>
-
Doug Nazar authored
Part-of: <gstreamer/gstreamer!814>
-
- May 06, 2021
-
-
Nikolay Sivov authored
Part-of: <gstreamer/gstreamer!813>
-
Jan Alexander Steffens authored
The pads can be NULL when we're racing with pad removal, e.g. when the pads get removed between `gst_pad_iterate_internal_links` acquiring the parent element and `gst_multi_queue_iterate_internal_links` locking the multiqueue. Part-of: <gstreamer/gstreamer!810>
-
gst_child_proxy_get_property() can now take a value initialized to G_VALUE_INIT. This parallels the corresponding change in g_object_get_property(), GLib 2.60+. gstreamer/gstreamer!724 (comment 738531) Part-of: <gstreamer/gstreamer!809>
-
- May 04, 2021
-
-
François Laignel authored
The name `gst_element_get_request_pad()` is confusing to people learning GStreamer. `gst_element_request_pad_simple()` aims at providing the exact same functionality, while making it more explicit it is a simplified `gst_element_request_pad()`. `gst_element_request_pad_simple()` is consistent with other functions such as `gst_element_seek_simple`. This commit deprecates `gst_element_get_request_pad()` so that a compilation warning is emitted when used and incite developers to use the more explicit `gst_element_request_pad_simple()`. See also gstreamer/gstreamer-rs!743 (comment 886586) Part-of: <gstreamer/gstreamer!802>
-
- Apr 21, 2021
-
-
Doug Nazar authored
Part-of: <gstreamer/gstreamer!801>
-
- Apr 19, 2021
-
-
Miguel París Díaz authored
Protect clearing probes against concurrent modification which might happen due to dispose does NOT guarantee that the object is not used anymore, as it could be referenced again and so being continued used. So, as in the rest of places where probes hook list is used, on dispose it should be accessed holding the mutex "GST_OBJECT_LOCK (pad);" as GHookList is not thread-safe. Part-of: <gstreamer/gstreamer!798>
-
- Apr 16, 2021
-
-
When posting buffering messages there are no safe places or timing to avoid deadlocks. Previously the code was trying to be "smart" by only forwarding serialized queries if the queue was empty ... but that could happen when queue2 hadn't yet posted a 100% buffering message. Meaning the pipeline might be paused and pushing a serialized query downstream might never complete. Therefore let's completely disable forwarding of serialized queries when `queue2` is used as a buffering element (meaning `ALLOCATION` and `DRAIN` queries). Part-of: <!796>
-
- Apr 12, 2021
-
-
Passing a non-GObject pointer causes SIGSEGV on certain architectures. Part-of: <gstreamer/gstreamer!790>
-
Doug Nazar authored
G_IS_OBJECT & GST_IS_OBJECT work by following pointers which is unsafe on certain architectures. GstMiniObject detection however does a lookup to see if it's a valid type derived from G_TYPE_BOXED. Part-of: <gstreamer/gstreamer!791>
-
- Apr 10, 2021
-
-
Chris White authored
This permits creating GstAllocationParams instances on the heap, which is useful for language bindings that can handle GBoxed types. #683 Part-of: <!788>
-
- Apr 08, 2021
-
-
clocksync defaults to sync=true so should advertise it by default. Part-of: <gstreamer/gstreamer!786>
-
- Apr 07, 2021
-
-
If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that. Falling through to the one installed on the system is problamatic in cross-compilation environemnts, regardless of whether one pointed to by the env var succeeded or failed. taken from: http://cgit.openembedded.org/openembedded-core/commit/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch?id=0db7ba34ca41b107042306d13a6f0162885c123b Part-of: <gstreamer/gstreamer!669>
-
Part-of: <!777>
-
- Apr 06, 2021
-
-
Sebastian Dröge authored
The peeked buffer was always reset after calling ::aggregate() but under no other circumstances. If a pad was removed after peeking and before ::aggregate() returned then the peeked buffer would be leaked. This can easily happen if pads are removed from the aggregator from a pad probe downstream of the source pad but still in the source pad's streaming thread. Part-of: <gstreamer/gstreamer!784>
-
- Apr 02, 2021
-
-
Chris White authored
For use with a single feature now that gst_caps_features_new() is G_GNUC_NULL_TERMINATED. gstreamer/gstreamer!774 (comment 855357) Part-of: <gstreamer/gstreamer!774>
-
Chris White authored
For cases where you only need a media type and no other fields. gstreamer/gstreamer!774 (comment 848664) Part-of: <gstreamer/gstreamer!774>
-
Chris White authored
Functions that require NULL as their last vararg are marked so the compiler can warn on missing NULL. Also, document the NULL terminator for gst_make_element_message_details() and gst_tracer_record_new(). gstreamer/gstreamer#669 Part-of: <gstreamer/gstreamer!774>
-
- Mar 31, 2021
-
-
Pieter Jordaan authored
Always use the monotonic clock's diff and end time for clock_nanosleep to have predictable behaviour even with other clock types. Part-of: <gstreamer/gstreamer!779>
-
- Mar 26, 2021
-
-
Jason Carrete authored
Fixed a small typo in the gst-launch-1.0 man page Part-of: <!780>
-
This signal don't run the class handler in the CLEANUP stage. Part-of: <!776>
-
- Mar 24, 2021
-
-
unit tests do not need to call deinit as it is already called in exit handler Part-of: <gstreamer/gstreamer!236>
-
Part-of: <gstreamer/gstreamer!236>
-
- Mar 19, 2021
-
-
This macro allows to register a device provider with a custom function which gives more flexibility when registering it (see v4l2 register). Part-of: <gstreamer/gstreamer!773>
-
volatile is not sufficient to provide atomic guarantees and real atomics should be used instead. GCC 11 has started warning about using volatile with atomic operations. https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 Discovered in gstreamer/gst-plugins-good#868 Part-of: <gstreamer/gstreamer!775>
-
- Mar 18, 2021
-
-
Add a new property so that clocksync can setup "ts-offset" value based on the first buffer and pipeline's running time when the first arrived. Newly update "ts-offset" in this case would be a value that allows outputting the first buffer without clock waiting. Part-of: <gstreamer/gstreamer!702>
-