Sebastian Dröge
adf80ad1a7
rtphdrext: Return non-floating references from gst_rtp_header_extension_create_from_uri()
...
The header extension objects are never getting a parent object and using
floating references only complicates usage, especially via dynamic API
like signals.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1582 >
2022-01-27 14:43:41 +00:00
Sebastian Dröge
2584cd90e3
rtphdrext: Use set_metadata()
instead of set_static_metadata()
...
The latter needs a static string.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1583 >
2022-01-27 14:27:16 +02:00
Mathieu Duponchelle
830d1595b9
VideoInfo, AudioInfo: fix usage with python bindings
...
* Expose an actual constructor from caps
* Error out in overrides for code that was using the "manual
allocation" pattern which only worked by chance. Direct
the script writer to the new_from_caps constructor instead.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-python/-/issues/47
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1571 >
2022-01-27 08:36:46 +00:00
Tim-Philipp Müller
f03d966421
gst-plugins-base: update translations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1579 >
2022-01-27 01:38:12 +00:00
Vivia Nikolaidou
88e1b9081e
audioaggregator: Return NOT_NEGOTIATED when the configuration is invalid
...
Otherwise we just end up outputting garbage.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1558 >
2022-01-26 10:24:21 +00:00
Nirbheek Chauhan
95aa04c78f
videoaggregator: Remove extra semicolon in macro usage
...
This is usually necessary to allow gst-indent to treat it as
a statement, but we do not run gst-indent on headers and we do not
have extra semicolons in other places that this macro is used in the
header. Fixes warnings when using the header:
```
In file included from gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/video.h:185,
from XYZ:9001:
gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:206:78: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
206 | G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstVideoAggregatorConvertPad, gst_object_unref);
| ^
gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:214:181: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
214 | G_DECLARE_DERIVABLE_TYPE (GstVideoAggregatorParallelConvertPad, gst_video_aggregator_parallel_convert_pad, GST, VIDEO_AGGREGATOR_PARALLEL_CONVERT_PAD, GstVideoAggregatorConvertPad);
| ^
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1572 >
2022-01-26 11:12:34 +05:30
Vivia Nikolaidou
64ac6a1d16
audiotestsrc: Produce a default channel mask if possible
...
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1560 >
2022-01-24 14:05:50 +00:00
Seungha Yang
fe870b706d
video-converter: Fix for broken gamma remap with high bitdepth YUV output
...
Scale down the matrix before calculating RGB -> YUV matrix
otherwise offset values will be wrong
Fixing pipeline
videotestsrc ! video/x-raw,format=ARGB ! videoconvert gamma-mode=remap ! \
video/x-raw,format=P010_10LE,colorimetry="bt2020"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1432 >
2022-01-24 10:59:38 +00:00
Sebastian Dröge
64085c20b4
videodecoder: Fix property description for new properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1556 >
2022-01-23 13:38:37 +02:00
Mathieu Duponchelle
8983696e39
decodebin2: raise multiqueue max-size-bytes
...
The earlier size of 2 MB was set back in 2009, it doesn't
seem unreasonable to raise it to 8 MB these days. The use
case at hand is matroskademux containing both a video stream
with a very low amount of compression but no decoding latency,
and a H265 stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1538 >
2022-01-21 00:09:03 +00:00
Seungha Yang
a1da81bee6
Revert "videodecoder: Forward hdr-format info downstream"
...
This reverts commit 9b852181d8
.
It's leftover commit which should've been reverted as a part of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1148
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1475 >
2022-01-20 15:51:13 +00:00
Seungha Yang
5bccbdc02f
tools: gst-play: Enable Windows high-resolution clock
...
Apply https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/817
to gst-play as well, especially for better high-framerate
(60fps or higher) video support, because
15ms default clock precision (actual value is system dependent)
is not sufficient for such scenario.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1541 >
2022-01-20 04:25:03 +09:00
Tomasz Andrzejak
5fb769e95d
Add FEC SDP message test
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1527 >
2022-01-19 16:05:11 +00:00
Tomasz Andrzejak
95f5538fa4
sdpmessage: fix mapping single char fmtp params
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1527 >
2022-01-19 16:05:11 +00:00
Sebastian Dröge
8dfe70d17f
codec-utils: Mark various string return values as nullable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1539 >
2022-01-19 11:05:26 +02:00
Tim-Philipp Müller
b53ea86ab0
rtphdrext: increase GstRTPHeaderExtensionClass padding to LARGE
...
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748#note_1223253
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1537 >
2022-01-19 05:41:40 +00:00
Philippe Normand
62b8caa6ab
pbutils: Define one debug category per module
...
Follow-up of https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1526 >
2022-01-18 18:19:46 +00:00
Seungha Yang
e37bbc054e
compositor: Always draw if all input buffers are GAP
...
Otherwise output buffers will contain random scene
(previously rendered or arbitrary initial values) since we don't
draw onto output buffer at all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1498 >
2022-01-13 21:29:15 +00:00
Seungha Yang
a13309be4a
videoaggregator: Don't pass GAP buffer to prepare_frame_start()
...
Likewise we do check the same condition in prepare_frames_finish(),
ignore GAP buffer (zero size with GST_BUFFER_FLAG_GAP flag) without
any further processing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1498 >
2022-01-13 21:29:15 +00:00
Seungha Yang
d5f5a1c25f
uridecodebin: Fix critical warnings
...
Don't pass non-GstObject object to there.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1519 >
2022-01-13 18:01:57 +00:00
Philippe Normand
6a3f2f0ba6
pbutils: Simplify h264_caps_structure_get_profile_flags_level a bit
...
Refactoring, removing one level of indentation from the function.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505 >
2022-01-13 17:15:36 +00:00
Philippe Normand
074c5d85cb
pbutils: H.265 support for gst_codec_utils_caps_get_mime_codec()
...
The codec_data caps payload is parsed and a MIME codec string is generated
according to the ISO/IEC 14496-15 specification.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505 >
2022-01-13 17:15:36 +00:00
Philippe Normand
1c8f7c32aa
pbutils: Add a pbutils debug category
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505 >
2022-01-13 17:15:36 +00:00
Jordan Petridis
86a62d94ed
gstglutils: introspection annotations fixups
...
* gst_gl_ensure_element_data: specify the type for the element arg
* gst_gl_handle_set_context: correctly annotate the display and
gl_ctx as just (out) instead of (inout)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1501 >
2022-01-12 12:11:47 +00:00
Sebastian Dröge
79ce12416f
codec-utils: Use nullable annotation instead of allow-none for various Opus functions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506 >
2022-01-12 10:19:45 +00:00
Sebastian Dröge
e667c95674
codec-utils: Annotate out parameters for Opus functions as (optional)
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506 >
2022-01-12 10:19:45 +00:00
Sebastian Dröge
6de587593a
codec-utils: Add missing annotations to gst_codec_utils_h264_get_profile_flags_level()
...
And fix some minor typos.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506 >
2022-01-12 10:19:45 +00:00
Nirbheek Chauhan
1be6d6ccf5
meson: Add explicit check: kwarg to all run_command() calls
...
This is required since Meson 0.61.0, and causes a warning to be
emitted otherwise:
2c079d855e
https://github.com/mesonbuild/meson/issues/9300
This exposed a bunch of places where we had broken run_command()
calls, unnecessary run_command() calls, and places where check: true
should be used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1507 >
2022-01-09 18:12:47 +05:30
Nirbheek Chauhan
945fd11907
audio: Add logging that was useful in figuring out the last commit
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1461 >
2022-01-08 05:15:30 +00:00
Nirbheek Chauhan
554a2a5145
audio-converter: Fix resampling when there's nothing to output
...
Sometimes we can't output anything because we don't have enough
incoming frames. In that case, the resampler was trying to call
do_quantize() and do_resample() in a loop forever because there would
never be samples to output (so chain->samples would always be NULL).
Fix this by not calling chain->make_func() in a loop -- seems
completely unnecessary since calling it over and over won't change
anything if the make_func() can't output samples.
Also add some checks for the input and / or output being NULL when
doing conversion or quantization. This will happen when we have
nothing to output.
We can't bail early, because we need resampler->samples_avail to be
updated in gst_audio_resampler_resample(), so we must call that and
no-op everything along the way.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1461 >
2022-01-08 05:15:30 +00:00
Mark Nauwelaerts
41fe17adda
uridecodebin: use non-floating object as signal argument
...
... as was the case with source-setup signal until change of order
in commit 52bca104e4
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1457 >
2021-12-19 18:27:50 +01:00
Seungha Yang
11791f7ce5
video-info: Don't assume colorimetry of UHD resolution as BT.2020
...
BT.2020 color primaries are designed to cover much wider range of
CIE chromaticity than BT.709, and also it's used for both SDR and HDR
contents. So, the incorrect assumption (i.e., BT.709 as a BT.2020)
is risky and resulting image color tends to be visually very wrong.
Unless there's obvious clue, don't consider color space of high resolution
video stream as BT.2020
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1445 >
2021-12-16 12:22:27 +00:00
Thibault Saunier
9ac502c21d
sdp: Handle level-asymmetry-allowed for H264 streams
...
The ["level-asymmetry-allowed"] field states that the peer wants the
profile specified in the "profile-level-id" fields but doesn't care
about the level. To express this in GStreamer caps term, we add a
"profile" field in the caps, which reuses the usual "profile" semantics
for H.264 streams and, and remove "profile-level-id" and
"level-asymmetry-allowed" fields.
["level-asymmetry-allowed"]: https://www.iana.org/assignments/media-types/video/H264
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1410 >
2021-12-12 10:59:00 -03:00
Thomas Klausner
0b0bc5956d
tcp: fix build on Solaris
...
Add missing header.
From Claes Nästén via http://gnats.netbsd.org/56509
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1364 >
2021-11-19 00:07:42 +00:00
Víctor Manuel Jáquez Leal
6d7dc93a45
uridecodebin3: Nullify current item after all play items are freed.
...
There's a potential race condition with this sort of pipelines on
certain systems (depends on the processing load):
GST_DEBUG_DUMP_DOT_DIR=/tmp \
gst-launch-1.0 uridecodebin3 uri=file://stream.mp4 ! glupload ! \
glimagesink --gst-debug=*:4
Right after the pipeline passes from PAUSED to READY, bin_to_dot_file
dumps uridecodebin3 properties, but current uri and suburi might be
already freed, causing a potential use-after-freed.
This patch makes NULL the current item right after all the play items
are freed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1353 >
2021-11-16 13:25:02 +01:00
Nirbheek Chauhan
5d3009b7f8
audio-resampler: Fix segfault when we can't output any frames
...
Sometimes the resampler has enough space to store all the incoming
samples without outputting anything. When this happens,
gst_audio_resampler_get_out_frames() returns 0.
In that case, the resampler should consume samples and just return.
Otherwise, we get a segfault when gst_audio_resampler_resample() tries
to resample into a NULL 'out' pointer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1343 >
2021-11-12 16:12:27 +00:00
Tim-Philipp Müller
972615cf22
docs: fix unnecessary ampersand, < and > escaping in code blocks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1340 >
2021-11-12 11:39:19 +00:00
Jiri Uncovsky
9abac91c96
glcontext/egl: add missing unref
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1328 >
2021-11-10 15:27:45 +00:00
Guillaume Desmottes
9b809d4cc3
appsrc: log when segment changes
...
We were logging when it does not change but not when it does, which is
confusing when reading logs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1327 >
2021-11-09 16:19:05 +00:00
Tim-Philipp Müller
a7b376011b
Back to development
2021-11-03 19:31:23 +00:00
Tim-Philipp Müller
f513c289b0
Release 1.19.3
2021-11-03 15:43:43 +00:00
Tim-Philipp Müller
d51b091cd9
Update ChangeLogs for 1.19.3
2021-11-03 15:43:32 +00:00
Matthias Clasen
ffa363edf7
egl: handle configless contexts
...
With EGL_KHR_no_config_context, EGL contexts may just not
have an EGLConfig to give you. Deal with it.
Fixes : #858
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1289 >
2021-11-02 18:00:41 +00:00
Seungha Yang
cf871f990a
examples: win32-videooverlay-playbin: Add a repeat option
...
... in order to test pipeline/element reuse cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1275 >
2021-11-02 16:55:50 +00:00
Sebastian Dröge
577cdcafe0
video: Fix order of new video formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1282 >
2021-10-31 06:38:36 +00:00
Sebastian Dröge
ee18b8c0c0
base: Fix some annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1281 >
2021-10-30 15:50:30 +03:00
Tim-Philipp Müller
d96e44922e
Use g_pattern_spec_match() instead of g_pattern_match() which is deprecated since glib 2.70
...
Fixes compiler warnings with glib 2.70
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1279 >
2021-10-30 00:34:35 +01:00
Piotrek Brzeziński
428b4104b0
video-format: Add support for ARGB64 LE/BE and similar variants
...
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1247 >
2021-10-29 14:57:58 +00:00
Tim-Philipp Müller
f034ec3e14
meson: require matching GStreamer dep versions for unstable development releases
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1244 >
2021-10-28 23:29:27 +00:00
Jan Schmidt
78df7ae771
decodebin3: Only unblock for GAP events and buffers.
...
An alternate fix for
https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1239
and https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1236
that makes it clear the intent is to only unblock on a GAP event, and
not any others.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1260 >
2021-10-27 22:53:49 +11:00
Guillaume Desmottes
1d833eba60
parsebin: fix critical when sorting pads
...
If the pad does not have a current caps, get_pad() returns the query
caps which can be ANY. In such case the caps does not have any structure
resulting in a critical warning when calling gst_caps_get_structure().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1254 >
2021-10-26 16:25:32 +00:00
Sebastian Dröge
23a06f7a31
typefindfunctions: Use memcmp() instead of a strange macro around strncmp()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:43 +00:00
Sebastian Dröge
37a744889c
typefindfunctions: Add various CMAF brands to the MP4 typefinder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Sebastian Dröge
041bc2652b
typefindfunctions: Refactor ftyp brands checking
...
Store known brands in arrays and add a helper function to check them.
Also add all the `iso3` to `isob` ISO brands and the `hlsf` ISO
fragmented brand.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Sebastian Dröge
66aef5ef46
typefindfunctions: Add various other boxes to the list of known top-level MP4 boxes
...
styp, udta, sidx, ssix, prft, mfra, pdin and meta are in the ISOBMFF
spec and emsg in the CMAF spec.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1234 >
2021-10-25 09:17:42 +00:00
Tim-Philipp Müller
4c665ce043
gst-plugins-base: update translations
...
Fixes #656
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1240 >
2021-10-25 01:11:20 +01:00
Matthew Waters
d4c96bf923
gl/egl: install required egl.h header
...
Fixes build against using the gir.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1227 >
2021-10-22 17:56:41 +11:00
Guillaume Desmottes
47445980a9
streamsynchronizer: set running time offset on events
...
It's cleaner and more generic than overriding the qos events.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1210 >
2021-10-20 14:27:58 +00:00
Tim-Philipp Müller
8dfab0b08c
meson: update for meson.build_root() and .build_source() deprecation
...
-> use meson.project_build_root() or .global_build_root() instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Tim-Philipp Müller
f1bb2c76c6
meson: update for dep.get_pkgconfig_variable() deprecation
...
... in favour of dep.get_variable('foo', ..) which in some
cases allows for further cleanups in future since we can
extract variables from pkg-config dependencies as well as
internal dependencies using this mechanism.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Tim-Philipp Müller
531aa4064a
meson: clean up conditional paths after version bump
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Thibault Saunier
95c1f67d69
discoverer: Set number to stream infos
...
The idea is that we can reference to streams using this unique number,
within the context of that discoverer info. That number should always
be usable to reference the streams for a specific stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/897 >
2021-10-20 09:16:38 +00:00
Edward Hervey
879526b2e2
discoverer: Don't ref NULL taglist
...
Fixes warning introduced in 064f7bbbfa
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1200 >
2021-10-20 09:47:29 +02:00
Xavier Claessens
eb072600a6
Revert "audio: Merge simd libs into the main one"
...
This reverts commit 4d3a200358
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1194 >
2021-10-19 16:56:35 +00:00
Sebastian Dröge
7cb2dff830
video-overlay-composition: Fix constructor guard to actually allow NULL as parameter
...
And don't use a NULL rectangle later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1195 >
2021-10-19 14:13:24 +00:00
Matthew Waters
d495154068
gl/eagl: fix eagl display creation
...
The GstGLDisplayType of the display was win32 instead of the required eagl.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1188 >
2021-10-19 09:34:43 +00:00
Matthew Waters
49af6a831d
tests/rtp/payload: add test for shrinking extension data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1146 >
2021-10-19 03:26:57 +00:00
Matthew Waters
b7d4d371f9
rtp: also support shrinking the extension data
...
Currently the extension data length specified in the RTP header would
say it was shorter then the data serialised to a packet. When
combining the resulting buffer, the underlying memory would still
contain the extra (now 0-filled) padding data.
This would mean that parsing the resulting RTP packet would potentially
start with a number of 0-filled bytes which many RTP formats are not
expecting.
Such usage is found by e.g. RTP header extension when allocating the
maximum buffer (which may be larger than the written size) and shrinking
to the required size the data once all the rtp header extension data has
been written.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1146 >
2021-10-19 03:26:57 +00:00
Tim-Philipp Müller
bb19b5aa96
vorbisdec: don't emit g_warning() on malformed input data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
2a2d6f7efe
theoradec: don't emit g_warning() on malformed input stream
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
5660743bbf
subparse: don't use g_warning() for malformed input
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
817cb23b9c
tools: Define G_LOG_DOMAIN for various tools as well
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Tim-Philipp Müller
cf9be70946
gst-plugins-base: define G_LOG_DOMAIN for all libraries
...
Fixes #634
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Mathieu Duponchelle
c3d878e990
audio/video aggregator: make use of new aggregator inactive pad API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/867 >
2021-10-18 22:34:11 +00:00
Philippe Normand
064f7bbbfa
discoverer: Advertise container-specific tags with a new API
...
Since commit a55dafe341
, stream-scoped tags no
longer appeared as top-level tags, introducing a behaviour regression, specially
for MP3 files.
The `gst_discoverer_info_get_tags()` API now returns all tags detected for the
given media, as documented.
A new API is introduced to get container-specific tags,
`gst_discoverer_container_info_get_tags()`. The discoverer tool was adapted to
use it. `gst_discoverer_info_get_tags()` is now deprecated in favor of
`gst_discoverer_container_info_get_tags()` and
`gst_discoverer_stream_info_get_tags()`.
Fixes #759
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1107 >
2021-10-18 20:08:35 +00:00
Tim-Philipp Müller
0a25f22f1b
meson: bump meson requirement to >= 0.59
...
For monorepo build and ugly/bad, for advanced feature
option API like get_option('xyz').required(..) which
we use in combination with the 'gpl' option.
For rest of modules for consistency (people will likely
use newer features based on the top-level requirement).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1084 >
2021-10-18 18:03:19 +01:00
Thibault Saunier
156f2543ca
smartencoder: Force reencoding of vp9 for profiles can't support
...
If the input file is in a profile we won't be able to output (1 or 3 in BGR
format), simply reencode everything for now.
Once we add support for that case we can remove that code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
fec6270205
encoding-profile: ignore more fields when creating for discover info
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
e9fdfade61
smartencoder: Always plug a vp9parse when encoding vp9
...
This way we know that all relevant fields about video format are
added and we avoid renegotiation issues.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
32d36d0e89
smartencoder: Fix renegotiating when reencoding parts of the stream with vpx
...
In the encoded streams we might not have all the information about the
raw video stream, but when reencoding they end up being specified, even
if those are default values.
As vp8 decoders always output frames in some YUV color space we can
ensure that when upstream doesn't specify any value in its caps we
use the default one which is what we end up doing when decoding/reencoding
anyway, so this way downstream (matroskamux in that case) doesn't need
to be able to renegotiate (which it doesn't).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:10:24 -03:00
Thibault Saunier
a75382eaff
meson: Mark newly fdkaac/ogg/vorbis as allow fallback
...
This way when the dep is `auto` we will fallback if the system
dependency is not available.
And use https to get libvorbis
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1171 >
2021-10-16 09:52:23 -03:00
Thibault Saunier
08eac09c12
meson: Fix warning building GstGLEGL
...
We forgot to add the `GstGL` gir as a dependency which was properly
done for GstGLWayland and GstGLX11.
And document why we use a list for `all_libraries`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1168 >
2021-10-16 01:24:45 +00:00
Thibault Saunier
8b7b068d53
meson: Streamline the way we detect when to build documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:28:29 -03:00
Thibault Saunier
6e79932ad9
meson: List libraries and their corresponding gir definition
...
Introduces a `libraries` variable that contains all libraries in a
list with the following format:
``` meson
libraries = [
[pkg_name, {
'lib': library_object
'gir': [ {full gir definition in a dict } ]
],
....
]
```
It therefore refactors the way we build the gir so that we can reuse the
same information to build them against 'gstreamer-full' in gst-build
when linking statically
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Thibault Saunier
e2dd28a753
meson: Mark files as files()
...
Making it more robust and future proof
And fix issues that it creates
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Piotrek Brzeziński
a102444c90
video-converter: Fix v210->I420 last line conversion
...
Last line would not be converted correctly if height was an odd number.
Fixed by accounting for data type (8bit vs. 16bit) differences between
respective packing and unpacking functions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Piotrek Brzeziński
33ccabd206
video-format: Clean up v210 packing code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Piotrek Brzeziński
35a7b19381
video-converter: Add fast paths from I420/YV12, UYVY, Y42B and YUY2 to v210
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/973 >
2021-10-14 21:03:58 +00:00
Matthew Waters
ee1255079b
gl/dmabuf: add some debug logging about why things may fail to be uploaded
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1145 >
2021-10-14 07:41:44 +00:00
Matthew Waters
42597181e2
playbin2/3: autoplug/caps: don't expand caps to ANY
...
Retrieving the pad template caps from a ghost pad returns ANY which when
merged with any other caps will return ANY. ANY is not very specific
and may cause suboptimal code paths in e.g. decoders that assume the
lowest common denominator when presented with ANY caps.
Fixes negotiating dma-buf with vaapidecodebin between glupload in the
video sink element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1144 >
2021-10-14 17:04:26 +11:00
Seungha Yang
0a94da9611
examples: playback-test: Fix for UI resize scenario on Windows
...
Application needs to notify videosink element of video widget resize
via gst_video_overlay_set_render_rectangle() since WM_SIZE event
wouldn't be notified.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1115 >
2021-10-13 07:04:08 +00:00
Olivier Crête
4d3a200358
audio: Merge simd libs into the main one
...
Actually extract the .o objects from the convience libraries and put
them into the main one. Without this, they will just be referenced by
the .pc file, but it will be unusable because they are not installed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1122 >
2021-10-13 01:28:16 +00:00
Olivier Crête
fdd7f9be23
glutils: Export affine transformation functions for gtkglsink
...
Also remove duplicated copy of those functions from the gl plugin
With contributions from Bastien Nocera
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
9b75628101
glvideoflip: Replace GstVideoFlipMethod -> GstVideoOrientationMethod
...
It's the same enum, just drop the renamed copy. But keep the registered
GEnum as it is part of the API.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
b4ca5f386a
glvideoflip: Use the API to parse the image orientation
...
This will reduce the code duplication a little.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
d191e27aca
glimagesink: Use the API to parse the image orientation
...
This will reduce the code duplication a little.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
c898ffceeb
video: Add API to parse the image orientation from a GstTagList
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
a51509c6e7
glimagesink: Replace GstGLRotateMethod with GstVideoOrientationMethod
...
It's the same enum, just drop the renamed copy. But keep the registered
GEnum as it is part of the API.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Olivier Crête
ad495089cb
video: Put nicer documentation in GstVideoOrientationMethod
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Tim-Philipp Müller
078f7874fd
gst-play: pick up minus and plus also from navigation events
...
Makes it easier to test playback rate changes with the video
window being in focus.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/928 >
2021-10-12 11:19:22 +00:00
Jan Schmidt
71c3141672
uridecodebin3/urisourcebin: Reusability fixes
...
Improvements to uridecodebin3 and urisourcebin so that they are
reusable across a PAUSED->READY->PAUSED transition.
Disconnect and release decodebin3 request pads when urisourcebin
removes src pads.
In urisourcebin, make sure to remove src pads that are exposed
directly (raw pads and static typefind srcpads) when
cleaning up.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/768
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1100 >
2021-10-10 11:55:19 +00:00
Jan Schmidt
e06ac494b8
playbin3: Always register 'playbin3' element.
...
If the USE_PLAYBIN3=1 env var is set, we want to replace
playbin with playbin3, but separate to that, we always
want to register the 'playbin3' element so that applications
which explicitly use playbin3 work regardless of the env var.
This fixes `USE_PLAYBIN3=1 gst-validate-launcher`, for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1102 >
2021-10-10 07:28:17 +00:00
Jan Schmidt
33ad1cdc5e
playbin3: Avoid group deactivation deadlock.
...
Change locking around group deactivation to avoid deadlocks
when shutting down exactly as a buffering message arrives.
The PLAYBIN3_LOCK now protects the active field of the
source group. Everything else is still protected by the
source-group-lock.
Also properly protect group switching operations with
the PLAYBIN3_LOCK everywhere.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1049 >
2021-10-08 15:49:41 +00:00
Ludvig Rappe
b099ba649e
pbutils: Remove sample entry code "raw"
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1045 >
2021-10-05 09:00:23 +00:00
Stéphane Cerveau
84b357dd5f
typefindfunctions: differentiate h265 from h264
...
in some cases, the algo gives the same probability
to h264 and h265 for h26x stream resulting in a h265
stream detected as a h264.
if sps/pps/vps detected, increase the probabilty.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/957 >
2021-10-02 10:03:21 +00:00
Tim-Philipp Müller
b8d6962c9b
video: make GST_VIDEO_FORMAT_INFO_IS_*() macros booleans
...
Spotted by Stirling Westrup.
Fixes #726
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/926 >
2021-09-29 23:53:12 +00:00
Tim-Philipp Müller
43ed0df54c
audio: make GST_AUDIO_INFO_IS_UNPOSITIONED return a boolean
...
Luckily this worked right since the flag we check is the
only flag and its vale is 1, but feels more correct to
actually check for non-zeroness.
Spotted by Stirling Westrup.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/926 >
2021-09-29 23:53:12 +00:00
Olivier Crête
7abd83dfea
rtphdrext: Give "inherited" direction in set_attributes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
6cd483d17a
rtphdrext: Use NULL-safe case insensitive comparison
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
2dd740c0c3
rtphdrext: Print warnings when trying to parse caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
5ec82c1c4e
rtphdrext: Pass just the attributes to the subclass
...
Since the base class now does the parsing, there is no need
to reproduce that code in all the subclasses, just pass the attributes
which are the only relevant bit anyway.
Also, only store the direction if the subclass accepted the caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
e65053a477
rtphdrext: Use fail_unless_equals_string() to make tests easier to debug
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
674611c851
rtphdrext test: Use helper function for caps
...
Also, let the base class parse the direction for us.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
87a91d1387
rtphdrext: Add helper function to set fields in caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
e76dce3c6e
rtphdrext: Parse direction from the caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
34a6b2b890
rtphdrext: Set the direction in the caps from the property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
63d669e0bf
rtphdrext: Store the direction in the base class
...
Store the direction associated wit the RTP header extension in the
base class so it can use it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
ba328fb98d
rtphdrext: Set caps without attributes as the default
...
Most subclasses just use the simple function, so just let the base class
do it. It makes less code in subclasses.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Olivier Crête
498740fe57
rtphdrext: Put simple caps generation as the base class default
...
Instead of having a helper function that gets called by almost every
subclass, just let the base class set the caps fields automatically.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906 >
2021-09-28 20:04:55 +00:00
Brad Hards
ef05946837
doc: update IRC links to OFTC
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/945 >
2021-09-28 10:11:15 +10:00
Havard Graff
6d4d4edfcc
videodecoder: request sync-points regularly on error
...
If we are not receiving a sync-point for a very long time, we need to
keep asking for them. The request-sync-point logic keeps track of how
many keyunitrequests we are allowed to send, but that would not matter
if we don't keep asking.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/930 >
2021-09-27 07:02:43 +00:00
Tim-Philipp Müller
f1a169f39d
Back to development
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/925 >
2021-09-26 01:07:02 +01:00
Nicolas Dufresne
3037fde5eb
Move commit gst-indent hook to the root
...
This renable at meson setup time the installation of the gst-indent
commit hook. The hooks were kept from gst-devtools as this set supports
both C checks and Python checks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/904 >
2021-09-24 17:47:01 -03:00
Thibault Saunier
c6b9c81fdd
ci: Remove now useless .gitlab-ci.yml files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
e0d3a211d9
base: Fix a suppression that has a slightly different trace
...
For some reason making a monorepo lead to some minor stack changes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
2fd28195ca
Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir
2021-09-24 16:13:26 -03:00