diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b88a1da9..28af9b2fd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.14)
project(MLT
- VERSION 7.23.0
+ VERSION 7.24.0
DESCRIPTION "Multimedia Framework"
HOMEPAGE_URL "https://www.mltframework.org"
LANGUAGES C CXX
diff --git a/Doxyfile b/Doxyfile
index 65613b56f..ae551d7e7 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -31,7 +31,7 @@ PROJECT_NAME = MLT
# This could be handy for archiving the generated documentation or
# if some version control system is used.
-PROJECT_NUMBER = 7.22.0
+PROJECT_NUMBER = 7.24.0
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
# base path where the generated documentation will be put.
diff --git a/NEWS b/NEWS
index ea57dcbbc..66b464e81 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,42 @@
MLT Release Notes
-----------------
+Version 7.24.0
+
+Framework
+ * Fixed a small memory leak in `mlt_repository`.
+ * Fixed a small memory leak in `MltPushConsumer` C++ class.
+ * Block connecting a null producer to a service.
+ * Include `locale.h` on any GNU libc platform.
+
+Modules
+ * Added a new `spatialaudio` module with filters:
+ - `ambisonic-decoder`
+ - `ambisonic-encoder`
+ * Fixed building with FFmpeg 7.
+ * Fixed text keywords do not work with non-ASCII filenames on Windows:
+ - `pixbuf` producer
+ - `opencv_tracker` filter
+ - `dynamictext` filter
+ - `qimage` producer
+ * Added "meta.media.aspect_ratio" property to the `avformat` producer.
+ * Fixed `distort` property not working in `movit.rect` filter.
+ * Fixed frames dropping or repeating in the `multi` consumer.
+ * Fixed the `dynamic_loudness` filter maximizing audio gain.
+ * Fixed distortion in the `mono` filter.
+ * Also check for `WAYLAND_DISPLAY` to detect a graphical session in the `qt`
+ and `glaxnimate` modules.
+ * Fixed the `wave` filter distorts if `wave` = 1 with preview scaling.
+ * Added the read-only `meta.media.%u.codec.layout` property to `avformat` producer.
+ * Set the `channel_layout` property on the frame for the `noise` and `tone`
+ audio producers.
+ * Fixed `outline` maximum for the `text` and `dynamictext` filters.
+
+Other
+ * Fixed crash when using `-chain` from `melt`.
+ * Fixed a small memory leak on Windows `fopen()`.
+
+
Version 7.22.0
Framework
diff --git a/docs/melt.1 b/docs/melt.1
index 574cb1a82..de59facae 100644
--- a/docs/melt.1
+++ b/docs/melt.1
@@ -1,5 +1,5 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.38.4.
-.TH MELT "1" "November 2023" "melt 7.22.0" "User Commands"
+.TH MELT "1" "April 2024" "melt 7.24.0" "User Commands"
.SH NAME
melt \- author, play, and encode multitrack audio/video compositions
.SH SYNOPSIS
@@ -149,7 +149,7 @@ Add a video\-only track
.PP
For more help:
.SH COPYRIGHT
-Copyright \(co 2002\-2023 Meltytech, LLC
+Copyright \(co 2002\-2024 Meltytech, LLC
.br
This is free software; see the source for copying conditions. There is NO
diff --git a/src/framework/mlt_version.h b/src/framework/mlt_version.h
index 8fc33f35d..a3561fbfe 100644
--- a/src/framework/mlt_version.h
+++ b/src/framework/mlt_version.h
@@ -2,7 +2,7 @@
* \file mlt_version.h
* \brief contains version information
*
- * Copyright (C) 2010-2023 Meltytech, LLC
+ * Copyright (C) 2010-2024 Meltytech, LLC
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -27,7 +27,7 @@
#define MLT_STRINGIZE(s) MLT_STRINGIZE2(s)
#define LIBMLT_VERSION_MAJOR 7
-#define LIBMLT_VERSION_MINOR 23
+#define LIBMLT_VERSION_MINOR 24
#define LIBMLT_VERSION_REVISION 0
#define LIBMLT_VERSION_INT \
((LIBMLT_VERSION_MAJOR << 16) + (LIBMLT_VERSION_MINOR << 8) + LIBMLT_VERSION_REVISION)
diff --git a/src/melt/melt.c b/src/melt/melt.c
index 8a97b4ab1..224f4ebc7 100644
--- a/src/melt/melt.c
+++ b/src/melt/melt.c
@@ -1,6 +1,6 @@
/*
* melt.c -- MLT command line utility
- * Copyright (C) 2002-2023 Meltytech, LLC
+ * Copyright (C) 2002-2024 Meltytech, LLC
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -874,7 +874,7 @@ int main(int argc, char **argv)
} else if (!strcmp(argv[i], "-version") || !strcmp(argv[i], "--version")) {
fprintf(stdout,
"%s " VERSION "\n"
- "Copyright (C) 2002-2023 Meltytech, LLC\n"
+ "Copyright (C) 2002-2024 Meltytech, LLC\n"
"\n"
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n",