Update ChangeLogs for 1.20.5

This commit is contained in:
Tim-Philipp Müller 2022-12-19 23:34:34 +00:00
parent 18cae8c9b4
commit 554efedd44
12 changed files with 1193 additions and 0 deletions

View file

@ -1,7 +1,13 @@
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-devtools.doap:

View file

@ -1,7 +1,61 @@
2022-11-16 16:20:15 +0100 Edward Hervey <bilboed@bilboed.com>
* tools/ges-launcher.c:
ges-launcher: Don't leak string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 16:19:52 +0100 Edward Hervey <bilboed@bilboed.com>
* plugins/ges/gesdemux.c:
ges-demux: Don't leak string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 16:19:05 +0100 Edward Hervey <edward@centricular.com>
* ges/ges-xml-formatter.c:
ges-xml-formatter: Plug some leaks
* Don't leak the mainloop
* Don't leak temporary strings
* Don't leak id when searching in hash table
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 16:18:19 +0100 Edward Hervey <bilboed@bilboed.com>
* ges/ges-project.c:
ges-project: Don't leak string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 12:45:27 +0100 Edward Hervey <edward@centricular.com>
* ges/ges-structure-parser.c:
ges-structure-parser: Don't leak failed strings
We pass the ownership of current_string to the list of wrong strings, it will be
cleared then.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 12:44:56 +0100 Edward Hervey <edward@centricular.com>
* tools/ges-launcher.c:
ges-launch: Don't leak help string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-10-24 14:40:55 -0500 Patrick Griffis <pgriffis@igalia.com>
* tests/check/meson.build:
build: Fix building ges with tools disabled
If you configure with `tools=disabled` then ges_launch is undefined.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3274>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-editing-services.doap:

View file

@ -1,7 +1,35 @@
2022-10-26 16:30:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* ext/libav/gstavviddec.c:
avdec_h265: Fix endless renegoation with alternate interlacing
The picture parameter picture->top_field_first is reused in this mode
to signal the TOP fields. As a side effect, it will change every frame
and current code assumed that if this changes then a renegotiation is
needed. Fixed this by ignoring that change whenever we are decoding one field
only.
Fixes #1523
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3289>
2022-10-26 10:44:01 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* ext/libav/gstavviddec.c:
avviddec: Avoid flushing on framerate changes
A framerate change does not require flushing the decoder and causes
issues with some specific fragmented files if the two fragments have
different framerate.
Fixes #1522
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3280>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-libav.doap:

View file

@ -1,7 +1,13 @@
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-omx.doap:

View file

@ -1,7 +1,435 @@
2022-12-16 15:03:12 +0100 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtsbase.c:
mpegts: Always clear packetizer on DISCONT push mode
If a discontinuity is detected in push mode, we need to clear the cached section
observations since they might have potentially changed.
This was only done properly when operating with TIME segments (dvb, udp,
adaptive demuxers, ...) but not with BYTE segments (such as with custom app/fd
sources).
We still don't want to flush out the PCR observations, since this might be
needed for seeking in push-based BYTE sources.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1650
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3600>
2022-12-17 20:04:01 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Fixing focus lost on desktop layout change
Watch all message on the window thread, instead of internal window only.
Otherwise, some global window messages, such as desktop layout change,
wouldn't be handled by our window.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3594>
2022-12-17 01:01:00 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* sys/applemedia/avfvideosrc.m:
avfvideosrc: Report latency when doing screen capture
There is no `device` when doing screen capture, but there is always an
`input`, so use that to decide when we can reply to a latency query.
Without this, the latency query just fails.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3591>
2022-12-16 21:42:50 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Call ShowWindow() from window thread
... when rendering on external HWND. ShowWindow() will cause
synchronous message passing to window thread and then can be blocked.
At the same time, window thread can wait for GStreamer thread.
Instead of the synchronous call, queue the task to window message
and performs from the window thread.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3588>
2022-12-15 01:15:10 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11window.cpp:
* sys/d3d11/gstd3d11window.h:
* sys/d3d11/gstd3d11window_dummy.cpp:
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11videosink: Fix deadlock when parent window is busy
Deadlock sequence:
* From a streaming thread, d3d11videosink sends synchronous message
to the parent window, so that internal (child) window can be
constructed on the parent window's thread
* App thread (parent window thread) is waiting for pipeline's
state change (to GST_STATE_NULL) but streaming thread is
blocked and waiting for app thread
To avoid the deadlock, GstD3D11WindowWin32 should send message
to the parent window asynchronously.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3573>
2022-12-15 20:11:30 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11window.cpp:
d3d11videosink: Error out if RTV is unavailable
Add RTV pointer validation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3573>
2022-07-03 01:18:19 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11videosink.h:
d3d11videosink: Protect window with lock at every place
Access to the object should be thread safe to support runtime
property update
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3573>
2022-10-21 22:46:16 -0500 A. Wilcox <AWilcox@Wilcox-Tech.com>
* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
* tests/check/libs/mpegts.c:
mpegts: Handle when iconv doesn't support ISO 6937
Systems like musl libc don't support ISO 6937 in iconv. This ensures
that the MPEG-TS plugin can cope with that. There is existing support
in the plugin for other methods, so it seems to have been the original
intent anyway.
Fixes: #1314
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3563>
2022-12-06 11:30:47 +0100 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtspacketizer.c:
mpegts: Check continuity counter on section streams
This wasn't really done, and is needed in order to detect potential section
changes for sections that have got identical information (such as when switching
between streams that have the same PAT/PMT pid and subtable information).
Other checks exist in tsbase to detect if the "new" PAT/PMT really is an update or not.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3556>
2022-12-01 19:35:07 +0200 Marek Olejnik <molejnik@fluendo.com>
* gst-libs/gst/codecs/gsth265decoder.c:
h265decoder: Do not abort when failed to prepare ref pic set
Currently the element calls abort when failed to prepare reference
picture set. This can happent when the input stream is somehow
corrupted, like a rtsp strem with lost packets. Now it will only
return with GST_FLOW_ERROR instead of terminating whole process.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3542>
2022-12-07 10:21:52 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/dvbsubenc/gstdvbsubenc.c:
dvbsubenc: Forward GAP events as-is if we wouldn't produce an end packet and are not in the middle of an existing subtitle
An end packet is only produced once for the last subtitle, so multiple
GAP events between subtitles would result only in a single end packet
and nothing else otherwise. This would potentially starve downstream
then, so instead forward the GAP events in that case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3536>
2022-12-05 19:30:43 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* sys/dshowvideosink/dshowvideosink.cpp:
directshow: Fix build error with glib 2.75 and newer
Starting with glib 2.75, `NULL` is `nullptr`, which cannot be
implicitly coerced to `0`, unlike `NULL`. So explicitly pass `0`.
```
[3206/4524] Compiling C++ object subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
FAILED: subprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj
"cl" "-Isubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p" "-Isubprojects\gst-plugins-bad\sys\directshow" "-I..\subprojects\gst-plugins-bad\sys\directshow" "-Isubprojects\gst-plugins-bad" "-I..\subprojects\gst-plugins-bad" "-Isubprojects\gst-plugins-base\gst-libs" "-I..\subprojects\gst-plugins-base\gst-libs" "-Isubprojects\gstreamer\libs" "-I..\subprojects\gstreamer\libs" "-Isubprojects\gstreamer" "-I..\subprojects\gstreamer" "-Isubprojects\orc" "-I..\subprojects\orc" "-I..\subprojects\gst-plugins-bad\sys\directshow\strmbase\baseclasses" "-Isubprojects\gst-plugins-base\gst-libs\gst\video" "-Isubprojects\gstreamer\gst" "-Isubprojects\gst-plugins-base\gst-libs\gst\audio" "-Isubprojects\gst-plugins-base\gst-libs\gst\tag" "-IC:/gst-install/include/glib-2.0" "-IC:/gst-install/lib/glib-2.0/include" "-IC:/gst-install/include" "/MD" "/nologo" "/showIncludes" "/utf-8" "/W2" "/EHsc" "/O2" "/Zi" "/wd4018" "/wd4146" "/wd4244" "/wd4305" "/utf-8" "/we4002" "/we4003" "/we4013" "/we4020" "/we4027" "/we4029" "/we4033" "/we4045" "/we4047" "/we4053" "/we4062" "/we4098" "/we4101" "/we4189" "/utf-8" "-D_MBCS" "/wd4189" "/wd4456" "/wd4701" "/wd4703" "/wd4706" "/wd4996" "-DHAVE_CONFIG_H" "/Fdsubprojects\gst-plugins-bad\sys\directshow\gstdirectshow.dll.p\dshowvideosink.cpp.pdb" /Fosubprojects/gst-plugins-bad/sys/directshow/gstdirectshow.dll.p/dshowvideosink.cpp.obj "/c" ../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(62): warning C5051: attribute 'noinline' requires at least '/std:c++20'; ignored
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(123): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): error C2664: 'BOOL SystemParametersInfoA(UINT,UINT,PVOID,UINT)': cannot convert argument 2 from 'nullptr' to 'UINT'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(635): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(13153): note: see declaration of 'SystemParametersInfoA'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): error C2664: 'LRESULT SendMessageA(HWND,UINT,WPARAM,LPARAM)': cannot convert argument 3 from 'nullptr' to 'WPARAM'
../subprojects/gst-plugins-bad/sys/directshow/dshowvideosink.cpp(1593): note: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type
C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um\winuser.h(3690): note: see declaration of 'SendMessageA'
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3533>
2022-11-29 02:22:50 +0900 Seungha Yang <seungha@centricular.com>
* sys/mediafoundation/gstmfvideosrc.c:
mfvideosrc: Fix buffer leak
The allocated buffer should be released
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3496>
2022-11-29 02:10:42 +0900 Seungha Yang <seungha@centricular.com>
* sys/mediafoundation/gstmfsourcereader.cpp:
* sys/mediafoundation/gstwin32devicewatcher.cpp:
mediafoundation: Chain up from GObject::constructed
... so that GstTracer can trace it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3496>
2022-11-29 02:06:11 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11videosink.cpp:
* sys/d3d11/gstd3d11window_corewindow.cpp:
* sys/d3d11/gstd3d11window_dummy.cpp:
* sys/d3d11/gstd3d11window_swapchainpanel.cpp:
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11: Use correct ref/unref methods
Those objects are GstObject subclasses
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3496>
2022-11-25 18:38:27 +0800 He Junyan <junyan.he@intel.com>
* gst-libs/gst/codecparsers/gsth264parser.c:
h264parser: Fix a typo in pred_weight_table parsing.
When setting default values, the reference list number of l1 is wrong.
Fix: https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/336
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3468>
2022-11-21 19:40:35 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/dvbsubenc/gstdvbsubenc-util.c:
* gst/dvbsubenc/gstdvbsubenc.c:
* gst/dvbsubenc/gstdvbsubenc.h:
dvbsubenc: Write Display Definition Segment if a non-default width/height is used
Otherwise it can't be rendered by dvbsuboverlay or ffmpeg at least.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3459>
2022-11-16 09:42:08 +0100 Edward Hervey <bilboed@bilboed.com>
* gst/mpegtsdemux/mpegtspacketizer.c:
Revert "mpegtspacketizer: memcmp potentially seen_before data"
This reverts commit fcad4cc646a23e4e621ec5e8485958ab78d98090.
This was wrong is so many ways.
* The memcmp was badly used (it should use == 0 to check the data is identical,
and not != 0)
* There was no boundary checks on the present stream section_data when passing
it to memcmp.
* The return value should have been TRUE (i.e. we have done all checks, none of
them failed, therefore the section has been seen before)
* stream->section_data would *always* be NULL if the section had already been
processed
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1559
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3427>
2022-11-16 09:29:59 +0100 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtsbase.c:
mpegts: Check is program is identical before updating
There is no need to update the program if it's identical :)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3427>
2022-11-08 19:26:39 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11screencapturedevice.cpp:
* sys/d3d11/gstd3d11screencapturesrc.cpp:
d3d11screencapturesrc: Specify PAR 1/1 to template caps
... otherwise PAR can be wrongly signalled during the negotiation
Fixing below pipeline when desktop resolution is not 640x480
gst-launch-1.0.exe \
d3d11screencapturesrc ! videoscale !
video/x-raw,width=640,height=480,pixel-aspect-ratio=1/1 ! d3d11videosink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3372>
2022-11-15 00:11:15 +1100 Jan Schmidt <jan@centricular.com>
* ext/aes/gstaesdec.c:
aesdec: Fix padding removal for per-buffer-padding=FALSE
When per-buffer-padding is FALSE, the OpenSSL context needs
to be told to remove any padding at the end of the ciphertext
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1243
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3411>
2021-12-01 16:23:41 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/gstrtmp2src.c:
* gst/rtmp2/rtmp/rtmpclient.c:
rtmp2: Improve error messages
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 16:04:24 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/gstrtmp2src.c:
* gst/rtmp2/rtmp/rtmpclient.c:
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2/connection: Pass triggering GError in 'error' signal
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 16:02:53 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2/connection: Pass triggering GError to _emit_error
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 16:01:10 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2/connection: Discern reasons for cancelling all commands
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 15:53:13 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2/connection: Handle EOF like error
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 15:49:22 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpclient.c:
rtmp2/client: Make sure 'salt' is not NULL
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 15:46:42 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpclient.c:
rtmp2/client: Make sure 'reason' is not NULL
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 16:13:42 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpclient.c:
rtmp2/client: Make sure 'desc' is not NULL
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2021-12-01 16:11:31 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpclient.c:
rtmp2/client: Make sure 'code' is not NULL
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3368>
2022-11-06 03:26:31 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11window.cpp:
d3d11videosink: Always clear back buffer on resize
Swapchain may not need to be resized if the size of backbuffer
is equal to the previous size. Then previously rendered frame will be stay
on the screen. Do clear back buffer whenever resize() is called
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3342>
2022-07-27 15:59:35 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Remove callers for which srt_bstats fails
This keeps them from accumulating in the element and in the stats while
the sink is not being fed, as long as we at least periodically grab
stats.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2022-07-29 11:53:18 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Use simpler list operations for callers
Avoid `g_list_append` and `g_list_remove` (which have to scan the list)
and replace them with `g_list_prepend` and `g_list_delete_link`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2020-11-10 10:06:37 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Clean up poll/sock lifecycle
Make sure `srtobject->poll_id` is never invalid as long as `srtobject`
exists. Only remove our caller socket from it when the socket becomes
invalid.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2022-06-08 16:35:54 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Clean up error handling
- Make the srt_epoll_wait loops more uniform.
- Error only via GError when possible; let the element send the error
message. Avoids a second error message.
- Return 0 when cancelled. Avoids an error message from the element.
- Don't send an error message from send_headers when we're a server
sink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2022-10-11 11:14:59 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Simplify socket stats
Don't hide stats depending on whether we're a sending or receiving
socket. While we're here, add some more debug logs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2020-10-05 19:50:13 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
* ext/srt/gstsrtobject.h:
srt: Replace stats accumulation with naive byte counting
srt_bstats cannot be used to get the stats of closed connections, so the
best we can do is keep the running count ourselves.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3329>
2022-10-25 08:14:18 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* gst/codecalpha/gstalphacombine.c:
alphacombine: Add missing query handler for gaps
The gap handling was in place, but there was no event handler to trigger it.
Implement the alpha sink event handler for the gaps. This fixes handling of
valid streams which may not refresh the alpha frames for every video frames.
It will also allow a clean error if the stream was missing the initial
alpha frame, at least until we find a better way to handle these
invalid frames.
Related to #1518
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3279>
2022-10-26 11:47:43 +0200 Ignacio Casal Quinteiro <qignacio@amazon.com>
* sys/applemedia/avfdeviceprovider.m:
avfdeviceprovider: do not leak the properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3278>
2022-10-21 21:50:01 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* gst-libs/gst/vulkan/cocoa/gstvkcocoa_utils.h:
* gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m:
* gst-libs/gst/vulkan/ios/gstvkios_utils.h:
* gst-libs/gst/vulkan/ios/gstvkwindow_ios.m:
gl/vulkan: Fix static linking on macOS
duplicate symbol '__invoke_on_main' in:
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a(cocoa_gstvkwindow_cocoa.m.o)
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstgl-1.0.a(cocoa_gstglwindow_cocoa.m.o)
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Also make the same change in iOS for consistency.
Continuation of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1132
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3263>
2022-10-21 10:50:36 +1100 Matthew Waters <matthew@centricular.com>
* ext/webrtc/gstwebrtcbin.c:
webrtcbin: also add rtcp-fb ccm fir for video mlines by default
In addition to the 'nack pli' already added. Both are supported by
rtpbin/rtpsession by default already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3247>
2022-10-14 18:51:43 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* ext/webrtc/gstwebrtcice.c:
webrtc/nice: fix small leak of split strings
g_strfreev previously stopped at our manual NULL-termination. Fix by
restoring the pointer after joining.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3190>
2022-10-14 16:21:07 -0400 Arun Raghavan <arun@asymptotic.io>
* gst/rtmp2/gstrtmp2sink.c:
rtmp2sink: Correctly return GST_FLOW_ERROR on error
If there is an error while connecting, the streaming task will be stopped, and
is_running() will be false, causing a GST_FLOW_FLUSHING to be returned. Instead,
we perform the error check (!self->connection) first, to return an error if
that's what occured.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3192>
2022-10-07 08:30:05 +0200 Wojciech Kapsa <wojciech.kapsa@medvc.eu>
* sys/decklink/gstdecklinkvideosrc.cpp:
* sys/decklink/gstdecklinkvideosrc.h:
decklink: reset calculation of gst_decklink_video_src_update_time_mapping on no_signal. When the HDMI cable was disconnected for a long time, the calculation took too much time. SDI cable works fine.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3168>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:

View file

@ -1,7 +1,228 @@
2022-12-19 15:22:15 +0100 Philipp Zabel <p.zabel@pengutronix.de>
* gst/videoscale/gstvideoscale.c:
videoscale: fix valid_tags NULL-terminated array of strings
The valid_tags array of strings must be NULL-terminated,
as it is passed to the g_strv_contains() function.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3604>
2022-11-17 15:41:35 +0100 Edward Hervey <edward@centricular.com>
* gst/playback/gstdecodebin2.c:
decodebin2: Minor debug fix for decodepad
decodedad might have their name changed when exposing, causing a race when
trying to get their name without taking a lock. Just use GST_PTR_POINTER in
debug statements instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-21 15:12:26 +0100 Edward Hervey <edward@centricular.com>
* ext/ogg/gstoggdemux.c:
oggdemux: Don't leak pending seek event
Make sure any pending seek event is released when going back down to READY.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3578>
2022-11-21 15:10:35 +0100 Edward Hervey <edward@centricular.com>
* gst/playback/gstparsebin.c:
parsebin: Don't leak parsepad list on shutdown
Free it as it is down in other cases
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3578>
2022-11-30 20:48:28 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
* ext/opus/gstopusdec.c:
opusdec: Use proper guint/guint8 type conversion
Do not cast, that might yield wrong results.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3576>
2022-11-30 20:47:11 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
* ext/opus/gstopusdec.c:
opusdec: Negotiate default to 2 channels
In that place, dec->n_channels can still theoretically be 0. Default to
2 in that case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3576>
2022-12-11 17:36:53 +0000 Tim-Philipp Müller <tim@centricular.com>
* ext/pango/gsttimeoverlay.c:
timeoverlay: fix pad leak
Spotted by Jiri Uncovsky.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3559>
2022-12-07 14:49:05 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/pango/gsttextrender.c:
textrender: Negotiate caps on a GAP event if none were negotiated yet
Otherwise downstream wouldn't have received a segment event either and
wouldn't know what to do with the gap event
And also forward any pending segment event.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3548>
2022-11-26 09:23:59 +0100 Tim-Philipp Müller <tim@centricular.com>
* gst-libs/gst/audio/gstaudiofilter.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
audioconvert, audioresample, audiofilter: fix divide by 0 for input buffer without caps
gst-launch-1.0 audiotestsrc ! udpsink host=127.0.0.1
gst-launch-1.0 udpsrc ! audioconvert ! autoaudiosink
would crash with a floating point exception when clipping the input
buffer owing to a division by zero because no caps event was received.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3470>
2022-11-21 18:47:50 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/pango/gsttextrender.c:
* ext/pango/gsttextrender.h:
textrender: Don't pass plaintext as pango markup to Pango
Otherwise e.g. & in the text will cause Pango to complain about invalid
markup and render the text incorrectly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3458>
2022-11-21 18:43:54 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/pango/gsttextrender.c:
textrender: Don't blindly forward all events
Use gst_pad_event_default(), which does the right thing by default.
Especially it does not forward text/x-plain caps downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3458>
2022-11-14 07:26:25 +0100 Edward Hervey <edward@centricular.com>
* ext/ogg/gstoggdemux.c:
oggdemux: Don't leak incoming EOS event
If we're going to drop it ... then do drop it :)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3412>
2022-11-05 07:34:27 +0100 Edward Hervey <edward@centricular.com>
* gst/subparse/gstsubparse.c:
subparse: Fix non-closed tag handling.
Unclear what the goal was, but we could end up reading way past the next_tag.
Instead just move everything from after the end tag ('>') to the next_tag.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53040
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3351>
2022-10-27 15:13:36 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/app/gstappsrc.c:
* gst-libs/gst/audio/gstaudiodecoder.c:
* gst-libs/gst/audio/gstaudioencoder.c:
* gst-libs/gst/video/gstvideoencoder.c:
core/base: Only post latency messages if the latency values have actually changed
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1525
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3291>
2022-10-27 07:21:19 +0200 Edward Hervey <edward@centricular.com>
* gst-libs/gst/video/gstvideodecoder.c:
videodecoder: Only post latency message if it changed
Posting latency messages causes a full and potentially expensive latency
recalculation of the pipeline. While subclasses should check whether the latency
really changed or not before calling this function, we ensure that we do not
post such messages if it didn't change.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3291>
2022-10-06 00:00:59 +0900 Seungha Yang <seungha@centricular.com>
* gst-libs/gst/video/gstvideosink.c:
videosink: Don't return unknown end-time from get_times()
... in case of reverse playback. Otherwise basesink will not
wait for clock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3277>
2022-10-21 21:50:01 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h:
* gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m:
* gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
gl/vulkan: Fix static linking on macOS
duplicate symbol '__invoke_on_main' in:
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a(cocoa_gstvkwindow_cocoa.m.o)
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstgl-1.0.a(cocoa_gstglwindow_cocoa.m.o)
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Also make the same change in iOS for consistency.
Continuation of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1132
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3263>
2022-10-14 14:59:49 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
gst-plugins-base: bump core req to 1.20.4
For newly-added _gst_meta_tag_memory_reference symbol.
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2928#note_1591459
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3185>
2022-10-04 05:39:51 +0100 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/gl/meson.build:
build/gl: fix automatic dispmanx detection for rpi4
rpi4 doesn't contain dispmanx but still contains bcm_host.pc which
confuses the configure detection. Add an explicit check for
EGL_DISPMANX_WINDOW_T to ensure that we only build with dispmanx when
the types are available.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/893
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/952
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3246>
2022-07-06 21:45:24 +0300 Jordan Petridis <jordan@centricular.com>
* ext/cdparanoia/meson.build:
cdparanoia: Ignore compiler warning coming from the cdparanoia header
When trying to build the plugin, GCC starts complaining about issues
with one of the cdparanoia headers and it block us from being able
to build the plugin with Werror.
The current warning in the header look like this:
```
[1/2] Compiling C object subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so.p/gstcdparanoiasrc.c.o
In file included from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.h:37,
from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.c:31:
/usr/include/cdda/cdda_interface.h:164:3: warning: initialization discards const qualifier from pointer target type [-Wdiscarded-qualifiers]
164 | "Success",
| ^~~~~~~~~
...
/usr/include/cdda/cdda_interface.h:163:14: warning: strerror_tr defined but not used [-Wunused-variable]
163 | static char *strerror_tr[]={
| ^~~~~~~~~~~
[2/2] Linking target subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so
```
Last release of cdparanoia was in 2008, so our best bet for the
time is to ignore the warnings.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3232>
2022-10-14 16:12:45 +0200 Edward Hervey <edward@centricular.com>
* tools/gst-play.c:
gst-play: Don't leak the stream collection
We are given a reference to the collection when parsing it from the
message. Just store it (instead of referencing it again).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3191>
2022-08-22 16:33:23 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
opengl: Fix usage of eglCreate/DestroyImage
The implementation was inconsistent between create and destroy. EGLImage
creation and destruction is requires for EGL 1.5 and up, while
otherwise the KHR version is only available if EGL_KHR_image_base
feature is set. Not doing these check may lead to getting a function
pointer to a stub, which is notably the case when using apitrace.
Fixes #1389
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3170>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-base.doap:

View file

@ -1,7 +1,277 @@
2022-11-14 13:53:02 +0100 Edward Hervey <edward@centricular.com>
* gst/multifile/gstimagesequencesrc.c:
imagesequencesrc: Don't leak caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3597>
2022-11-16 13:33:39 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Fix regression when using hostname in the location property
When the address can't be parsed as an IP address, it should just be
treated as a hostname and used as-is.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1576
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3596>
2022-03-01 16:30:10 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Fix usage of IPv6 connections in SETUP
If the SETUP request returns an IPv6 server address in the Transport
field, we would generate an incorrect URI, and multiudpsink would fail
to initialize:
```
rtspsrc gstrtspsrc.c:9780:dump_key_value:<source> key: 'Transport', value: 'RTP/AVP;unicast;source=fe80::dc27:25ff:fe5e:bd13:8080;client_port=62696-62697;server_port=4000-4001'
...
rtspsrc gstrtspsrc.c:4595:gst_rtspsrc_stream_configure_udp_sinks:<source> configure RTP UDP sink for fe80::dc27:25ff:fe5e:bd13:8080:4000
...
multiudpsink gstmultiudpsink.c:1229:gst_multiudpsink_configure_client:<udpsink0> error: Invalid address family (got 23)
```
We can't look at stream->is_ipv6 because we can't rely on the server
returning the right value there. In the issue reported about this,
server reported itself as `KuP RTSP Server/0.1`, and the SDP was:
```
c=IN IP4
m=video 54608 RTP/AVP 96
a=rtpmap:96 H264/90000
```
So we need to parse the string value and figure out the family
ourselves.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1058
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3596>
2022-05-19 15:51:03 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2/gstv4l2videodec.c:
v4l2videodec: Fix activation of internal pool
If the driver does not support VIDIOC_CREATE_BUFS ioctl, the pool
configuration may get changed, which requires a validation. This would
fail to activate a pool in a case it shouldn't normally fail unless we
are out of memory.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2677>
2022-12-16 01:00:46 -0600 A. Wilcox <AWilcox@Wilcox-Tech.com>
* tests/check/elements/rtpjitterbuffer.c:
tests: Cast drop-messages-interval type properly
The rtpjitterbuffer test drop_messages_interval uses a GstClockTime for
the message drop interval. This property is defined as a guint. On
systems with 64-bit time_t but 32-bit uint, this can cause the
g_object_set function to fail to read the arguments properly.
Fixes: #1656
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3582>
2022-10-11 15:00:37 +0200 Edward Hervey <edward@centricular.com>
* sys/oss4/oss4-sink.c:
* sys/oss4/oss4-source.c:
oss4: Fix debug category initialization
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1456
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3577>
2022-11-30 14:32:52 +0100 Bo Elmgreen <bo.elmgreen@gmail.com>
* ext/qt/gstqtglutility.cc:
qt: deactivate context if fill_info fails
Now the OpenGL context is deactivated if call to gst_gl_context_fill_info()
fails in gst_qt_get_gl_wrapcontext(), preventing that the context is left
activated, which could lead to invalid memory reads.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3575>
2022-12-02 12:15:34 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2/gstv4l2src.c:
v4l2src: Fix crash in renegotiation
This regression was introduce by fix for making buffer pool thread safe. When
we renegotiate, the pool will be setup after we set the format. But the code
has been simplified to only get the pool once before, which caused a null
pointer deref.
Fixes 94ba019 ("v4l2: Fix SIGSEGV on 'change state' during 'format change'")
Related to !3481
Fixes #1626
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3504>
2022-11-28 22:26:50 +0000 Pawel Stawicki <stawel+gstreamer@gmail.com>
* sys/v4l2/gstv4l2bufferpool.c:
* sys/v4l2/gstv4l2bufferpool.h:
* sys/v4l2/gstv4l2object.c:
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/gstv4l2sink.c:
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/gstv4l2transform.c:
* sys/v4l2/gstv4l2videodec.c:
* sys/v4l2/gstv4l2videoenc.c:
v4l2: Fix SIGSEGV on 'change state' during 'format change'
Ensure all access to v4l2object->pool imply taking a lock and a hard ref on the pool
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3504>
2022-12-07 09:47:49 +0100 Jacek Skiba <jacek.skiba@consult.red>
* gst/isomp4/qtdemux.c:
qtdemux: exit when protection caps are not defined during PIFF parsing
Reproduction testcase (uses PlayReady):
https://developers.canal-plus.com/rx-player/upc/?appTileLocation=[object%20Object]
In test streams we are using PIFF box, but caps did not had
present GST_PROTECTION_SYSTEM_ID_CAPS_FIELD. In consequence, invalid
system_id was returned which caused SIGSEGV crash.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3549>
2022-12-01 10:34:10 +0100 Aleksandr Slobodeniuk <aslobodeniuk@fluendo.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: fix seek event leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3507>
2022-12-04 11:44:17 +0000 Philippe Normand <philn@igalia.com>
* gst/audioparsers/gstflacparse.c:
flacparse: Fix handling of headers advertising 32bps
According to the flac bitstream format specification, the sample size in bits
corresponding to `111` is 32 bits per sample.
https://xiph.org/flac/format.html#frame_header
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3518>
2022-11-15 11:56:35 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Don't replace 404 errors with "no auth protocol found"
When getting a "404 Not Found" response from the DESCRIBE request, the
source produced a "No supported authentication protocol was found" error
instead of passing on the 404, which was confusing.
Only produce this error message when we're handling a response of "401
Unauthorized" without a compatible WWW-Authenticate header.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3493>
2022-11-16 10:36:32 +0000 Tim-Philipp Müller <tim@centricular.com>
* gst/rtsp/gstrtspsrc.c:
Revert "rtspsrc: Only EOS on timeout if all streams are timed out/EOS"
This reverts commit d186e195684548f13855ba5e9ef618a0a5b8951b.
This unearthed a whole bunch of other issues for which lots of
other fixes all over the place were required, so let's revert
the backport into the stable branch for now.
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1530
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3271
Fixes #1532
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3422>
2020-09-02 10:49:40 +0100 Justin Chadwell <me@jedevc.com>
* gst/isomp4/qtdemux.c:
qtdemux: use unsigned int types to store result of QT_UINT32
In a few cases throughout qtdemux, the results of QT_UINT32 were being
stored in a signed integer, which could cause subtle bugs in the case of
an integer overflow, even allowing the the result to equal a negative
number!
This patch prevents this by simply storing the results of this function
call properly in an unsigned integer type. Additionally, we fix up the
length checking with stsd parsing to prevent cases of child atoms
exceeding their parent atom sizes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3367>
2022-11-04 17:48:01 +0000 Tim-Philipp Müller <tim@centricular.com>
* ext/qt/gstqtglutility.cc:
qt: initialize GError properly in gst_qt_get_gl_wrapcontext()
Spotted by Claus Stovgaard.
Fixes #1545
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3339>
2022-11-04 11:10:52 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Add durations to raw audio buffers from the raw audio adapter in prefill mode
This ensures that a duration can also be calculated and stored for the
last buffer at EOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3338>
2022-11-04 10:49:31 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Release object lock before posting an error message
GST_ELEMENT_ERROR() also takes the object lock and this would then
deadlock.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3338>
2022-10-21 16:23:08 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Only EOS on timeout if all streams are timed out/EOS
Otherwise a stream that is just temporarily inactive might time out and
then can never become active again because the EOS event was sent
already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3271>
2022-01-21 14:21:18 +0100 Jonas Bonn <jonas@norrbonn.se>
* gst/udp/gstmultiudpsink.c:
multiudpsink: allow binding to IPv6 address
When the sink is configured to create sockets with an explicit bind
address, then the created socket gets set to the udp_socket field
irregardless of whether the bind address indicated that the socket
family should be IPv4 or IPv6. When binding to an IPv6 address, this
results in the following error:
gstmultiudpsink.c:1285:gst_multiudpsink_configure_client:<rtcpsink>
error: Invalid address family (got 10)
This patch adds a check of the address family being bound to and sets
the created socket to used_socket or used_socket_v6, accordingly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3183>
2022-10-14 01:23:04 +0000 Devin Anderson <danderson@microsoft.com>
* gst/wavparse/gstwavparse.c:
wavparse: Avoid occasional crash due to referencing freed buffer.
We've seen occasional crashes in the `wavparse` module associated with
referencing a buffer in `gst_wavparse_chain` that's already been freed. The
reference is stolen when the buffer is transferred to the adapter with
`gst_adapter_push` and, IIUC, assuming the source doesn't hold a reference to
the buffer, the buffer could be freed during interaction with the adapter in
`gst_wavparse_stream_headers`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3181>
2022-10-13 00:20:45 +0000 Devin Anderson <danderson@microsoft.com>
* gst/wavparse/gstwavparse.c:
* tests/check/elements/wavparse.c:
* tests/files/corruptheadertestsrc.wav:
wavparse: Fix crash that occurs in push mode when header chunks are corrupted in certain ways.
In the case that a test is provided for, the size of the `fmt ` chunk is
changed from 16 bytes to 18 bytes (bytes 17 - 20 below):
```
$ hexdump -C corruptheadertestsrc.wav
00000000 52 49 46 46 e4 fd 00 00 57 41 56 45 66 6d 74 20 |RIFF....WAVEfmt |
00000010 12 00 00 00 01 00 01 00 80 3e 00 00 00 7d 00 00 |.........>...}..|
00000020 02 00 10 00 64 61 74 61 |....data|
00000028
```
(Note that the original file is much larger. This was the smallest sub-file
I could find that would generate the crash.)
Note that, while the same issue doesn't cause a crash in pull mode, there's a
different issue in that the file is processed successfully as if it was a .wav
file with zero samples.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3174>
2022-10-08 01:03:13 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* gst/multifile/gstsplitmuxpartreader.c:
splitmuxsrc: don't queue data on unlinked pads
Once a pad has returned NOT_LINKED, the part reader shouldn't let its
corresponding data queue run full and eventually (after 20 seconds)
stall playback.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3169>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/gst_plugins_cache.json:
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* docs/gst_plugins_cache.json:

View file

@ -1,7 +1,13 @@
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-ugly.doap:

View file

@ -1,7 +1,13 @@
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-python.doap:

View file

@ -1,7 +1,20 @@
2022-08-19 16:16:26 +0200 Linus Svensson <linussn@axis.com>
* gst/rtsp-server/rtsp-server.c:
rtsp-server: Free client if no connection could be created
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3171>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/gst_plugins_cache.json:
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* docs/gst_plugins_cache.json:

View file

@ -1,7 +1,59 @@
2022-12-10 13:11:08 +0000 Tim-Philipp Müller <tim@centricular.com>
* gst-libs/gst/vaapi/gstvaapicontext.c:
* gst-libs/gst/vaapi/gstvaapidisplay.c:
* gst-libs/gst/vaapi/gstvaapidisplay_egl.c:
* gst-libs/gst/vaapi/gstvaapisurface_egl.c:
* gst-libs/gst/vaapi/video-format.c:
* gst/vaapi/gstvaapi.c:
* gst/vaapi/gstvaapidecode.c:
* gst/vaapi/gstvaapidecodebin.c:
* gst/vaapi/gstvaapipluginbase.c:
* gst/vaapi/gstvaapipluginutil.c:
* gst/vaapi/gstvaapipostproc.c:
* gst/vaapi/gstvaapisink.c:
* gst/vaapi/gstvaapivideobufferpool.c:
* gst/vaapi/gstvaapivideocontext.c:
* gst/vaapi/gstvaapivideometa_texture.c:
* meson.build:
* tests/internal/output.c:
* tests/internal/test-display.c:
* tests/internal/test-windows.c:
vaapi: prefix USE_FOO defines to fix build with mesa 22.3.0
Apparently mesa 22.3.0 has updated the egl headers, and eglplatform.h now
contains commit
https://github.com/KhronosGroup/EGL-Registry/pull/130/commits/3670d645f4a26a0a9e87e7f3a8608e7cc1d53b5b
after which xlib headers don't get included by default anymore but are
dependent upon whether USE_X11 was defined.
This breaks headless builds of gstreamer-vaapi because we always define
an internal define USE_X11 as either 1 or 0.
Change these defines to GST_VAAPI_USE_XYZ instead to avoid this.
Fixes #1634
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3558>
2022-11-02 17:23:04 -0400 Boyuan Zhang <boyuan.zhang@amd.com>
* gst-libs/gst/vaapi/gstvaapicontext.c:
libs: context: use queried value for attrib
Attribute's value should use returned value from get_attribute for
VAConfigAttribRTFormat, since VAProfileHEVCMain10, in AMD Mesa Gallium,
can process either VA_RT_FORMAT_420 and VA_RT_FORMAT_420_10, which isn't
considered in gstreamer-vaapi design, where encoder's src pads will
expose only 4:2:0 color formats but no 4:2:0 10bit. So, this is a workaround
for this issue while new vah265enc is released.
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3435>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gstreamer-vaapi.doap:

View file

@ -1,7 +1,110 @@
2022-12-12 11:34:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/gstsystemclock.c:
* meson.build:
systemclock: Use `futex_time64` syscall if available (32-bit systems) and use correct `struct timespec` definition
See also https://gitlab.gnome.org/GNOME/glib/-/issues/2634
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1648
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3572>
2022-11-07 09:27:09 -0500 Xavier Claessens <xavier.claessens@collabora.com>
* docs/meson.build:
hotdoc: gst-hotdoc-plugins-scanner is not needed for libraries
Meson >= 0.64.0 does not allow any more to add executables into
hotdoc.generate_doc(..., dependencies: ...) and it should not be needed
any way.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3554>
2022-12-07 11:49:40 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
meson: fix check for pthread_setname_np()
Need to define _GNU_SOURCE.
Fixes #1542
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3539>
2022-11-30 09:59:09 +0100 Edward Hervey <edward@centricular.com>
* tools/gst-inspect.c:
gst-inspect: Don't leak list
Just iterate the list instead of trying to be smart...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3499>
2022-11-18 16:57:16 +0100 Célestin Marot <c.marot@intopix.com>
* plugins/elements/gstfakesrc.c:
fakesrc: avoid time overflow with datarate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3438>
2022-11-08 17:45:37 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/gstallocator.c:
allocator: Switch `allow-none` annotations to `nullable` / `optional`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3369>
2022-11-08 17:44:54 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/gstallocator.c:
allocator: Copy allocator name in gst_allocator_register()
The parameter is not marked as `transfer full` and stays around in the
hash table, so we will have to copy it ourselves.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3369>
2022-10-24 12:13:14 +0200 Edward Hervey <edward@centricular.com>
* gst/gstpad.c:
gstpad: Fix non-serialized sticky event push
With non-serialized sticky events, such as GST_EVENT_INSTANT_RATE, we both want
to store the event (for later re-linking) *AND* push the event in a non-blocking
way.
We therefore must *not* propagate pending sticky events if the event is "sticky
or serialized" but only if it's "serialized"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3332>
2022-10-27 15:13:36 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/base/gstaggregator.c:
* libs/gst/base/gstbaseparse.c:
core/base: Only post latency messages if the latency values have actually changed
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1525
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3291>
2022-10-27 11:18:24 +0200 Edward Hervey <edward@centricular.com>
* plugins/elements/gstconcat.c:
concat: Properly propagate EOS seqnum
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3288>
2022-10-22 22:04:57 +0900 Seungha Yang <seungha@centricular.com>
* gst/gstpadtemplate.c:
padtemplate: Fix annotations
gst_caps_replace() does not take ownership of the new caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3262>
2022-10-18 16:41:36 +0200 Bunio_FH <buniofh@gmail.com>
* gst/gstminiobject.c:
gstminiobject: shares capacity increase
during the MSE (WebKit) tests from Apple suite:
https://hls-streaming.cdn-apple.com/hls_conformance/dist/v1.1/index.html?pretty=true&whitelist=MSE%20Suite
webkit attempts to add a single audio buffer containing ~35.5k frames.
when corresponding GstSamples are pulled buffer is being referenced
more than object capacity allows: 2^15-1. since the case could be considered
malformed a surgical patch is applied to increase the capacity.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3233>
2022-10-12 18:40:25 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.20.4 ===
2022-10-12 16:39:47 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gstreamer.doap: