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
2016-11-20tee: Set GST_PAD_FLAG_PROXY_CAPS before forwarding sticky events1.8Sebastian Dröge
https://bugzilla.gnome.org/show_bug.cgi?id=752213
2016-11-11basetransform: fix pool leak when early returning in decide_allocationGuillaume Desmottes
https://bugzilla.gnome.org/show_bug.cgi?id=769023
2016-11-02build: Fix AM_CONDITIONAL check for clock_gettimeNirbheek Chauhan
It was always evaluating to false, so clock_gettime.c was always being included into libcheck. This breaks building on Hurd and causes us to always override clock_gettime() even when it is available. https://bugzilla.gnome.org/show_bug.cgi?id=773813
2016-10-26build: Apply XCode 8 workaround for iOS tooNirbheek Chauhan
clock_gettime was also added for iOS 10.0, so don't use it if we're targetting an older version. That would've caused the symbol to not be found at runtime on older devices.
2016-10-26build: Fix clock_gettime check with XCode 8Nirbheek Chauhan
With XCode 8, clock_gettime will be incorrectly detected as being available regardless of what OS X version we're targetting because the symbol is available in the .tbd library as a weak symbol. See: https://github.com/Homebrew/homebrew-core/issues/3727#issue-170086273 It's only starting from macOS 10.12 that clock_gettime is actually available, so we can unconditionally disable it when targetting older versions. We cannot simply do AC_CHECK_FUNCS with -Wl,-no_weak_imports because the autoconf check does its own prototype declaration that doesn't trigger that compiler flag. https://bugzilla.gnome.org/show_bug.cgi?id=772451
2016-10-25element: check for invalid gstcontext's being provided to set_contextMatthew Waters
https://bugzilla.gnome.org/show_bug.cgi?id=771773
2016-10-25element: use g_strcmp0 in set_contextMatthew Waters
It's NULL-safe while the libc implementation may not be. https://bugzilla.gnome.org/show_bug.cgi?id=771773
2016-10-25argbcontrolbinding: gst_object_replace() is transfer noneSebastian Dröge
2016-10-25bin: Fix iterator resync'ingEdward Hervey
When we get GST_ITERATOR_RESYNC, we need to call gst_iterator_resync() otherwise we will always get GST_ITERATOR_RESYNC (and that loop would run forever).
2016-10-25queue2: Implement gst_event_full_func handlingEdward Hervey
Same as we do for queue
2016-10-22bin: fix compiler warning caused by previous commitSebastian Dröge
Add forgotten "git commit --amend" for last commit Need to cast away the const as g_queue_foreach() takes a non-const GQueue*
2016-10-22docs: add index for API new in 1.8Tim-Philipp Müller
2016-10-21g-i: info: allow passing NULL to gst_debug_remove_log_function()Tim-Philipp Müller
Useful for removing the default handler from bindings.
2016-10-21collectpads: add g-i transfer annotations to ↵Aurélien Zanelli
peek/pop/read_buffer/take_buffer functions https://bugzilla.gnome.org/show_bug.cgi?id=768948
2016-10-21message: fix annotation of parse_device_{added,removed}Guillaume Desmottes
gst_structure_id_get() returns a new reference so the returned device is actually (transfer full). The code using this API was already correct but the code example in comments was not. https://bugzilla.gnome.org/show_bug.cgi?id=768776
2016-10-21Fix some nonsensical g-i annotationsTim-Philipp Müller
2016-10-21typefindhelper: Fix gobject-introspection warning about invalid transfer ↵Sebastian Dröge
annotation gsttypefindhelper.c:485: Warning: GstBase: invalid "transfer" annotation for gsize: only valid for array, struct, union, boxed, object and interface types
2016-10-17rusage: properly free the queue memoryGuillaume Desmottes
The queue is allocated as part of the tracer struct so we should not use g_queue_free() to free it. https://bugzilla.gnome.org/show_bug.cgi?id=764985
2016-10-08tracer/rusage: fix format string argsStefan Sauer
The format string contains a process id, but we did not provice one. This caused us to log garbage since all args got shifted.
2016-09-30bin: When copying the sort iterator, also copy its internal queueKouhei Sutou
Otherwise both iterators share the same references, the second one usually resulting in a crash when being freed. https://bugzilla.gnome.org/show_bug.cgi?id=771649
2016-09-26libcompat.h: strsignal() should be not be decleared constAnthony G. Basile
POSIX standards requires strsignal() to return a pointer to a char, not a const pointer to a char. [1] On uClibc, and possibly other libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares const char *strsignal (int sig) which causes a type error. [1] man 3 strsignal https://bugzilla.gnome.org/show_bug.cgi?id=763567
2016-08-19Release 1.8.31.8.3Sebastian Dröge
2016-08-19Update .po filesSebastian Dröge
2016-08-16queue2: Post buffering messages earlier in ringbuffer modeEdward Hervey
In ringbuffer mode we need to make sure we post buffering messages *before* blocking to wait for data to be drained. Without this, we would end up in situations like this: * pipeline is pre-rolling * Downstream demuxer/decoder has pushed data to all sinks, and demuxer thread is blocking downstream (i.e. not pulling from upstream/queue2). * Therefore pipeline has pre-rolled ... * ... but queue2 hasn't filled up yet, therefore the application waits for the buffering 100% messages before setting the pipeline to PLAYING * But queue2 can't post that message, since the 100% message will be posted *after* there is room available for that last buffer. https://bugzilla.gnome.org/show_bug.cgi?id=769802
2016-08-16queue2: Fix average input rate calculation on small input rangeEdward Hervey
When dealing with small-ish input data coming into queue2, such as adaptivedemux fragments, we would never take into account the last <200ms of data coming in. The problem is that usually on TCP connection the download rate gradually increases (i.e. the rate is lower at the beginning of a download than it is later on). Combined with small download time (less than a second) we would end up with a computed average input rate which was sometimes up to 30-50% off from the *actual* average input rate for that fragment. In order to fix this, force the average input rate calculation when we receive an EOS so that we take into account that final window of data. https://bugzilla.gnome.org/show_bug.cgi?id=768649
2016-08-13g-i: pass compiler env to g-ir-scannerTim-Philipp Müller
It's what introspection.mak does as well. Should fix spurious build failures on gnome-continuous.
2016-08-13gst: g-i: pass compiler with quotesTim-Philipp Müller
So CC="ccache gcc" works properly.
2016-08-13gst: attempt to fix/track-down mysterious gnome-continuous build failuresRay Strode
2016-07-25inputselector: Wake other pads when selected goes EOSJan Schmidt
Other pads that are waiting for the stream on the selected pad to advance before they finish waiting themselves should be given the chance to do so when the selected pad goes EOS. Fixes problems where input streams can end up waiting forever if the active stream goes EOS earlier than their own end time.
2016-07-25pad: check query caps answered and caps not NULLMiguel París Díaz
https://bugzilla.gnome.org/show_bug.cgi?id=768450
2016-07-25baseparse: Make sure to not create an invalid event order when generating ↵Sebastian Dröge
the default CAPS event because of a GAP event There must be a SEGMENT event before the GAP event, and SEGMENT events must come after any CAPS event. We however did not produce any CAPS yet, so we need to ensure to insert the CAPS event before the SEGMENT event into the pending events list. https://bugzilla.gnome.org/show_bug.cgi?id=766970
2016-07-04bus: chain up GObject::constructed() to the parent class' implementationGuillaume Desmottes
Needed so GstBus can be tracked by the leaks tracer. https://bugzilla.gnome.org/show_bug.cgi?id=768141
2016-07-04queue2: fix crash deleting current region for small ring buffersVincent Penquerc'h
Ensure we do not attempt to destroy the current range. Doing so causes the current one to be left dangling, and it may be dereferenced later, leading to a crash. This can happen with a very small queue2 ring buffer (10000 bytes) and 4 kB buffers. repro case: gst-launch-1.0 fakesrc sizetype=2 sizemax=4096 ! \ queue2 ring-buffer-max-size=1000 ! fakesink sync=true https://bugzilla.gnome.org/show_bug.cgi?id=767688
2016-07-01multiqueue: Fix behaviour with not-linked and eos padsEdward Hervey
This is an update on c9b6848885f4675d447e823c8fb117e247658252 multiqueue: Fix not-linked pad handling at EOS While that commit did fix the behaviour if upstream sent a GST_EVENT_EOS, it would break the same issue when *downstream* returns GST_FLOW_EOS (which can happen for example when downstream decoders receive data from after the segment stop). GST_PAD_IS_EOS() is only TRUE when a GST_EVENT_EOS has flown through it and not when a GST_EVENT_EOS has gone through it. In order to handle both cases, also take into account the last flow return. https://bugzilla.gnome.org/show_bug.cgi?id=763770
2016-06-27tee: Properly handle return value when only 1 padNicolas Dufresne
This patch handle the case when you have 1 pad (so the fast path is being used) but this pad is removed. If we are in allow-not-linked, we should return GST_FLOW_OK, otherwise, we should return GST_FLOW_UNLINKED and ignore the meaningless return value obtained from pushing. https://bugzilla.gnome.org/show_bug.cgi?id=767413
2016-06-27basesink: Update start time when losing state only if we were in PLAYINGSebastian Dröge
If we were in PAUSED, the current clock time and base time don't have much to do with the running time anymore as the clock might have advanced while we were PAUSED. The system clock does that for example, audio clocks often don't. Updating the start time in PAUSED will cause a) the wrong position to be reported, b) step events to step not just the requested amount but the amount of time we spent in PAUSED. The start time should only ever be updated when going from PLAYING to PAUSED to remember the current running time (to be able to compensate later when going to PLAYING for the clock time advancing while PAUSED), not when we are already in PAUSED. Based on a patch by Kishore Arepalli <kishore.arepalli@gmail.com> The updating of the start time when the state is lost was added in commit ba943a82c0bbfd17c9ee9f5068d44c9d9274fd13 to fix the position reporting when the state is lost. This still works correctly after this change. https://bugzilla.gnome.org/show_bug.cgi?id=739289
2016-06-17gstpad tests: Add a test for flush event only probesLinus Svensson
https://bugzilla.gnome.org/show_bug.cgi?id=762330
2016-06-17pad: consider PROBE_TYPE_EVENT_FLUSH when using PROBE_TYPE_ALL_BOTHThiago Santos
When GST_PAD_PROBE_EVENT_FLUSH is used, the probes already have a data type and it is not needed to automatically add the default types. Without this, EVENT_FLUSH probes that didn't specify a data type would be called also for other data such as buffers. https://bugzilla.gnome.org/show_bug.cgi?id=762330
2016-06-09Release 1.8.21.8.2Sebastian Dröge
2016-06-09Update .po filesSebastian Dröge
2016-06-09po: Update translationsSebastian Dröge
2016-05-20queue: Only unblock upstream waiting for the query once downstream is finishedSebastian Dröge
... when flushing and deactivating pads. Otherwise downstream might have a query that was already unreffed by upstream, causing crashes or other interesting effects. https://bugzilla.gnome.org/show_bug.cgi?id=763496
2016-05-20pad: Improve IDLE probe docsSebastian Dröge
Make it explicit that the pad is only blocked while the callback is running, and the pad will be unblocked again once the callback returned. If BLOCK and IDLE behaviour is needed, both need to be used. https://bugzilla.gnome.org/show_bug.cgi?id=766002
2016-05-20basesink/src: Post an error message if ::start() failsSebastian Dröge
The subclass should do that already, but just in case do it ourselves too as a fallback. Without this, e.g. playbin will just wait forever if this fails because it is triggered as part of an ASYNC state change.
2016-05-16bin: Fix EOS forwarding on PLAYING->PLAYINGJan Schmidt
When doing a transition from PLAYING to PLAYING, we will fail to forward an EOS message on the bus, and noone else will ever send it because there'll be no actual state changed message. Allow EOS through directly in that case.
2016-05-12typefind: Only push a CAPS event downstream if the sinkpad is not in PULL modeSebastian Dröge
The other signal handlers of the type-found signal might have reactivated typefind in PULL mode already, pushing a CAPS event at that point would cause deadlocks and is in general unexpected by elements that are in PULL mode. https://bugzilla.gnome.org/show_bug.cgi?id=765906
2016-05-11pad: Fix pad state when deactivating from one mode and then trying to ↵Sebastian Dröge
activate another and failing When activating a pad in PULL mode, it might already be in PUSH mode. We now first try to deactivate it from PUSH mode and then try to activate it in PULL mode. If the activation fails, we would set the pad to flushing and set it back to its old mode. However the old mode is wrong, the pad is not in PUSH mode anymore but in NONE mode. This fixes e.g. typefind in decodebin reactivating PUSH/PULL mode if upstream actually fails to go into PULL mode after first PUSHING data to typefind.
2016-05-06utils: fix element leak in find_common_root()Guillaume Desmottes
The root element was not unreffed when iterating over ancestors. https://bugzilla.gnome.org/show_bug.cgi?id=765961
2016-04-28manual: Fix buffer memory leak in appsrc exampleSebastian Dröge
g_signal_emit_by_name() is not like gst_app_src_push_buffer() due to reference counting limitations of signals, it does *not* take ownership of the buffer.
2016-04-26datetime: Sanity check year, month and day when parsing ISO-8601 stringsSebastian Dröge
Passing years > 9999, months > 12 or days > 31 to gst_date_time_new() will cause an assertion and generally does not make much sense. Instead consider it as a parsing error like hours > 24 and return NULL.