Nicolas Dufresne
b8f1f2195e
v4l2bufferpool: Avoid set_flushing warning
...
The gst_buffer_pool_set_flushing() warns when that function is called
on an inactive pool. Avoid the warning by checking the state, this is
similar to what we do in gst_v4l2_object_unlock().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649 >
2020-06-26 19:24:21 +00:00
Nicolas Dufresne
0344c50eaf
v4l2allocator: Fix data offset / bytesused size validation
...
The check was too strict causing spurious warning. Now check for <= so that 0
sized buffer do not cause a warning.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649 >
2020-06-26 19:24:21 +00:00
Nicolas Dufresne
dbdbcfe7ff
v4l2videoenc: Fix negotiation caps leak
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/649 >
2020-06-26 19:24:21 +00:00
Tim-Philipp Müller
4f555ecf8e
splitmuxsink: flesh out docs for format-location* signals
...
Make explicit that the returned strings need to be g_free()-able.
Fixes #753
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/652 >
2020-06-26 18:31:10 +00:00
Nicolas Dufresne
7bbe4653a4
v4l2videoenc: Skip negotiation of profiles/level if no codec
...
The codec structure is optional and not used for fwht test codec. This
was leading to a crash dereferencing NULL pointer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/650 >
2020-06-26 13:37:21 -04:00
Havard Graff
57eebe8b05
rtpstats: guard against division by zero
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/646 >
2020-06-26 15:29:25 +00:00
Havard Graff
e45cc475bd
rtptwcc: fix pruning of ack'ed twcc-packets
...
Fixes #750
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/645 >
2020-06-26 12:53:07 +01:00
Nirbheek Chauhan
0fcd87e42a
meson: Build Qt5 tests with -std=c++11
...
We already do this for the plugin.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/780#note_548179
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/642 >
2020-06-25 15:20:55 +00:00
Sebastian Dröge
13331e051f
splitmuxsink: Add new properties for setting muxer/sink presets
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/644 >
2020-06-25 17:53:00 +03:00
Mathieu Duponchelle
8d464c8361
autodetect: mark filter-caps property as DOC_SHOW_DEFAULT
...
When generating the cache we inspect the base class through
an instance of one of its subclasses. We don't want potential
assignments in subclasses initialization to leak into the
base class documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/641 >
2020-06-24 17:04:51 +02:00
Mathieu Duponchelle
1863259ab8
vpxenc: mark all properties as GST_DOC_SHOW_DEFAULT
...
When generating the cache we inspect the base class through
an instance of one of its subclasses. We don't want potential
assignments in subclasses initialization to leak into the
base class documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/641 >
2020-06-24 16:45:27 +02:00
Mathieu Duponchelle
f97430f6e9
docs: mark GstIirEqualizer as plugin API
2020-06-23 19:04:03 +02:00
Thibault Saunier
95efaf9d56
vpx: Fix links to baseclass properties
2020-06-23 12:47:44 -04:00
Mathieu Duponchelle
ceece207e0
docs: mark more types as plugin API
2020-06-23 12:07:47 -04:00
Mathieu Duponchelle
65ee7f0d41
plugins_cache: add base classes
2020-06-23 10:25:55 -04:00
Mathieu Duponchelle
6939bafd09
meson: mark plugins cache target as always stale
2020-06-23 10:25:55 -04:00
Mathieu Duponchelle
c897fe2b73
docs: mark more types as plugin API
2020-06-23 10:25:55 -04:00
Thibault Saunier
c6d2e33a98
doc: Stop documenting properties from parents
2020-06-23 10:25:55 -04:00
He Junyan
15fac84f63
deinterlace: Add the missing ORC_RESTRICT define.
...
ORC_RESTRICT may not be defined in yadif.c and cause build error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/637 >
2020-06-21 20:11:06 +08:00
Havard Graff
cdba5952ed
rtpsession: make tests more stable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/410 >
2020-06-20 19:45:33 +00:00
Tim-Philipp Müller
12e020189c
docs: update plugin cache for new version
...
Some default values include our version string, like
user agent strings.
2020-06-20 20:42:37 +01:00
Tim-Philipp Müller
9e0cdc6ff7
Back to development
2020-06-20 00:28:11 +01:00
Tim-Philipp Müller
03ac058183
Release 1.17.1
2020-06-19 19:19:01 +01:00
Seungha Yang
9122bfdfb7
meson: deinterlace: Check host cpu type for asm build
...
Add host cpu type check as we would enable asm only for x86_64
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/636 >
2020-06-19 20:28:14 +09:00
Seungha Yang
154146b9cc
meson: Fix build error with MSVC caused by ARCH_X86_64 define
...
ARCH_X86_64 define will enable GCC specific code path in dv_types.h
while building dv plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/636 >
2020-06-19 19:54:08 +09:00
Tim-Philipp Müller
8c8b788f73
shout2: advertise documentation caps properly
...
shout2send caps depend on what the libshout2
version in question supports, but the
documentation caps should always be the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/635 >
2020-06-19 10:32:45 +01:00
Jan Schmidt
5c68e06b00
qtdemux: Split tag reading functions out
...
Move some code out of the enormous qtdemux.c into a separate
qtdemux_tags helper, and make some structs available via qtdemux.h
to accommodate that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634 >
2020-06-18 14:41:27 +00:00
Jan Schmidt
0ddfc5020f
qtdemux: Move some tree parsing files out to a separate file.
...
Reduce a tiny bit of the bulk of qtdemux.c by moving some
agnostic helper functions out.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634 >
2020-06-18 14:41:27 +00:00
Jan Schmidt
e2d75939bb
qtdemux: Factor out svmi parsing. Fix bounds checking.
...
Move the SVMI stereoscopic atom parsing out to a helper
function to shrink qtdemux_parse_trak a bit.
Add a bounds check that the received atom is large enough
before parsing it.
Add a note to the atom parser that svmi comes from the
MPEG-A spec 23000-11.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/634 >
2020-06-18 14:41:27 +00:00
Guillaume Desmottes
27ced4c8e6
pulse: fix discovery of newly added devices
...
Fix regression introduced in 7bc5e28d85
preventing the device provider to send the device-added message for new
devices.
By early returning the patch was discarding add/remove events.
Fix #735
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/626 >
2020-06-18 14:05:42 +00:00
Tim-Philipp Müller
87d4374655
examples: qmlsink: rename qrc file to avoid naming conflicts with older meson versions
...
Would get "Tried to create target "qt5-qmlsink_qrc", but a
target of that name already exists." with older meson versions.
Work around that by renaming the qrc file.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/633 >
2020-06-18 10:58:32 +01:00
Nirbheek Chauhan
c54aa053d1
meson: Check the nasm version with run_command
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/751
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/631 >
2020-06-17 16:42:16 +05:30
Seungha Yang
8b4f18d53b
rtspsrc: Don't return TRUE for unhandled query
...
Expected return value for unhandled query is FALSE
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/629 >
2020-06-16 19:35:30 +09:00
Vivia Nikolaidou
536ff4776f
deinterlace: Add yadif ASM optimisations
...
Measured to be about 3.4x faster than C
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/621 >
2020-06-16 12:53:25 +03:00
Vivia Nikolaidou
ef78014d15
deinterlace: Fix invalid read in yadif
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/621 >
2020-06-12 13:21:02 +03:00
Matthew Waters
6fba2e3dd3
qt/gloverlay: reset OpenGL state after Qt drawing
...
Reset to the original OpenGL state as required by the GStreamer OpenGL
API contract. Fixes output with a glimagesink element downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623 >
2020-06-12 07:23:19 +00:00
Matthew Waters
ffe4d09efc
qt/gloverlay: reset current OpenGL context after Qt
...
Qt may replace the drawable with its own which breaks output if Qt is
not displaying the resulting video as used with e.g. glimagesink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/623 >
2020-06-12 07:23:19 +00:00
Sebastian Dröge
556e7ab210
flvdemux: Change a GST_ERROR_OBJECT() back to GST_DEBUG_OBJECT()
...
It was accidentally changed in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/436
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/624 >
2020-06-12 09:52:56 +03:00
Jordan Petridis
3e2420361a
Use gst_element_class_set_metadata when passing dynamic strings
...
gst_element_class_set_metadata is meant to only be used with
static or inlined strings, which isn't the case for the 2 elements
here resulting in use-after-free later on.
https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c#gst_element_class_set_static_metadata
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/622 >
2020-06-11 20:39:33 +03:00
Sebastian Dröge
f8196e06d5
Revert "rtpjitterbuffer: Avoid deadlock on flush"
...
This reverts commit 54810bf44f
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/620 >
2020-06-10 16:31:06 +00:00
Thibault Saunier
4419f79aaf
docs: Update plugins cache
2020-06-10 10:29:27 -04:00
U. Artie Eoff
bf0842aa0c
rtpjitterbuffer: g_queue_clear_full introduced in glib 2.60
...
Define g_queue_clear_full if glib < 2.60.
Fixes #747
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/619 >
2020-06-09 13:09:20 -07:00
Thibault Saunier
29a661d4a4
rtpsession: Make internal-ssrc as show default for doc
2020-06-09 11:45:13 -04:00
Thibault Saunier
4d7629dece
docs: Update plugins cache
2020-06-09 11:45:13 -04:00
Tim-Philipp Müller
d654c6feae
tests: don't pull in all -bad plugin, only allow the one we need
...
Set up our plugin include list for tests in such a way that
we don't pull in *all* plugins from -bad but only the one
used in the splitmuxsink unit test, i.e. the timecode plugin,
so we don't accidentally use other encoders/decoders such as
nvenc/dec for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/617 >
2020-06-09 15:23:40 +01:00
Nicolas Dufresne
5b2ad31583
rtptimerqueue: Fix leak on timer collision
...
While the caller should make sure this does not happen, make sure timer
collision are not silently ignored and leaked.
Fixes #726
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/616 >
2020-06-08 17:54:53 -04:00
Nicolas Dufresne
b4f421e9aa
rtpjitterbuffer: Keep JBUF lock while processing timers
...
Until now, do_expected_timeout() was shortly dropping the JBUF_LOCK in order
to push RTX event event without causing deadlock. As a side effect, some
CPU hung would happen as the timerqueue would get filled while looping over
the due timers. To mitigate this, we were processing the lost timer first and
placing into a queue the remainign to be processed later.
In the gap caused by an unlock, we could endup receiving one of the seqnum
present in the pending timers. In that case, the timer would not be found and
a new one was created. When we then update the expected timer, the seqnum
would already exist and the updated timer would be lost.
In this patch we remove the unlock from do_expected_timeout() and place all
pending RTX event into a queue (instead of pending timer). Then, as soon as
we have selected a timer to wait (or if there is no timer to wait for) we send
all the upstream RTX events. As we no longer unlock, we no longer need to pop
more then one timer from the queue, and we do so with the lock held, which
blocks any new colliding timers from being created.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/616 >
2020-06-08 17:54:53 -04:00
Guillaume Desmottes
0594d2f981
tests: vp9enc: enforce I420 format
...
Test was not enforcing a video format on videotestsrc. I420 was picked
as it was the first format in GST_VIDEO_FORMATS_ALL which will no longer
be true (gst-plugins-base!689).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/615 >
2020-06-08 17:58:29 +02:00
Edward Hervey
54810bf44f
rtpjitterbuffer: Avoid deadlock on flush
...
When a GST_EVENT_FLUSH_START reaches the jitterbuffer, there is a chance that
our task is currently blocking waiting for a timer.
There was two problems:
* That wait wasn't checking for flushing situations
* The flushing handling wasn't waking up that conditional (to check whether it
should abort)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/608 >
2020-06-08 13:34:26 +02:00
Mathieu Duponchelle
f63299ff2f
plugins: uddate gst_type_mark_as_plugin_api() calls
2020-06-06 00:42:25 +02:00