summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-06-18basesink: Rename last_segment_running_time to last_anchor_running_time for ↵instant-rate-changeSebastian Dröge1-25/+25
consistence with the design doc
2018-06-18basesink: Implement instant-rate-change compensation for other upstream eventsSebastian Dröge1-6/+78
Via gst_event_set_running_time_offset()
2018-06-15basesink: Implement compensation for instant-rate-changes in QoS eventsSebastian Dröge1-9/+54
2018-06-15basesink: Compensate for calculation inaccuracies between upstream/internal ↵Sebastian Dröge1-32/+46
passed running time These durations can become negative in case of inaccuracies, and we need to correct backwards in that case.
2018-06-15event/message: Add quarks for the instant-rate related message/event typesSebastian Dröge2-0/+3
2018-06-15basesink: Handle running time going backwards upstream more gracefullySebastian Dröge1-10/+74
This can happen if upstream handles seeks with seek_type=NONE incorrectly and actually changes the position into the past.
2018-06-14basesink: Make sure that segment.position of incoming segment events stays ↵Sebastian Dröge1-3/+4
between start and stop
2018-06-14basesink: Use gst_segment_do_seek() to apply the instant-rate change to our ↵Sebastian Dröge1-8/+4
current segment
2018-06-14basesink: Use upstream segment positions for all calculationsSebastian Dröge1-29/+52
2018-06-14basesink: Implement initial instant-rate-sync-time event handlingSebastian Dröge1-3/+248
2018-06-14bin: Implement aggregation of INSTANT_RATE_REQUEST messages and sending of ↵Sebastian Dröge1-0/+151
INSTANT_RATE_SYNC_TIME event
2018-06-14basesink: Post instant-rate-request message when receiving an ↵Sebastian Dröge1-0/+15
instant-rate-change event
2018-06-14event/message: Add new instant-rate-sync-time event and instant-rate-request ↵Sebastian Dröge8-51/+208
message
2018-06-14event: Add new GST_EVENT_INSTANT_RATE_CHANGE and ↵Sebastian Dröge7-2/+85
GST_SEEK_FLAGS_INSTANT_RATE_CHANGE A seek with that flag set must be non-flushing, not change the playback direction and start/stop position. A seek handler will then send the new GST_EVENT_INSTANT_RATE_CHANGE event downstream for downstream elements to immediately apply the new playback rate before the new in-band segment event arrives.
2018-05-17Release 1.14.1Tim-Philipp Müller6-23/+331
2018-05-17Update docsTim-Philipp Müller3-2/+4
2018-05-17Update translationsTim-Philipp Müller1-199/+239
2018-05-14pad: Fix race condition causing the same probe to be called multiple timesSebastian Dröge1-23/+64
Probes were remembering a cookie that was used to check if the probe was already called this time before the probes list changed. However the same probes could've been called by another thread in between and thus gotten a new cookie, and would then be called a second time. https://bugzilla.gnome.org/show_bug.cgi?id=795987
2018-05-08gst: Use memcpy() instead of strncpy() where appropriateEdward Hervey2-2/+2
strncpy() is assumed to be for strings so the compiler assumes that it will need an extra byte for the string-terminaning NULL. For cases where we know it's actually "binary" data, just copy it with memcpy. Fixes compiler warnings with gcc 8. https://bugzilla.gnome.org/show_bug.cgi?id=795756
2018-05-05bufferlist: fix abort due to underflow when creating 0-sized listTim-Philipp Müller2-0/+13
gst_buffer_list_new_sized(0) will cause an underflow in a calculation which then makes it try to allocate huge amounts of memory, which may lead to aborts. https://bugzilla.gnome.org/show_bug.cgi?id=795758
2018-05-05aggregator: fix exports and since marker for new APITim-Philipp Müller2-1/+2
https://bugzilla.gnome.org/show_bug.cgi?id=795332
2018-05-04aggregator: Add API to check if a pad has a new bufferOlivier Crête3-0/+25
https://bugzilla.gnome.org/show_bug.cgi?id=795332
2018-04-23meson: fix invalid keyword argument warningsTim-Philipp Müller1-2/+2
cc.compiles() doesn't have a 'prefix' argument (yet) and the prefix has already been prepended to the source code snippets. https://github.com/mesonbuild/meson/issues/2364
2018-04-23multiqueue, inputselector: show pad properties in gst-inspect-1.0Tim-Philipp Müller2-3/+4
2018-04-16base: fix some GIR annotationsMark Nauwelaerts7-9/+8
Mostly related to out parameters and their transfer
2018-04-16gst: add some GIR array annotationsMark Nauwelaerts2-2/+3
2018-04-11gstdebug: fix occasional deadlocks on windows when outputting debug loggingTim-Philipp Müller1-3/+13
When outputting debug logs on Windows, some sections are protected with a non-recursive lock. Turns out though that gst_debug_message_get() might indirectly, via our printf format extensions, call code which in turn would try to log something when it can't handle something. If that happens we end up in gst_debug_log_default() again recursively and try to again take the lock that's already taken, thus deadlocking. Format the debug message string outside of the critical section instead to avoid this. https://bugzilla.gnome.org/show_bug.cgi?id=784382
2018-04-11gsturi: include gstconfig.h earlier for GST_API defineTim-Philipp Müller1-1/+2
2018-04-05gstinfo: fix debug levels being applied in the wrong orderJan Alexander Steffens (heftig)2-17/+7
Remove unneeded reapplication of patterns. Besides being superfluous (gst_debug_reset_threshold already applies patterns) it was also wrong and didn't stop checking patterns after the first match (broken in 67e9d139). Also fix up unit test which checked for the wrong order. https://bugzilla.gnome.org/show_bug.cgi?id=794717
2018-04-05bin: fix deep-element-added signal debug log messageMatthew Waters1-1/+1
Adding the bin to the child element doesn't really make sense.
2018-03-25gst: Fix compilation with latest GLibSebastian Dröge2-2/+2
g_object_ref() forwards the type of its argument nowadays. ./grammar.y:409:14: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] gstchildproxy.c:212:7: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
2018-03-25net: Include gstnetcontrolmessagemeta.h in net.hSebastian Dröge1-0/+1
2018-03-25paramspecs: Set g-i annotation values for GST_PARAM_* constantsSebastian Dröge1-5/+5
2018-03-25elementfactory: GST_ELEMENT_FACTORY_TYPE_DECODABLE had DECRYPTOR added, ↵Sebastian Dröge1-1/+1
update g-i annotation value
2018-03-19Release 1.14.0HEADmasterTim-Philipp Müller6-63/+209
2018-03-19Update docsTim-Philipp Müller2-2/+2
2018-03-13Release 1.13.91Tim-Philipp Müller6-39/+1146
2018-03-13Update docsTim-Philipp Müller2-2/+2
2018-03-13meson: docs: update api decorators to ignoreTim-Philipp Müller2-2/+2
2018-03-13docs: fixup for new libs API export decoratorsTim-Philipp Müller1-1/+2
2018-03-13net: GST_EXPORT -> GST_NET_APITim-Philipp Müller11-28/+71
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-03-13controller: GST_EXPORT -> GST_CONTROLLER_APITim-Philipp Müller13-30/+68
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-03-13check: GST_EXPORT -> GST_CHECK_APITim-Philipp Müller9-148/+186
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-03-13base: GST_EXPORT -> GST_BASE_APITim-Philipp Müller20-330/+382
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-03-13gst: GST_EXPORT -> GST_APITim-Philipp Müller73-1598/+1602
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-03-12promise: be more explicit in docs about who/when to use reply/interrupt/expireMatthew Waters1-11/+33
https://bugzilla.gnome.org/show_bug.cgi?id=794153
2018-03-07basesrc: Balance unlock/unlock_stop in _src_stop()Nicolas Dufresne1-0/+3
Otherwise it's possible that we won't be able to start again depending the implementation. We do start/stop in normal use cases whenever GST_QUERY_SCHEDULING happens before we are started. https://bugzilla.gnome.org/show_bug.cgi?id=794149
2018-03-07basesrc: No need to stop flushing in start_completeNicolas Dufresne1-4/+0
The flushing state is handled a bit differently, there is no need to stop flushing in start_complete. This would other result in unlock_stop being called without unlock_start. Unlike what the old comment says, there is no need to take the live lock here, we are still single threaded at this point (app thread or the state change thread). Also, we will wait for playing state in create/getrange, no need to do that twice. https://bugzilla.gnome.org/show_bug.cgi?id=794149
2018-03-05debugutils: Change dot-file functions documentation to proper gtk-docSebastian Dröge1-3/+3
This way gobject-introspection also picks it up and handles our annotations. See https://gitlab.gnome.org/GNOME/gobject-introspection/issues/194
2018-03-05queuearray: Implement pop_tail_struct() for completenessSebastian Dröge4-0/+39
All other variants of {peek,pop}_{head,tail}_{,struct} were already implemented. https://bugzilla.gnome.org/show_bug.cgi?id=794035