- Jan 17, 2019
-
-
Tim-Philipp Müller authored
-
Tim-Philipp Müller authored
-
Tim-Philipp Müller authored
-
- Jan 16, 2019
-
-
Nirbheek Chauhan authored
Either disable it when it's not supported, or setup the console to interpret them correctly when it's supported. Closes #351
-
- Jan 15, 2019
-
-
It's a gulong so we have to cast it to a guint64 when using it with G_GUINT64_FORMAT. Spotted by Vincent Penvern.
-
- Jan 14, 2019
-
-
Daniel Drake authored
GstDeviceProvider has a started_count private variable counter, and the gst_device_provider_start() documentation emphasizes the importance of balancing the start and stop calls. However, when starting a provider that is already started, the current code will never increment the counter more than once. So you start it twice, but it will have start_count 1, which is the maximum value it will ever see. Then when you stop it twice, on the 2nd stop, after decrementing the counter in gst_device_provider_stop(): else if (provider->priv->started_count < 1) { g_critical ("Trying to stop a GstDeviceProvider %s which is already stopped", GST_OBJECT_NAME (provider)); and the program is killed. Fix this by incrementing the counter when starting a device provider that was already started.
-
- Jan 11, 2019
-
-
Jordan Petridіs authored
While extremelly rare, time and gst_date_time_new_* will have diff values and potentially trigger an assertion. Thus move the calls as closely together as possible to mitigate this.
-
- Jan 10, 2019
-
-
Sebastian Dröge authored
This reverts commit 7f70d7a9
-
- Jan 09, 2019
-
-
-
The step restriction was completely ignored until now.
-
Just a bit of refactoring.
-
Sebastian Dröge authored
This is racy if the state lock of the parent bin is not taken. The parent bin might've just checked the flag in another thread and as the next step proceed to change the child element's state.
-
- Jan 07, 2019
-
-
Sebastian Dröge authored
We need to take the state lock here to ensure that we're not currently just before setting the state of this child element. Otherwise it can happen that we removed the element here and e.g. set it to NULL state, and shortly afterwards have another thread set it to a higher state again as part of a state change for the whole bin. When adding an element to the bin this is not needed as we require callers to always ensure after adding to the bin that the new element is set to the correct state.
-
- Jan 05, 2019
-
-
Tim-Philipp Müller authored
-
- Jan 03, 2019
-
-
We have to ensure that all background threads from thread pools are shut down, or otherwise they might not have had a chance yet to drop their last reference to the pipeline and then the assertion for a reference count of 1 on the pipeline fails.
-
And check for exact times as we can now do that thanks to the test clock being deterministic. Fixes gstreamer/gstreamer#313
-
- Dec 31, 2018
-
-
This adds two custom gdb commands: 'gst-dot' creates dot files that a very close to what GST_DEBUG_BIN_TO_DOT_FILE() produces. Object properties and buffer content (e.g. codec-data in caps) are not available. 'gst-print' produces high-level information about GStreamer objects. This is currently limited to pads for GstElements and events for the pads. The output can look like this: (gdb) gst-print pad.object.parent GstMatroskaDemux (matroskademux0) { SinkPad (sink, pull) { } SrcPad (video_0, push) { events: stream-start: stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/001:1274058367 caps: video/x-theora width: 1920 height: 800 pixel-aspect-ratio: 1/1 framerate: 24/1 streamheader: < 0x5555557c7d30 [GstBuffer], 0x5555557c7e40 [GstBuffer], 0x7fffe00141d0 [GstBuffer] > segment: time rate: 1 tag: global container-format: Matroska } SrcPad (audio_0, push) { events: stream-start: stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/002:1551204875 caps: audio/mpeg mpegversion: 4 framed: true stream-format: raw codec_data: 0x7fffe0014500 [GstBuffer] level: 2 base-profile: lc profile: lc channels: 2 rate: 44100 segment: time rate: 1 tag: global container-format: Matroska tag: stream audio-codec: MPEG-4 AAC audio language-code: en } }
-
-
Tim-Philipp Müller authored
Looks like an earlier version of the .c file.
-
- Dec 19, 2018
-
-
Nicolas Dufresne authored
This follows what git and systemd tools would do.
-
Nicolas Dufresne authored
Fixes #341
-
Tim-Philipp Müller authored
Fixes flaky appsrc unit test where depending on scheduling the submitted list might not be writable if submitted via an action signal from the application thread. Fixes gst-plugins-base#522
-
- Dec 18, 2018
-
-
I copied `error-after` to make the `eos-after` property, but it turned out there were some problems with that one, so this patch: adds separate counters (so setting to NULL and reusing the element will still work); clarifies the properties' min values; and reports an error when both are set.
-
- Dec 17, 2018
-
-
-
Seungha Yang authored
The documentation for WIN32 mktime indicates that for struct tm* before January 1, 1970, that -1 is returned, and since mktime is timezone dependent, the struct tm corresponding to 1:00, Jan. 1, 1970 might be failed. See also https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/mktime-mktime32-mktime64
-
-
- Dec 15, 2018
-
-
There was a dead assignment used outside of the bin/pipeline creation which was confusing (and unused). Just move that variable to where it is actually used. (Note that that variable was not needed outside of that block since the refactoring done in 2b33d331 )
-
Those values are always set after before usage
-
That assertion was accidentally removed in the refactoring done in 60de1f26
-
readable is set just after before usage since 906bbd38
-
- Dec 14, 2018
-
-
Sebastian Dröge authored
Otherwise it can easily happen that the pad is destroyed before the thread disappears, as happened sometimes in the test_pad_probe_block_add_remove test where joining of the thread was done *after* the pad was unreffed and destroyed. Fixes gstreamer/gstreamer#339
-
Sebastian Dröge authored
-
- Dec 11, 2018
-
-
Using `num-buffers` can be unpredictable as buffer sizes are often arbitrary (filesrc, multifilesrc, etc.). The `error-after` property on `identity` is better but obviously reports an error afterwards. This adds `eos-after` which does exactly the same thing but reports EOS instead.
-
Guillaume Desmottes authored
Convenient helper setting a caps feature on all the structures of a caps.
-
- Dec 06, 2018
-
-
Roman Sivriver authored
gst: fixed the install command for gdb python macros on macos - `install -D` is not supported by BSD install
-
- Dec 05, 2018
-
-
Existing test for iterating/removing buffer meta data was insufficient to detect linked list corruption when removing multiple items, and could also suffer from such corruption in attempting to count remaining items. Modified the one test and added several others to exercise multiple scenarios. Validates fix for issue #332.
-
Fix corruption of meta list head when removing metas at the beginning during iteration. Linked list handling in gst_buffer_foreach_meta failed to track the previous entry and update the correct next pointer when removing items from beyond the head of the list, resulting in arbitrary list pointer corruption. Closes #332
-
Thibault Saunier authored
From cd1dee0 to 59cb678
-
- Nov 30, 2018
-
-
Nicolas Dufresne authored
This was no longer optional, leading to deadcode. This regression was found trying to fix the unwind variant in cerbero.
-
- Nov 29, 2018
-
-
Zeeshan Ali authored
They seemed incompatible with other colors.
-