=== release 1.28.7 === 2026-09-07 20:11:13 +0100 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.7 2026-08-05 13:04:46 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.28.6 === release 1.28.6 === 2026-08-05 12:59:39 +0100 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.6 2026-07-29 01:56:49 -0400 Thibault Saunier * gst/rtsp-server/rtsp-thread-pool.c: * tests/check/gst/threadpool.c: rtsp-server: fix racy leak in test_pool_thread_copy under valgrind A copied GstRTSPThread shares the original's mainloop and context and only holds references on them. The test stopped both threads, attaching two quit idle sources to the shared context. The worker returns as soon as the first is dispatched, so if the copy's source is attached after that, it never runs and its destroy-notify leaks the copy -- an ~840-byte leak that trips valgrind's --error-exitcode, racily. Stop only the original and release the copy with gst_rtsp_thread_unref(); the copy holds only references, so unref is the correct, deterministic disposal. Releasing a never-stopped thread means _gst_rtsp_thread_free() must handle impl->source being NULL (only set once stopped), so guard the g_source_unref(). Example failed CI job: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/jobs/105616117 Part-of: 2026-07-21 15:35:44 +0530 Nirbheek Chauhan * meson.build: meson: Make the g-ir-scanner init section consistent across modules We weren't disabling the registry correctly due to typos and missing env vars. This speeds up introspection builds considerably on Windows. Part-of: 2026-07-08 23:48:39 +0200 Tim-Philipp Müller * meson.build: Back to development after 1.28.5 === release 1.28.5 === 2026-07-08 23:42:39 +0200 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.5 2026-06-12 13:27:54 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.28.4 === release 1.28.4 === 2026-06-12 13:19:43 +0100 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.4 2026-05-29 16:55:57 +0200 Niclas Götting * gst/rtsp-server/rtsp-media-factory.h: RTSPMediaFactory: make create_pipeline introspectable Due to a missing doc string, the create_pipeline method was not exposed in the python bindings, thus not allowing for a do_create_pipeline override in RTSPMediaFactory subclasses in python. This commit adds said doc string. Part-of: 2026-05-11 18:33:25 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.28.3 === release 1.28.3 === 2026-05-11 18:28:12 +0100 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.3 2026-04-07 13:09:24 +0100 Nirbheek Chauhan * meson.build: meson: Require C std gnu11 or c11 When using gcc or clang, gnu11 will be used, and when using MSVC c11 will be used which will pass /std:c11. This provides us with the `restrict` keyword on all supported platforms. We can do this now because we require Visual Studio 2019. This feature was added in Meson 1.3 Part-of: 2026-04-07 20:07:19 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.28.2 === release 1.28.2 === 2026-04-07 20:02:23 +0100 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.2 2026-03-30 16:40:02 +0300 Sebastian Dröge * gst/rtsp-sink/gstrtspclientsink.c: gst: Fix a couple of const correctness bugs around strchr() usage `assignment discards ‘const’ qualifier from pointer target type` Part-of: 2026-03-16 11:53:00 +0100 Peter Stensson * gst/rtsp-server/rtsp-client.c: rtsp-client: Lock media when unlinking session medias If the session timed out while handling the play request the cleanup for the session would start removing medias which could cause a segmentaion fault. The locking of the media on cleanup adds synchronization with the request handlers and resolves the crashes. Part-of: 2026-02-19 11:24:25 +0200 Marko Kohtala * gst/rtsp-server/rtsp-stream.c: rtsp-stream: Clear send_thread when it's freed No new thread was created, but instead the freed memory was accessed when media was reused. Fixes #4920 Part-of: 2026-02-26 01:53:07 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.28.1 === release 1.28.1 === 2026-02-26 01:44:06 +0000 Tim-Philipp Müller * gst-rtsp-server.doap: * meson.build: Release 1.28.1 2026-02-22 12:01:31 +0100 Mathieu Duponchelle * gst/rtsp-sink/gstrtspclientsink.c: rtspclientsink: don't error out when stream transport notifies timeout This can and will happen when the server is still alive and well, as long as it does not send a receiver report for one of the ssrcs (for instance a retransmission ssrc) See: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4911 Part-of: 2023-04-02 16:53:45 +0100 Tim-Philipp Müller * meson.build: * scripts/dist-common-files.py: modules: dist common files from monorepo root Less noise when making releases, and just need to maintain one copy. Part-of: 2026-02-15 17:20:59 +0000 Tim-Philipp Müller * RELEASE: modules: remove RELEASE from git, will be generated from template on dist Part-of: 2026-02-15 15:02:07 +0000 Tim-Philipp Müller * NEWS: modules: Remove NEWS from git which is generated from full release notes Part-of: 2026-01-27 17:10:54 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.28.0 === release 1.28.0 === 2026-01-27 17:02:33 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-rtsp-server.doap: * meson.build: Release 1.28.0 2026-01-05 20:20:51 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.27.90 === release 1.27.90 === 2026-01-05 20:15:10 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-rtsp-server.doap: * meson.build: Release 1.27.90 2025-12-09 19:13:20 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.27.50 === release 1.27.50 === 2025-12-09 19:08:48 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-rtsp-server.doap: * meson.build: Release 1.27.50 2025-11-12 11:03:07 +0100 Patricia Muscalu * gst/rtsp-server/rtsp-client.c: * tests/check/gst/client.c: rtsp-client: Add a pre-closed signal Provide a way for an application to be notified when a connection is closed, before the client's sessions are cleaned up. This is useful when a client terminates its session improperly, for example, by sending a TCP RST. Part-of: 2025-09-29 17:24:08 +0900 Seungha Yang * examples/test-replay-server.c: rtsp-server: examples: Port to gst_object_call_async Part-of: 2025-10-05 14:56:36 -0400 Doug Nazar * gst/rtsp-server/rtsp-media.c: * gst/rtsp-server/rtsp-session-media.c: * gst/rtsp-server/rtsp-session.c: * gst/rtsp-server/rtsp-stream.c: rtsp-server: mark items that are unused when checks or asserts are disabled Part-of: 2025-09-25 08:36:52 -0400 Doug Nazar * examples/test-auth-digest.c: * examples/test-auth.c: * examples/test-netclock.c: * gst/rtsp-server/rtsp-client.c: * gst/rtsp-server/rtsp-session-pool.c: * tests/check/gst/mediafactory.c: * tests/check/gst/rtspclientsink.c: rtsp-server: Fixes/workarounds for G_GNUC_WARN_UNUSED_RESULT Part-of: 2025-09-25 08:33:59 -0400 Doug Nazar * gst/rtsp-server/rtsp-address-pool.h: * gst/rtsp-server/rtsp-auth.h: * gst/rtsp-server/rtsp-client.h: * gst/rtsp-server/rtsp-media-factory-uri.h: * gst/rtsp-server/rtsp-media-factory.h: * gst/rtsp-server/rtsp-media.h: * gst/rtsp-server/rtsp-mount-points.h: * gst/rtsp-server/rtsp-onvif-client.h: * gst/rtsp-server/rtsp-onvif-media-factory.h: * gst/rtsp-server/rtsp-onvif-server.h: * gst/rtsp-server/rtsp-permissions.h: * gst/rtsp-server/rtsp-server-object.h: * gst/rtsp-server/rtsp-session-media.h: * gst/rtsp-server/rtsp-session-pool.h: * gst/rtsp-server/rtsp-session.h: * gst/rtsp-server/rtsp-stream-transport.h: * gst/rtsp-server/rtsp-stream.h: * gst/rtsp-server/rtsp-thread-pool.h: * gst/rtsp-server/rtsp-token.h: rtsp-server: Add G_GNUC_WARN_UNUSED_RESULT to funcs with transfer full returns Part-of: 2025-09-25 08:32:02 -0400 Doug Nazar * gst/rtsp-server/rtsp-auth.c: rtsp-server: Fix annotation Part-of: 2025-09-24 15:33:02 -0400 Doug Nazar * examples/test-replay-server.c: * gst/rtsp-server/rtsp-media-factory-uri.c: gst: fixes Part-of: 2025-09-08 17:50:32 -0400 Doug Nazar * gst/rtsp-server/rtsp-stream.c: gst: Don't use g_assert() around production code If G_DISABLE_ASSERT is defined the code will not be compiled. Part-of: 2025-09-07 20:39:44 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.27.2 === release 1.27.2 === 2025-09-07 20:34:55 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-rtsp-server.doap: * meson.build: Release 1.27.2 2025-09-06 11:08:47 +0300 Sebastian Dröge * gst/rtsp-server/rtsp-media.c: * gst/rtsp-sink/gstrtspclientsink.c: gst: Change usage of gst_element_state_*() to gst_state_*() Part-of: 2025-06-17 06:36:57 -0400 Doug Nazar * tests/check/gst/media.c: * tests/check/gst/rtspserver.c: * tests/check/gst/threadpool.c: rtsp-server: tests: Switch to fixtures to ensure pool shutdown Part-of: 2025-07-31 17:39:44 -0400 Olivier Crête * REQUIREMENTS: REQUIREMENTS: Remove outdated doc They contained information which was completely outdated. Part-of: 2025-05-29 14:18:57 +0200 Mathieu Duponchelle * gst/rtsp-sink/gstrtspclientsink.c: rtspclientsink: post error message on RTCP timeout Part-of: 2025-05-29 14:14:38 +0200 Mathieu Duponchelle * gst/rtsp-server/rtsp-stream-transport.c: rtsp-stream-transport: expose new timed-out property Upon RTCP timeout, rtpsession emits a signal that we catch to set a timed_out private field, this also exposes it as a property of the transport in order for users (such as rtspclientsink) to get notified about it. Part-of: 2025-07-08 20:00:07 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.27.1 === release 1.27.1 === 2025-07-08 19:55:15 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-rtsp-server.doap: * meson.build: Release 1.27.1 2025-06-10 14:41:22 +0200 Víctor Manuel Jáquez Leal * scripts/gen-changelog.py: gstreamer-vaapi: remove subproject It's almost superseded by va plugin in gst-plugins-bad. Part-of: 2025-05-28 09:13:46 -0400 Doug Nazar * tests/check/gst/onvif.c: * tests/check/gst/rtspserver.c: * tests/test-reuse.c: rtsp-server: tests: Fix a few memory leaks Also use any port to run server to avoid conflicts. Part-of: 2025-05-21 09:54:53 -0400 Doug Nazar * tests/check/gst/media.c: * tests/check/gst/rtspserver.c: rtsp-server: A few small memory cleanups Part-of: 2025-05-13 19:45:12 -0400 Doug Nazar * gst/rtsp-sink/gstrtspclientsink.c: rtspclientsink: Free various props before being set Part-of: 2025-05-02 08:56:19 +0200 Alexander Slobodeniuk * gst/rtsp-server/rtsp-latency-bin.c: * gst/rtsp-server/rtsp-media.c: properties: add G_PARAM_STATIC_STRINGS where missing "Hold on, I know you need to generate the registry, but let me just create copies of all those strings first", Framework whispered Part-of: 2025-03-15 20:56:17 +0100 Tim-Philipp Müller * meson.options: meson: rename meson_options.txt to meson.options Which is supported since Meson 1.1: https://mesonbuild.com/Release-notes-for-1-1-0.html#support-for-reading-options-from-mesonoptions Part-of: 2025-03-14 22:15:10 -0400 Doug Nazar * gst/rtsp-sink/gstrtspclientsink.c: rtspclientsink: Free various props during cleanup Part-of: 2025-03-12 13:59:45 +0100 Tim-Philipp Müller * RELEASE: * meson.build: Back to development in main branch after 1.26.0 Part-of: === release 1.26.0 ===