diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6299c5783..185586268 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.14)
project(MLT
- VERSION 7.19.0
+ VERSION 7.20.0
DESCRIPTION "Multimedia Framework"
HOMEPAGE_URL "https://www.mltframework.org"
LANGUAGES C CXX
diff --git a/Doxyfile b/Doxyfile
index b2f27dc50..ba03c5327 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.18.0
+PROJECT_NUMBER = 7.20.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 cdcdd0775..c0d636390 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,62 @@
MLT Release Notes
-----------------
+Version 7.20.0
+
+Framework
+
+ * Fixed "blank" in a playlist does not have audio normalization filters.
+ * Fixed serializing `mlt_color` transparent black as "#00000000" when
+ the property was set using an integer or `mlt_color`.
+ * Fixed `mlt_chain_set_source()` would always fetch a frame from the producer
+ even if it has "meta.media.frame_rate_num" and "meta.media.frame_rate_den"
+ properties making things slow.
+ * Fixed `Mlt::Chain` leaking memory.
+
+Modules
+
+ * Added a `blank` producer to the `core` module.
+ * Added keywords to `gpstext` filter:
+ - `#gps_cadence#`
+ - `#gps_grade_degrees#`
+ - `#gps_grade_percentage#`
+ - `#gps_temperature#`
+ * Added some `color_style`s to the `gpsgraphic` filter:
+ - 10 = color by speed (max 100 km/h)
+ - 11 = color by grade (max 90 degrees)
+ - 12 = color by grade (max 20 degrees)
+ * Added more unit formats to `legend_unit` property of `gpsgraphic` filter:
+ - `mmin` or `m/min`
+ - `ftmin` or `ft/min`
+ * Added keywords to `dynamictext` filter:
+ - `#basename#`
+ - `#filename#`
+ * Fixed installing `filter_audioseam.yml`.
+ * Added an `avlink` link to the `avformat` module for FFmpeg filters that can
+ benefit from future frames such as `adeclick`.
+ * Added the `preserve_alpha` property to the `box_blur` filter.
+ * Fixed loading service metadata for the `qt6` and `glaxnimate-qt6` modules.
+ * Fixed a crash when changing the `rotate` property in `avformat` producer
+ with interlace video.
+ * Add `astream` and `vstream` properties to avformat producer. Unlike
+ `audio_index` and `video_index` are absolute indices across the entire
+ array of streams regardless their type, these new 0-based properties are
+ relative to the type audio or video. For example, astream=1 is the second
+ audio stream.
+ * Fixed a possible crash in the `avformat` producer's `mlt_producer_probe`
+ virtual function.
+ * Updated the `glaxnimate` module to version 0.5.4.
+ * Fixed the `sdl2` consumer crashing with the Linux radeonsi_dri driver and
+ showing only all black with the Linux `nvidia` driver.
+
+Other
+
+ * Fix compiling on Android (not supported by the core developers).
+ * Changed the `avformat` consumer `FLAC` preset to use the `flac` format.
+ * Fixed the `melt` Shift+H and Shift+L keyboard
+ shortcuts when the SDL2 window has focus.
+
+
Version 7.18.0
Framework
diff --git a/docs/melt.1 b/docs/melt.1
index 5d549e77f..fa43daf31 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" "July 2023" "melt 7.18.0" "User Commands"
+.TH MELT "1" "October 2023" "melt 7.20.0" "User Commands"
.SH NAME
melt \- author, play, and encode multitrack audio/video compositions
.SH SYNOPSIS
diff --git a/src/framework/mlt_version.h b/src/framework/mlt_version.h
index b3eb8cb94..1ce625ef7 100644
--- a/src/framework/mlt_version.h
+++ b/src/framework/mlt_version.h
@@ -27,7 +27,7 @@
#define MLT_STRINGIZE(s) MLT_STRINGIZE2(s)
#define LIBMLT_VERSION_MAJOR 7
-#define LIBMLT_VERSION_MINOR 19
+#define LIBMLT_VERSION_MINOR 20
#define LIBMLT_VERSION_REVISION 0
#define LIBMLT_VERSION_INT \
((LIBMLT_VERSION_MAJOR << 16) + (LIBMLT_VERSION_MINOR << 8) + LIBMLT_VERSION_REVISION)