diff --git a/subprojects/gst-devtools/ChangeLog b/subprojects/gst-devtools/ChangeLog index 092be09265..3bc48c84e3 100644 --- a/subprojects/gst-devtools/ChangeLog +++ b/subprojects/gst-devtools/ChangeLog @@ -1,7 +1,13 @@ +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-devtools.doap: diff --git a/subprojects/gst-editing-services/ChangeLog b/subprojects/gst-editing-services/ChangeLog index 21f54d1052..3239262301 100644 --- a/subprojects/gst-editing-services/ChangeLog +++ b/subprojects/gst-editing-services/ChangeLog @@ -1,7 +1,61 @@ +2022-11-16 16:20:15 +0100 Edward Hervey + + * tools/ges-launcher.c: + ges-launcher: Don't leak string + Part-of: + +2022-11-16 16:19:52 +0100 Edward Hervey + + * plugins/ges/gesdemux.c: + ges-demux: Don't leak string + Part-of: + +2022-11-16 16:19:05 +0100 Edward Hervey + + * 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: + +2022-11-16 16:18:19 +0100 Edward Hervey + + * ges/ges-project.c: + ges-project: Don't leak string + Part-of: + +2022-11-16 12:45:27 +0100 Edward Hervey + + * 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: + +2022-11-16 12:44:56 +0100 Edward Hervey + + * tools/ges-launcher.c: + ges-launch: Don't leak help string + Part-of: + +2022-10-24 14:40:55 -0500 Patrick Griffis + + * tests/check/meson.build: + build: Fix building ges with tools disabled + If you configure with `tools=disabled` then ges_launch is undefined. + Part-of: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-editing-services.doap: diff --git a/subprojects/gst-libav/ChangeLog b/subprojects/gst-libav/ChangeLog index 5335b31097..02a879111e 100644 --- a/subprojects/gst-libav/ChangeLog +++ b/subprojects/gst-libav/ChangeLog @@ -1,7 +1,35 @@ +2022-10-26 16:30:31 -0400 Nicolas Dufresne + + * 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: + +2022-10-26 10:44:01 -0400 Nicolas Dufresne + + * 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: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-libav.doap: diff --git a/subprojects/gst-omx/ChangeLog b/subprojects/gst-omx/ChangeLog index 068fd2735f..78e5d5c314 100644 --- a/subprojects/gst-omx/ChangeLog +++ b/subprojects/gst-omx/ChangeLog @@ -1,7 +1,13 @@ +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-omx.doap: diff --git a/subprojects/gst-plugins-bad/ChangeLog b/subprojects/gst-plugins-bad/ChangeLog index 9dfdf14d09..bd062475fb 100644 --- a/subprojects/gst-plugins-bad/ChangeLog +++ b/subprojects/gst-plugins-bad/ChangeLog @@ -1,7 +1,435 @@ +2022-12-16 15:03:12 +0100 Edward Hervey + + * 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: + +2022-12-17 20:04:01 +0900 Seungha Yang + + * 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: + +2022-12-17 01:01:00 +0530 Nirbheek Chauhan + + * 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: + +2022-12-16 21:42:50 +0900 Seungha Yang + + * 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: + +2022-12-15 01:15:10 +0900 Seungha Yang + + * 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: + +2022-12-15 20:11:30 +0900 Seungha Yang + + * sys/d3d11/gstd3d11window.cpp: + d3d11videosink: Error out if RTV is unavailable + Add RTV pointer validation + Part-of: + +2022-07-03 01:18:19 +0900 Seungha Yang + + * 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: + +2022-10-21 22:46:16 -0500 A. Wilcox + + * 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: + +2022-12-06 11:30:47 +0100 Edward Hervey + + * 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: + +2022-12-01 19:35:07 +0200 Marek Olejnik + + * 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: + +2022-12-07 10:21:52 +0200 Sebastian Dröge + + * 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: + +2022-12-05 19:30:43 +0530 Nirbheek Chauhan + + * 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: + +2022-11-29 02:22:50 +0900 Seungha Yang + + * sys/mediafoundation/gstmfvideosrc.c: + mfvideosrc: Fix buffer leak + The allocated buffer should be released + Part-of: + +2022-11-29 02:10:42 +0900 Seungha Yang + + * sys/mediafoundation/gstmfsourcereader.cpp: + * sys/mediafoundation/gstwin32devicewatcher.cpp: + mediafoundation: Chain up from GObject::constructed + ... so that GstTracer can trace it + Part-of: + +2022-11-29 02:06:11 +0900 Seungha Yang + + * 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: + +2022-11-25 18:38:27 +0800 He Junyan + + * 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: + +2022-11-21 19:40:35 +0200 Sebastian Dröge + + * 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: + +2022-11-16 09:42:08 +0100 Edward Hervey + + * 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: + +2022-11-16 09:29:59 +0100 Edward Hervey + + * 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: + +2022-11-08 19:26:39 +0900 Seungha Yang + + * 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: + +2022-11-15 00:11:15 +1100 Jan Schmidt + + * 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: + +2021-12-01 16:23:41 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/gstrtmp2sink.c: + * gst/rtmp2/gstrtmp2src.c: + * gst/rtmp2/rtmp/rtmpclient.c: + rtmp2: Improve error messages + Part-of: + +2021-12-01 16:04:24 +0100 Jan Alexander Steffens (heftig) + + * 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: + +2021-12-01 16:02:53 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpconnection.c: + rtmp2/connection: Pass triggering GError to _emit_error + Part-of: + +2021-12-01 16:01:10 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpconnection.c: + rtmp2/connection: Discern reasons for cancelling all commands + Part-of: + +2021-12-01 15:53:13 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpconnection.c: + rtmp2/connection: Handle EOF like error + Part-of: + +2021-12-01 15:49:22 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpclient.c: + rtmp2/client: Make sure 'salt' is not NULL + Part-of: + +2021-12-01 15:46:42 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpclient.c: + rtmp2/client: Make sure 'reason' is not NULL + Part-of: + +2021-12-01 16:13:42 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpclient.c: + rtmp2/client: Make sure 'desc' is not NULL + Part-of: + +2021-12-01 16:11:31 +0100 Jan Alexander Steffens (heftig) + + * gst/rtmp2/rtmp/rtmpclient.c: + rtmp2/client: Make sure 'code' is not NULL + Part-of: + +2022-11-06 03:26:31 +0900 Seungha Yang + + * 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: + +2022-07-27 15:59:35 +0200 Jan Alexander Steffens (heftig) + + * 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: + +2022-07-29 11:53:18 +0200 Jan Alexander Steffens (heftig) + + * 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: + +2020-11-10 10:06:37 +0100 Jan Alexander Steffens (heftig) + + * 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: + +2022-06-08 16:35:54 +0200 Jan Alexander Steffens (heftig) + + * 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: + +2022-10-11 11:14:59 +0200 Jan Alexander Steffens (heftig) + + * 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: + +2020-10-05 19:50:13 +0200 Jan Alexander Steffens (heftig) + + * 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: + +2022-10-25 08:14:18 -0400 Nicolas Dufresne + + * 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: + +2022-10-26 11:47:43 +0200 Ignacio Casal Quinteiro + + * sys/applemedia/avfdeviceprovider.m: + avfdeviceprovider: do not leak the properties + Part-of: + +2022-10-21 21:50:01 +0530 Nirbheek Chauhan + + * 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: + +2022-10-21 10:50:36 +1100 Matthew Waters + + * 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: + +2022-10-14 18:51:43 +0200 Mathieu Duponchelle + + * 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: + +2022-10-14 16:21:07 -0400 Arun Raghavan + + * 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: + +2022-10-07 08:30:05 +0200 Wojciech Kapsa + + * 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: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: diff --git a/subprojects/gst-plugins-base/ChangeLog b/subprojects/gst-plugins-base/ChangeLog index d513c693fa..1e299a9cb2 100644 --- a/subprojects/gst-plugins-base/ChangeLog +++ b/subprojects/gst-plugins-base/ChangeLog @@ -1,7 +1,228 @@ +2022-12-19 15:22:15 +0100 Philipp Zabel + + * 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: + +2022-11-17 15:41:35 +0100 Edward Hervey + + * 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: + +2022-11-21 15:12:26 +0100 Edward Hervey + + * 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: + +2022-11-21 15:10:35 +0100 Edward Hervey + + * gst/playback/gstparsebin.c: + parsebin: Don't leak parsepad list on shutdown + Free it as it is down in other cases + Part-of: + +2022-11-30 20:48:28 +0200 Vivia Nikolaidou + + * ext/opus/gstopusdec.c: + opusdec: Use proper guint/guint8 type conversion + Do not cast, that might yield wrong results. + Part-of: + +2022-11-30 20:47:11 +0200 Vivia Nikolaidou + + * 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: + +2022-12-11 17:36:53 +0000 Tim-Philipp Müller + + * ext/pango/gsttimeoverlay.c: + timeoverlay: fix pad leak + Spotted by Jiri Uncovsky. + Part-of: + +2022-12-07 14:49:05 +0200 Sebastian Dröge + + * 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: + +2022-11-26 09:23:59 +0100 Tim-Philipp Müller + + * 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: + +2022-11-21 18:47:50 +0200 Sebastian Dröge + + * 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: + +2022-11-21 18:43:54 +0200 Sebastian Dröge + + * 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: + +2022-11-14 07:26:25 +0100 Edward Hervey + + * ext/ogg/gstoggdemux.c: + oggdemux: Don't leak incoming EOS event + If we're going to drop it ... then do drop it :) + Part-of: + +2022-11-05 07:34:27 +0100 Edward Hervey + + * 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: + +2022-10-27 15:13:36 +0300 Sebastian Dröge + + * 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: + +2022-10-27 07:21:19 +0200 Edward Hervey + + * 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: + +2022-10-06 00:00:59 +0900 Seungha Yang + + * 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: + +2022-10-21 21:50:01 +0530 Nirbheek Chauhan + + * 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: + +2022-10-14 14:59:49 +0100 Tim-Philipp Müller + + * 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: + +2022-10-04 05:39:51 +0100 Matthew Waters + + * 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: + +2022-07-06 21:45:24 +0300 Jordan Petridis + + * 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: + +2022-10-14 16:12:45 +0200 Edward Hervey + + * 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: + +2022-08-22 16:33:23 -0400 Nicolas Dufresne + + * 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: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-plugins-base.doap: diff --git a/subprojects/gst-plugins-good/ChangeLog b/subprojects/gst-plugins-good/ChangeLog index 0137ec2a56..334218dcc9 100644 --- a/subprojects/gst-plugins-good/ChangeLog +++ b/subprojects/gst-plugins-good/ChangeLog @@ -1,7 +1,277 @@ +2022-11-14 13:53:02 +0100 Edward Hervey + + * gst/multifile/gstimagesequencesrc.c: + imagesequencesrc: Don't leak caps + Part-of: + +2022-11-16 13:33:39 +0530 Nirbheek Chauhan + + * 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: + +2022-03-01 16:30:10 +0530 Nirbheek Chauhan + + * 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: 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: configure RTP UDP sink for fe80::dc27:25ff:fe5e:bd13:8080:4000 + ... + multiudpsink gstmultiudpsink.c:1229:gst_multiudpsink_configure_client: 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: + +2022-05-19 15:51:03 -0400 Nicolas Dufresne + + * 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: + +2022-12-16 01:00:46 -0600 A. Wilcox + + * 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: + +2022-10-11 15:00:37 +0200 Edward Hervey + + * 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: + +2022-11-30 14:32:52 +0100 Bo Elmgreen + + * 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: + +2022-12-02 12:15:34 -0500 Nicolas Dufresne + + * 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: + +2022-11-28 22:26:50 +0000 Pawel Stawicki + + * 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: + +2022-12-07 09:47:49 +0100 Jacek Skiba + + * 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: + +2022-12-01 10:34:10 +0100 Aleksandr Slobodeniuk + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: fix seek event leaks + Part-of: + +2022-12-04 11:44:17 +0000 Philippe Normand + + * 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: + +2022-11-15 11:56:35 +0100 Jan Alexander Steffens (heftig) + + * 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: + +2022-11-16 10:36:32 +0000 Tim-Philipp Müller + + * 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: + +2020-09-02 10:49:40 +0100 Justin Chadwell + + * 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: + +2022-11-04 17:48:01 +0000 Tim-Philipp Müller + + * ext/qt/gstqtglutility.cc: + qt: initialize GError properly in gst_qt_get_gl_wrapcontext() + Spotted by Claus Stovgaard. + Fixes #1545 + Part-of: + +2022-11-04 11:10:52 +0200 Sebastian Dröge + + * 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: + +2022-11-04 10:49:31 +0200 Sebastian Dröge + + * 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: + +2022-10-21 16:23:08 +0300 Sebastian Dröge + + * 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: + +2022-01-21 14:21:18 +0100 Jonas Bonn + + * 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: + 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: + +2022-10-14 01:23:04 +0000 Devin Anderson + + * 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: + +2022-10-13 00:20:45 +0000 Devin Anderson + + * 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: + +2022-10-08 01:03:13 +0200 Mathieu Duponchelle + + * 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: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * 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 + * ChangeLog: * NEWS: * RELEASE: * docs/gst_plugins_cache.json: diff --git a/subprojects/gst-plugins-ugly/ChangeLog b/subprojects/gst-plugins-ugly/ChangeLog index e0115edf75..6596ecd2b7 100644 --- a/subprojects/gst-plugins-ugly/ChangeLog +++ b/subprojects/gst-plugins-ugly/ChangeLog @@ -1,7 +1,13 @@ +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-plugins-ugly.doap: diff --git a/subprojects/gst-python/ChangeLog b/subprojects/gst-python/ChangeLog index 62fed10f5a..049f72035e 100644 --- a/subprojects/gst-python/ChangeLog +++ b/subprojects/gst-python/ChangeLog @@ -1,7 +1,13 @@ +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gst-python.doap: diff --git a/subprojects/gst-rtsp-server/ChangeLog b/subprojects/gst-rtsp-server/ChangeLog index 5ad0f6a59b..56de7f260d 100644 --- a/subprojects/gst-rtsp-server/ChangeLog +++ b/subprojects/gst-rtsp-server/ChangeLog @@ -1,7 +1,20 @@ +2022-08-19 16:16:26 +0200 Linus Svensson + + * gst/rtsp-server/rtsp-server.c: + rtsp-server: Free client if no connection could be created + Part-of: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * 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 + * ChangeLog: * NEWS: * RELEASE: * docs/gst_plugins_cache.json: diff --git a/subprojects/gstreamer-vaapi/ChangeLog b/subprojects/gstreamer-vaapi/ChangeLog index 0f769dd4e7..924aead74c 100644 --- a/subprojects/gstreamer-vaapi/ChangeLog +++ b/subprojects/gstreamer-vaapi/ChangeLog @@ -1,7 +1,59 @@ +2022-12-10 13:11:08 +0000 Tim-Philipp Müller + + * 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: + +2022-11-02 17:23:04 -0400 Boyuan Zhang + + * 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 + Part-of: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gstreamer-vaapi.doap: diff --git a/subprojects/gstreamer/ChangeLog b/subprojects/gstreamer/ChangeLog index fac484d71d..fdff9366cb 100644 --- a/subprojects/gstreamer/ChangeLog +++ b/subprojects/gstreamer/ChangeLog @@ -1,7 +1,110 @@ +2022-12-12 11:34:51 +0200 Sebastian Dröge + + * 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: + +2022-11-07 09:27:09 -0500 Xavier Claessens + + * 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: + +2022-12-07 11:49:40 +0000 Tim-Philipp Müller + + * meson.build: + meson: fix check for pthread_setname_np() + Need to define _GNU_SOURCE. + Fixes #1542 + Part-of: + +2022-11-30 09:59:09 +0100 Edward Hervey + + * tools/gst-inspect.c: + gst-inspect: Don't leak list + Just iterate the list instead of trying to be smart... + Part-of: + +2022-11-18 16:57:16 +0100 Célestin Marot + + * plugins/elements/gstfakesrc.c: + fakesrc: avoid time overflow with datarate + Part-of: + +2022-11-08 17:45:37 +0200 Sebastian Dröge + + * gst/gstallocator.c: + allocator: Switch `allow-none` annotations to `nullable` / `optional` + Part-of: + +2022-11-08 17:44:54 +0200 Sebastian Dröge + + * 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: + +2022-10-24 12:13:14 +0200 Edward Hervey + + * 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: + +2022-10-27 15:13:36 +0300 Sebastian Dröge + + * 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: + +2022-10-27 11:18:24 +0200 Edward Hervey + + * plugins/elements/gstconcat.c: + concat: Properly propagate EOS seqnum + Part-of: + +2022-10-22 22:04:57 +0900 Seungha Yang + + * gst/gstpadtemplate.c: + padtemplate: Fix annotations + gst_caps_replace() does not take ownership of the new caps + Part-of: + +2022-10-18 16:41:36 +0200 Bunio_FH + + * 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: + +2022-10-12 18:40:25 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + === release 1.20.4 === 2022-10-12 16:39:47 +0100 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * gstreamer.doap: