=== release 1.24.2 ===

2024-04-09 21:48:55 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.24.2

2024-03-22 01:38:06 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.24.1 ===

2024-03-21 21:47:53 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.24.1

2024-02-08 01:36:43 +0300  Mikhail Rudenko <mike.rudenko@gmail.com>

	* gst/rtsp-server/rtsp-stream.c:
	  rtsp-stream: clear sockets when leaving bin
	  Since commit 4d86f994, when setting an RTSP media both shared and
	  reusable, streaming cannot be restarted after the first time all the
	  clients disconnect. That happens because the sockets (unlike
	  addresses) of GstRTSPStream are not cleared in
	  gst_rtsp_stream_leave_bin, and on restart sockets and addresses are
	  not allocated in gst_rtsp_stream_allocate_udp_sockets, and then the
	  check in create_sender_part fails. Fix this by clearing sockets in
	  gst_rtsp_stream_leave_bin.
	  Fixes gstreamer/gst-rtsp-server#113
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6334>

2024-02-16 18:12:37 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* tests/check/gst/onvif.c:
	  onvif: tests: check for T flag on all packets
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6298>

2024-03-05 13:45:27 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6264>

=== release 1.24.0 ===

2024-03-04 23:51:42 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.24.0

2024-02-26 09:27:40 +0100  Edward Hervey <edward@centricular.com>

	* RELEASE:
	  docs: Use Discourse and Matrix as prefered communication channels
	  Part of: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6220

=== release 1.23.90 ===

2024-02-23 18:20:11 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.23.90

2024-02-15 16:38:53 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6126>

=== release 1.23.2 ===

2024-02-15 15:37:17 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.23.2

2024-02-06 18:09:02 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6066>

=== release 1.23.1 ===

2024-02-06 16:37:19 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-rtsp-server.doap:
	* meson.build:
	  Release 1.23.1

2024-01-28 11:15:01 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  meson: bump Meson requirement to >= 1.1 for all modules
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6002>

2024-01-16 21:21:20 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* examples/test-launch.c:
	  gst-rtsp-server: Dump test-launch debug graph every 5 seconds
	  This also serves as an example of how to fetch the pipeline from
	  a running media and doing something else with it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5928>

2023-11-08 10:58:33 +0100  Patricia Muscalu <patricia@axis.com>

	* gst/rtsp-server/rtsp-media.c:
	  rtsp-server: Unprepare media that is in error state
	  Without this patch a prepared media that entered an error state
	  remains unprepared.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5621>

2022-04-06 12:56:30 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  meson: Bump GLib requirement to >= 2.64
	  This includes fixes to make GstBus watches non-racy.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2126>

2021-05-13 22:25:55 -0400  Doug Nazar <nazard@nazar.ca>

	* gst/rtsp-sink/gstrtspclientsink.c:
	  rtspclientsink: Don't leak previous server_ip
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5497>

2023-10-02 08:33:19 +0200  Jacob Johnsson <jacobj@axis.com>

	* gst/rtsp-server/rtsp-media.c:
	  rtsp-server: Only unblock live streams when complete
	  When media consists of multiple streams we should only unblock the
	  complete streams.
	  Fixes #2443
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4334>

2023-06-26 08:25:36 +0200  Jacob Johnsson <jacobj@axis.com>

	* gst/rtsp-server/meson.build:
	* gst/rtsp-server/rtsp-media-factory.c:
	* gst/rtsp-server/rtsp-media-factory.h:
	* gst/rtsp-server/rtsp-media.c:
	* gst/rtsp-server/rtsp-media.h:
	* gst/rtsp-server/rtsp-onvif-media-factory.c:
	* gst/rtsp-server/rtsp-server-internal.h:
	* gst/rtsp-server/rtsp-stream.c:
	* meson.build:
	* tests/check/meson.build:
	  rtsp-server: Add new ensure-keyunit-on-start property
	  While the suspend modes NONE and PAUSED provided a low startup latency
	  for connecting clients they did not ensure that streams started on
	  fresh data.
	  With this property we can maintain the low startup latency of those
	  suspend modes while also ensuring that a stream starts on a key unit.
	  Furthermore, by modifying the value of a new property,
	  ensure-keyunit-on-start-timeout, it is possible to accept a keyunit of
	  a certain age but discard it if too much time has passed and instead
	  force a new keyunit.
	  Fixes #2443
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4334>

2023-08-05 17:27:31 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/glib-compat-private.h:
	* gst/rtsp-sink/gstrtspclientsink.c:
	  rtspsink: use version template in user-agent property
	  Avoids documentation churn when the version changes.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5090>

2023-07-05 18:46:25 -0600  Olivier Crête <olivier.crete@collabora.com>

	* scripts/gen-changelog.py:
	  gst-omx: Retire the whole package
	  The OpenMAX standard is long dead and even the Raspberry Pi OS
	  no longer supports it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4976>

2023-07-12 09:27:22 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* tests/check/meson.build:
	  meson: Always use forward slashes in defines with paths
	  Fixes the following build failure on MSYS2:
	  ```
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c: In function 'test_seeking':
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: error: incomplete universal character name \U
	  107 |   g_object_set (G_OBJECT (src), "location", TESTFILE, NULL);
	  |                                                     ^
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: warning: unknown escape sequence: '\A'
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: warning: unknown escape sequence: '\g'
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: warning: unknown escape sequence: '\s'
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: warning: unknown escape sequence: '\g'
	  ../subprojects/gstreamer/tests/check/elements/filesrc.c:107:53: warning: unknown escape sequence: '\c'
	  ```
	  Due to: `-DTESTFILE=\"C:\\Users\\Administrator\[...]`
	  https://gitlab.freedesktop.org/nirbheek/gstreamer/-/jobs/45317733
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5018>

2023-06-11 15:33:33 +0800  James Oliver <james.oliver@icetana.com.au>

	* docs/plugins/gst_plugins_cache.json:
	* gst/rtsp-sink/gstrtspclientsink.c:
	* gst/rtsp-sink/gstrtspclientsink.h:
	  rtspclientsink: add RTSP address pool for unicast UDP
	  Adds an address pool for rtspclientsink in order to allow the
	  "port-range" property to restrict the ports available for the RTSP
	  streams rather than always using the ephemeral port-range.
	  If a value is not provided to the "port-range" property, rtspclientsink
	  will select random ports from the ephemeral port-range as before.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2606
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4828>

2023-03-07 14:05:54 +0100  Stéphane Cerveau <scerveau@igalia.com>

	* examples/meson.build:
	* meson.build:
	* tests/meson.build:
	  gstreamer-full: add full static support
	  Allow a project to use gstreamer-full as a static library
	  and link to create a binary without dependencies.
	  Introduce the option 'gst-full-target-type' to
	  select the build type, dynamic(default) or static.
	  In gstreamer-full/static build configuration gstreamer (gst.c)
	  needs the symbol gst_init_static_plugins which is defined
	  in gstreamer-full.
	  All the tests and examples are linking with gstreamer but the
	  symbol gst_init_static_plugins is only defined in the gstreamer-full
	  library. gstreamer-full can not be built first as it needs to know what plugins
	  will be built.
	  One option would be to build all the examples and tests after
	  gstreamer-full as the tools.
	  Disable tools build in subprojects too as it will be built at the end of
	  build process.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128>

2023-05-11 21:09:25 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp-server/rtsp-client.c:
	* gst/rtsp-server/rtsp-media-factory.c:
	* gst/rtsp-server/rtsp-media.c:
	* gst/rtsp-server/rtsp-media.h:
	* tests/check/gst/media.c:
	* tests/check/gst/mediafactory.c:
	* tests/check/gst/sessionmedia.c:
	  rtsp-server: media-factory: Make sure a shared media is actually still usable
	  Previously it was possible that a shared media was just in the process
	  of being unprepared because the last client disappeared, while another
	  client retrieved it from the cache and then tried to use it. Unless the
	  media was reusable this would've then failed unnecessarily.
	  To avoid this it is necessary to lock the media directly in
	  gst_rtsp_media_factory_construct() and return a locked media. After
	  locking the cached media it is necessary to check if the media was ever
	  unprepared or is actually reusable and based on that either reuse it or
	  create a new media.
	  This minimally changes the gst_rtsp_media_factory_construct() API to
	  always return a locked media, and adds a new
	  gst_rtsp_media_can_be_shared() function to check if a media can actually
	  be shared in practice.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4606>

2023-03-19 15:35:29 -0300  Thibault Saunier <tsaunier@igalia.com>

	* docs/meson.build:
	  doc: Avoid shelling out to hotdoc to generate plugins config files
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4479>

2022-08-31 14:15:16 -0400  Thibault Saunier <tsaunier@igalia.com>

	* gst/rtsp-server/meson.build:
	  gir: Checkout all .gir files and check that they are updated on the CI
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3010>

2023-04-04 20:03:31 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp-server/rtsp-media.c:
	  rtsp-server: media: First set state to PLAYING again temporarily, then send EOS
	  Sending the EOS event while the pipeline is PAUSED can deadlock on the
	  stream lock if a sink is currently blocked because of pre-rolling.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4340>

2023-03-15 18:56:21 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst/rtsp-server/rtsp-client.c:
	* gst/rtsp-server/rtsp-sdp.c:
	  gst-rtsp-server: re-indent with GNU indent 2.2.12
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4182>

2023-02-11 19:55:41 +0100  Jan Vermaete <jan.vermaete@gmail.com>

	* examples/test-launch.c:
	  rtsp-server: test-launch: added the argument mount/m to specify the mountpoint
	  Default is the previous hardcoded "/test"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3942>

2023-01-24 20:13:50 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst/rtsp-server/rtsp-address-pool.c:
	* gst/rtsp-server/rtsp-media-factory.c:
	* gst/rtsp-server/rtsp-media.c:
	* gst/rtsp-server/rtsp-mount-points.c:
	* gst/rtsp-server/rtsp-permissions.c:
	* gst/rtsp-server/rtsp-server.c:
	* gst/rtsp-server/rtsp-stream.c:
	* gst/rtsp-server/rtsp-thread-pool.c:
	* gst/rtsp-server/rtsp-token.c:
	* meson.build:
	  rtsp-server: drop use of GSlice allocator
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3784>

2023-01-23 23:04:53 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3775>

=== release 1.22.0 ===

