Matthew Waters
f0e5c8e0f2
ci/fuzzing: update glib version to 2.72.0
...
Fixes an issue where on configure, glib's internal gnulib was tripping
up the undefined behaviour sanitizer with a divide by 0.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1976 >
2022-03-18 18:35:05 +11:00
Vivienne Watermeier
2b85e5f99c
glvideomixerelement: send translated navigation events to the relevant sink pads
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1495 >
2022-03-18 06:22:02 +00:00
Vivienne Watermeier
6fd7e7699d
compositor: send translated navigation events to the relevant sink pads
...
Fixes #888
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1495 >
2022-03-18 06:22:02 +00:00
Matthew Waters
03ff52ee69
ci/fuzzling: fix oss-fuzz build
...
gst-plugins-base doesn't have a cairo option anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1975 >
2022-03-18 13:16:42 +11:00
Thibault Saunier
1a5d2ce98c
validate: Cleanup ABI and make it ready to be stabilized this cycle
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Thibault Saunier
5089139e57
validate: Introspect gst-validate-runner.c
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Thibault Saunier
2ef203e659
validate: Add getters for ValidateReports
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
5ea0c20a33
validate: Change IssueId type to guint32
...
Which is a bit more bindings-friendly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
616d1dd6ba
validate: ssim: Respect requested dump recurrence parameter
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
c275b5c678
validate: Keep scenario alive enough when executing actions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
a9e3b05055
validate: Introspection annotation cleanups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
d07f2323fe
validate: Fix padding and constants
...
Without this the Rust -sys validate crate tests don't pass.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
8780da3ffe
validate: Expose all public headers in main header
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Philippe Normand
aa917a9d9a
validate: Fix pkgconfig name
...
Making it consistent with the reset of GStreamer. This also means that
anyone wanting to target -validate >= 1.22 needs to change the way they
link against it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1810 >
2022-03-17 14:48:34 +00:00
Sangchul Lee
7691c6776a
rtpjitterbuffer: Fix invalid memory access in rtp_jitter_buffer_pop()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1973 >
2022-03-17 12:46:14 +00:00
Vivienne Watermeier
8cb5d9f49e
documentation: improve misleading wording
...
The documentation for several gst_*_writable_structure functions stated
that they would never return NULL, without making clear that the passed
object is required to be writable. This changes the wording in those
cases to make that requirement more clear.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1784 >
2022-03-17 11:56:37 +00:00
Matthew Waters
098ff9a453
ccconverter: drop data with a warning if scratch buffers overflow
...
Instead of asserting which could bring down the entire application.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1972 >
2022-03-17 21:46:44 +11:00
Hou Qi
b962126b06
v4l2videodec: set frame duration according to framerate
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1953 >
2022-03-16 14:15:04 +00:00
Philippe Normand
4277af3219
uri: Build doubly-linked list by prepending items
...
As outlined in the API documentation, g_list_append() iterates over the whole
list, which can quickly introduce performance issues when the list becomes very
big, such as for data URIs for instance.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1909 >
2022-03-16 11:39:28 +00:00
Philippe Normand
b8ccf7f802
typefind: Skip parsing of data URIs
...
Commit a46ab2ced2
introduced a regression,
breaking typefinding for media content muxed in mp4 container and serialized to
data URIs. For this case it doesn't make sense to look for a file extension, so
skip URI parsing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1909 >
2022-03-16 11:39:28 +00:00
Corentin Noël
a451b66479
basesink: Fix annotations
...
We should annotate the Class and not the object itself.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1965 >
2022-03-16 10:37:44 +00:00
Corentin Noël
a5249f7c5f
gst-plugins-base: Fix several annotations
...
Add annotations for virtual methods when possible.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1965 >
2022-03-16 10:37:44 +00:00
Corentin Noël
15a75b99df
validate: Fix typo in get_reports
...
Return without s isn't taken into account for the introspection.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1965 >
2022-03-16 10:37:44 +00:00
Tim-Philipp Müller
7895bf38ad
rtspsrc: proxy new "add-reference-timestamp-meta" property from rtpjitterbuffer
...
When syncing to an RFC7273 clock this will add the original
reconstructed reference clock timestamp to buffers in form
of a GstReferenceTimestampMeta.
This is useful when we want to process or analyse data based
on the original timestamps untainted by any local adjustments,
for example reconstruct AES67 audio streams with sample accuracy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1964 >
2022-03-16 09:52:58 +00:00
Tim-Philipp Müller
c29d741c0e
rtpbin: proxy new "add-reference-timestamp-meta" property from rtpjitterbuffer
...
When syncing to an RFC7273 clock this will add the original
reconstructed reference clock timestamp to buffers in form
of a GstReferenceTimestampMeta.
This is useful when we want to process or analyse data based
on the original timestamps untainted by any local adjustments,
for example reconstruct AES67 audio streams with sample accuracy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1964 >
2022-03-16 09:52:58 +00:00
Tim-Philipp Müller
c88bfc0b3e
rtpjitterbuffer: add "add-reference-timestamp-meta" property
...
When syncing to an RFC7273 clock this will add the original
reconstructed reference clock timestamp to buffers in form
of a GstReferenceTimestampMeta.
This is useful when we want to process or analyse data based
on the original timestamps untainted by any local adjustments,
for example reconstruct AES67 audio streams with sample accuracy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1964 >
2022-03-16 09:52:58 +00:00
Philippe Normand
3e3ba1772c
wpe: Reintroduce persistent WebContext
...
A WebContext leak was introduced in MR
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252 .
If we wanted one WebContext per WebView we should also unref the
WebKitWebContext when destroying the WebView.
This patch reintroduces the persistent WebContext, initially part of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1484 .
Fixes #1084
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1933 >
2022-03-16 09:07:21 +00:00
Tim-Philipp Müller
a525a76e54
opusenc: change default bitrate-type from cbr to constrained-vbr
...
Which is the default in libopus itself as well, with a comment
that constrained-vbr is considered "safer for real-time use".
Unclear why CBR was the default in the first place.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1451 >
2022-03-16 07:12:30 +00:00
Mathieu Duponchelle
30d028317b
webrtcbin: fix deadlock when setting up FEC encoder
...
We bind transceivers' fec_percentage property to the FEC encoder
percentage property, and with the binding bidirectional a deadlock
was introduced by the latest changes from !1762 :
We take hold of the transceiver's object lock, then add the binding
and set the property to its initial value on the encoder, which causes
set_property to deadlock in the transceiver when the binding kicks in.
Changing the binding type to DEFAULT (source to target) is enough
to address the deadlock and still serves the original intent.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1967 >
2022-03-16 06:06:39 +00:00
MGlolenstine
5c54cad469
doc: handy-elements: fix audiotestsrc description
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1966 >
2022-03-16 06:00:08 +00:00
Sangchul Lee
2f7c843f2b
webrtcbin: Check data channel transport for notifying 'ice-gathering-state'
...
Previously, it did not care about data channel's. It is fixed by adding
some conditions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1957 >
2022-03-16 03:31:08 +00:00
Nirbheek Chauhan
1ae7ea508d
rtpbuffer: The out args for rtp extension data are optional
...
The code checks that these are != NULL before dereferencing them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1962 >
2022-03-16 02:48:34 +00:00
Hou Qi
738dbf1cb7
v4l2videodec: safely retrun from video_dec_loop with stream unlock
...
This is to avoid decoder hang when doing trick play between
different resolutions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1960 >
2022-03-16 02:13:00 +00:00
Sebastian Dröge
5ca39060f4
rtpjitterbuffer: Improve accuracy of RFC7273 clock time calculations
...
Previously the result of the calculations included inaccuracies caused
by the NTP clock estimation, which caused the timestamps to jitter
+/- 1/clockrate.
By reorganizing the calculations it is possible to get rid of this
inaccuracy and calculate deterministic and exact packet timestamps based
on the actual NTP clock as long as the estimation is not off by more
than 2**31 clockrate units.
The only remaining inaccuracy that is introduced now is caused by the
conversion from the NTP clock to the pipeline clock.
Also split up debug output, demote many messages to the trace debug
level and output more intermediate results.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1955 >
2022-03-15 23:33:37 +00:00
Nirbheek Chauhan
8c2ef0f025
twcc: Add some logging to debug TWCC feedback
...
This should allow people to debug when TWCC feedback is not enabled
because they haven't set the extmap in the caps.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1952 >
2022-03-15 22:32:07 +00:00
Nirbheek Chauhan
a6bb63dcd7
twcc: Note that packet-loss-pct can count reordering as loss
...
This is difficult to encounter in ordinary networks, but is
encountered when using tc-netem to add random delays to packets, and
also when your UDP stream is bonded over multiple links with varying
characteristics.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1952 >
2022-03-15 22:32:07 +00:00
Seungha Yang
c08ce58753
nvcodec: Move CUDA <-> GL, D3D11, NVMM copy function to utils
...
This method can be used in other elements as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1945 >
2022-03-15 21:51:50 +00:00
Seungha Yang
b3df58add1
nvh265sldec: Add support for delayed output
...
Delay 4 frames in case of non-live to improve throughput
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1937 >
2022-03-15 21:08:06 +00:00
Seungha Yang
1a0d5bff61
h265decoder: Add support for delayed output
...
Functionally identical to the other decoder baseclasses.
Delayed output can improve throughput depending on decoding APIs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1937 >
2022-03-15 21:08:06 +00:00
Seungha Yang
0624434d84
h265decoder: Update documentation
...
Sync up with other baseclasses
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1937 >
2022-03-15 21:08:06 +00:00
Seungha Yang
3e49ff0ff5
h265decoder: Drain decoder on new_sequence()
...
Holding previously decoded but not outputted pictures even after
new_sequence is not a safe approach in various aspect.
However, we cannot drain out DPB on new_sequence() unconditionally,
because there is a case where decoder should drop decoded pictures
if NoOutputOfPriorPicsFlag is set.
To detect NoOutputOfPriorPicsFlag before the new_sequence() call,
this patch splits decoding process into two path, one for nal unit parsing
in order to detect NoOutputOfPriorPicsFlag and then each nal unit
will be decoded.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1937 >
2022-03-15 21:08:06 +00:00
Seungha Yang
9494509ee0
h265decoder: Remove unused pts variable
...
We can know timestamp from associated GstVideoCodecFrame
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1937 >
2022-03-15 21:08:06 +00:00
Bastien Nocera
bd39ad4519
convertframe: Add support for GL-memory backend GstFrame input
...
Add "gldownload" early in the pipeline so that GL-memory backed raw
frames can be downloaded and processed on the CPU.
Closes : #1073
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1916 >
2022-03-15 20:31:24 +00:00
Havard Graff
e5bd9839c4
rtprtxsend: don't require clock-rate in caps
...
For multiplexing, the rtpstreams you are multiplexing might not use
the same clock-rate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1881 >
2022-03-15 19:05:00 +00:00
Havard Graff
4d31641302
rtprtxsend: don't start the task unless we are doing rtx
...
The rtxsend element can do pass-through when not enabled (no pt-map set)
and in those cases there is no point in starting an additional task
that does absolutely nothing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1880 >
2022-03-15 12:03:27 +00:00
Xavier Claessens
69863131bd
Bump Meson requirement to >=0.60.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 >
2022-03-14 08:56:54 -04:00
Xavier Claessens
0fa7923937
Meson: Set install_tag on some files
...
Meson tries to guess the tag (runtime, devel, etc) for every installed
file, but it cannot guess them all. There is a list at the end of
meson-log.txt of files we need to tag manually.
See https://mesonbuild.com/Installing.html#installation-tags .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 >
2022-03-14 08:56:54 -04:00
Havard Graff
6f57199958
rtprtxreceive: add ssrc-map property
...
Mirroring the rtxsend, this allows the application to "pre-map" the
retransmission-ssrcs to the "real" ssrc, if this information is known.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1878 >
2022-03-14 09:14:10 +00:00
Carlos Rafael Giani
671c89c392
mpg123: Add gapless playback support
...
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1028 >
2022-03-14 10:32:15 +02:00
Sebastian Dröge
abb8d54bb0
avaudenc: Add support for AV_PKT_DATA_SKIP_SAMPLES side data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1028 >
2022-03-14 10:32:15 +02:00