Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/GStreamer/gstreamer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-09-23Release 1.19.2HEAD1.19.2masterTim-Philipp Müller
2021-09-22clocksync: Add some debug output to the clock waiting codeSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/841>
2021-09-20gst: Initialize optional event/message fields when parsingSebastian Dröge
These might not exist inside the structure and then we would potentially keep around uninitialized memory from the caller in the out parameter. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/887>
2021-09-19test: bitwriter: Add a test for reset_and_get_data when not byte unaligned.He Junyan
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/886>
2021-09-19bitwriter: Fix a memory leak in reset_and_get_buffer.He Junyan
We should record the ownership of the data before we reset the bitwriter. Or we will always dup the buffer data and leak the memory. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/886>
2021-09-19bitwriter: Fix the trailing bits lost when getting its data.He Junyan
In reset_and_get_data and reset_and_get_buffer, it fails to include the trailing bits less than 8. So, when the bit_size is not byte aligned, the trailing bits are lost in the return buffer. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/886>
2021-09-13multiqueue: fix obsolete comment re initial flow statusMathieu Duponchelle
The initial single queue srcresult is OK, it hasn't been NOT_LINKED since 2007. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/885>
2021-09-13multiqueue: never consider a queue that is not waitingMathieu Duponchelle
.. when computing the high id. After a flush for instance, sq->srcresult is reset to OK, yet it doesn't make sense to pick a non-existing position id as the high id when a queue doesn't contain any items in that situation either. It is in any case completely OK to let the not-linked stream get consumed without throttling at this stage, as any first packet arriving on other single queues will get assigned a higher position id. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/885>
2021-09-09add missing spaceAndika Triwidada
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/884>
2021-09-05multiqueue: Use running time of gap events for wakeups.Jan Schmidt
Use gap events to update the next_time of a queue the same as buffers or segment events. Fixes problems where a group consisting only of sparse streams primarily driven by gap events would stall with a full multiqueue because unlinked streams in the group were not being woken to push data. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/879>
2021-08-27element: NULL the lists of contexts in dispose()Matthew Waters
If dispose() is called more than once, we may double unref the list of GstContext's. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/875>
2021-08-24pad: Keep IDLE probe hook alive during immediate callbackJan Alexander Steffens (heftig)
When the probe returns GST_PAD_PROBE_REMOVE and gets called concurrently from the streaming thread while we're in the callback here, the hook has already been destroyed by the time we've reacquired the object lock. Consequently, cleanup_hook gets passed an invalid pointer. Keep another reference to the hook alive to avoid this situation. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/873>
2021-08-20concat: Properly propagate seqnum of segment eventsEdward Hervey
Was broken by https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/819 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/871>
2021-08-20tests: elementfactory: add element creation testsThéo MAILLART
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/736>
2021-08-20elementfactory: enable construct only property passingThéo MAILLART
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/736>
2021-08-19tracer: Add new tracer to list loaded elements and other featuresOlivier Crête
This new tracer will list loaded elements and plugins. This should make it easier to generate minimal builds of GStreamer. This also traces other features such as typefind functions, device providers and dynamic types. The format of the output of gst-stats should match the parameters expected by the meson based gst-build system. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/782>
2021-08-19tracers: Add tracepoint when a plugin feature it loadedOlivier Crête
This makes it possible to trace which ones are loaded in a specific program to make nice statistics. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/782>
2021-08-18pad: Ensure last flow return is set on sink pads in push modeEdward Hervey
The last flow return field was never updated on sink pads in push mode. This fixes it and makes it consistent. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/868>
2021-08-13gstbuffer: Use g_memdup2 instead of g_memdupNirbheek Chauhan
This was added in !826 which was created after !803 (which changes g_memdup -> g_memdup2), but merged before it, so it slipped through. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/866>
2021-08-10plugin: load plugins with unknown license stringsTim-Philipp Müller
We shouldn't fail to load plugins just because we don't recognise the license string. It's not our job to validate licenses, and the license list is outdated and ambiguous anyway. Also add MPL-2.0 to the list, and fix some defunct license URLs in the code comments. Get rid of the hard-coded skip index, doesn't really buy us much versus just skipping with a few strlens, and is harder to maintain. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/864>
2021-08-03identity: provide a log to check the buffersStéphane Cerveau
In order to not rely only on app to display the message from identity, display the message in the logs too. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/863>
2021-07-31examples: controller-graph: Fix build with MSVCSeungha Yang
To use macros in math.h, one needs to define _USE_MATH_DEFINES before including the math.h file. Use glib's math define instead. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/862>
2021-07-28gst-launch: Enable Windows high-resolution clockSeungha Yang
Default timer precision of Windows is dependent on system, but usually it's known to be about 15ms in worst case. That's not an enough precision for multimedia application. Enable high-resolution clock in gst-launch to demonstrate the usage of Windows high-precision clock for application developers. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/817>
2021-07-28input-selector: Use proper segments when cleaning cached buffersJan Alexander Steffens (heftig)
We need to use the segment associated with the cached buffer, not the current segment of the pad, otherwise we miscalculate the running time of cached buffers from before a segment change. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/859>
2021-07-26gitlab: update bug templateStéphane Cerveau
Finetune the bug description. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/854>
2021-07-26gsturi: Set GError if uri is invalidZhao, Gang
GError should be set if function call failed and the failed reason is not a programmer error. Fixed: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1380 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/816>
2021-07-26gsturi: Don't treat invalid format of uri as critical errorZhao, Gang
Normally uri is get from user input and invalid user input should not be treated as critical error. Moved gst_uri_is_valid outside of g_return_val_if_fail. NULL uri is checked inside of gst_uri_is_valid and is correctly treated as critical error, removed unneeded checks of NULL uri outside of gst_uri_is_valid function. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/816>
2021-07-26systemclock: Restore default clock mode to monotonic for non-linux systemSeungha Yang
Before the MR https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/829 Windows and macOS system clock used monotonic clock regardless of selected clock mode. And because of clock resolution, we should prefer monotonic over realtime unless realtime clock is selected explicitly. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/855>
2021-07-20basesink: Don't swap rstart/rstop when steppingSeungha Yang
Step handling is implemented based on unmodified start/stop segment running time, and basesink takes rate into account for stepping. This commit is partially undoing new behavior introduced by the commit of 39b9cc554c960fec8d41f8394c41390883cadeed when stepping. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/848>
2021-07-19gstptpclock: Don't leak the GListNirbheek Chauhan
120 bytes in 5 blocks are definitely lost in loss record 7,615 of 9,510 at 0x484486F: malloc (vg_replace_malloc.c:380) by 0x58A2938: g_malloc (gmem.c:106) by 0x58BA1F4: g_slice_alloc (gslice.c:1069) by 0x588F059: g_list_prepend (glist.c:335) by 0x5B9C5C0: select_best_master_clock (gstptpclock.c:756) by 0x5B9CA8E: cleanup_cb (gstptpclock.c:1930) by 0x589AD20: g_timeout_dispatch (gmain.c:4889) by 0x589A4CE: UnknownInlinedFun (gmain.c:3337) by 0x589A4CE: g_main_context_dispatch (gmain.c:4055) by 0x58EE4E7: g_main_context_iterate.constprop.0 (gmain.c:4131) by 0x5899A92: g_main_loop_run (gmain.c:4329) by 0x5B9BA4C: ptp_helper_main (gstptpclock.c:1980) by 0x58C8C31: g_thread_proxy (gthread.c:826) 576 bytes in 24 blocks are definitely lost in loss record 8,782 of 9,510 at 0x484486F: malloc (vg_replace_malloc.c:380) by 0x58A2938: g_malloc (gmem.c:106) by 0x58BA1F4: g_slice_alloc (gslice.c:1069) by 0x588F059: g_list_prepend (glist.c:335) by 0x5B9C5C0: select_best_master_clock (gstptpclock.c:756) by 0x5B9EFA0: handle_announce_message (gstptpclock.c:934) by 0x5B9EFA0: handle_ptp_message (gstptpclock.c:1765) by 0x5B9EFA0: have_stdin_data_cb (gstptpclock.c:1851) by 0x589A4CE: UnknownInlinedFun (gmain.c:3337) by 0x589A4CE: g_main_context_dispatch (gmain.c:4055) by 0x58EE4E7: g_main_context_iterate.constprop.0 (gmain.c:4131) by 0x5899A92: g_main_loop_run (gmain.c:4329) by 0x5B9BA4C: ptp_helper_main (gstptpclock.c:1980) by 0x58C8C31: g_thread_proxy (gthread.c:826) by 0x5DA4298: start_thread (pthread_create.c:481) Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/852>
2021-07-19gstpad: Don't spam INFO when default-chaining a buffer listNirbheek Chauhan
This is being logged for each buffer, so it should not use INFO. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/853>
2021-07-15gitlab: add bug templateStéphane Cerveau
To clarify what is expected in an issue description and avoid issue which is just an usage issue, add a bug template in gitlab. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/836>
2021-07-08Add meson description for tracer_hooksKasper Steensig Jensen
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/849>
2021-07-05gstinfo: Improve usage of libdw for backtracesEdward Hervey
When getting backtraces, we were always creating a new Dwfl context and then discarding it. The problem with that is that it resulted in having to re-scan a lot of information for every single backtrace. In order to fix that issue, use a global on-demand Dwfl context and use it with a lock. Furthermore, we were scanning the mappings of the process (dwfl_linux_proc_report) for *every single step* in the backtrace, and that function is horrendously expensive (does sscanf on /proc/PID/maps ...). While there is a possibility that new mappings might be available (new plugins being loaded for example), we can limit ourselves to just do it once per backtrace. These two modifications speed up the elements_leaks unit test (which traces all pads with full backtraces) by a factor of 6. Partially fixes #567 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/504>
2021-07-01parse: Fix a critical when using the : operator.Jan Schmidt
Fix "has no handler with id" output criticals when the : multilink operator is used. These were caused by disconnecting a signal handler multiple times. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/846>
2021-06-28basesink: Post a latency message whenever we're ready to answer the querySebastian Dröge
Usually the latency message is only posted whenever latency of an element changes but that might be too early as the sinks might not be able to query the latency at that point yet. Similarly adding a new sink should cause latency reconfiguration once that new sink is able to report its latency. This fixes latency configuration in pipelines where webrtcbin is the only "sink", i.e. it is used in a sendonly session. Before, the latency would always be configured to 0. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/843>
2021-06-24basesrc: Print segments with GST_SEGMENT_FORMAT and not GST_PTR_FORMATSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/842>
2021-06-22Fix GI annotations.Víctor Manuel Jáquez Leal
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/840>
2021-06-21Update COPYING to LGPL 2.1Corentin Damman
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/835>
2021-06-21parse: Don't do delayed property setting for top-level properties.Jan Schmidt
If a property is supplied to gst-launch-1.0 to set on a property that implements GstChildProxy, it would always accept any property name and try to set it later. This means that (for example) decodebin will accept and not complain about property names that can never exist like: gst-launch-1.0 videotestsrc ! decodebin NON-EXISTING_PROPERTY=adsfdasf ! fakesink Instead, only try to do deferred property setting for property names that contain the :: separator that indicates it's a setting on a child that might appear later. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/832>
2021-06-16Check mandatory ClockTime argumentsFrançois Laignel
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/837>
2021-06-08Use g_memdup2() where available and add fallback for older GLib versionsDoug Nazar
glib 2.68 deprecates g_memdup(). Replace with g_memdup2() and add fallback if compiling against older versions, since we want to avoid deprecation warnings. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/803>
2021-06-07introspection: annotate ownership in more vfuncsAlba Mendez
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/831>
2021-06-04introspection: annotate handle_message ownershipAlba Mendez
(fixup/improvement to !747) Correct the ownership annotation for `message` in the `handle_message` vfunc, and remove the equivalent phrase elsewhere (following rules of !747. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/830>
2021-06-02tracers: leaks: log when tracer is exitingGuillaume Desmottes
Useful when debugging leaks to make sure that the tracer is properly finalized (gst_deinit() being actually called, etc). Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/828>
2021-06-01Back to developmentTim-Philipp Müller
2021-06-01Release 1.19.11.19.1Tim-Philipp Müller
2021-05-28systemclock: fall back to g_get_monotonic_timetyler-aicradle
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/829>
2021-05-27systemclock: reorg real and mono time functions for macOS and win32tyler-aicradle
This simplifies the pre-processor checks a little to make it easier to follow the code. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/829>
2021-05-27systemclock: Use g_get_real_time on Windows and macOS for realtime clocktyler-aicradle
These targets previously were unable to produce wall clock times when using GstSystemClock, this change makes it possible. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/829>