diff --git a/AUTHORS b/AUTHORS
index 9fa00fa..a42f17e 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -106,6 +106,7 @@
 Jan Kratochvil <jan.kratochvil@redhat.com>
 Janne Salonen <jsalonen@google.com>
 Jayasanker J <jayasanker.j@ittiam.com>
+Jayashri Murugan <jayashri.murugan@ittiam.com>
 Jean-Marc Valin <jmvalin@jmvalin.ca>
 Jean-Yves Avenard <jyavenard@mozilla.com>
 Jeff Faust <jfaust@google.com>
@@ -130,12 +131,14 @@
 Justin Clift <justin@salasaga.org>
 Justin Lebar <justin.lebar@gmail.com>
 Katsuhisa Yuasa <berupon@gmail.com>
+Kavi Ramamurthy <kavii@google.com>
 KO Myung-Hun <komh@chollian.net>
 Krishna Malladi <kmalladi@google.com>
 Kyle Siefring <kylesiefring@gmail.com>
 Larisa Markeeva <lmarkeeva@google.com>
 Lauren Partin <lpartin@google.com>
 Lawrence Velázquez <larryv@macports.org>
+leolzhao <leolzhao@tencent.com>
 Lester Lu <kslu@google.com>
 liang zhao <leolzhao@tencent.com>
 Linfeng Zhang <linfengz@google.com>
@@ -152,6 +155,7 @@
 Mark Mentovai <mark@chromium.org>
 Martin Ettl <ettl.martin78@googlemail.com>
 Martin Storsjo <martin@martin.st>
+Maryla <maryla@google.com>
 Matthew Heaney <matthewjheaney@chromium.org>
 Matthieu Vaudano <matthieu.vaudano@allegrodvt.com>
 Mattias Hansson <mattias.hansson@arm.com>
@@ -187,6 +191,7 @@
 Pengchong Jin <pengchong@google.com>
 Peter Boström <pbos@google.com>
 Peter de Rivaz <peter.derivaz@gmail.com>
+Peter Kasting <pkasting@chromium.org>
 Philip Jägenstedt <philipj@opera.com>
 Priit Laes <plaes@plaes.org>
 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
@@ -209,6 +214,7 @@
 Ryan Overbeck <rover@google.com>
 Sachin Kumar Garg <sachin.kumargarg@ittiam.com>
 Sai Deng <sdeng@google.com>
+Sami Boukortt <sboukortt@google.com>
 Sami Pietilä <samipietila@google.com>
 Sarah Parker <sarahparker@google.com>
 Sasi Inguva <isasi@google.com>
@@ -221,6 +227,7 @@
 Sebastien Alaiwan <sebastien.alaiwan@allegrodvt.com>
 Sergey Kolomenkin <kolomenkin@gmail.com>
 Sergey Ulanov <sergeyu@chromium.org>
+S Hamsalekha <hamsalekha.s@ittiam.com>
 Shimon Doodkin <helpmepro1@gmail.com>
 Shunyao Li <shunyaoli@google.com>
 SmilingWolf <lupo996@gmail.com>
@@ -252,6 +259,8 @@
 Venkat Sanampudi <sanampudi.venkatarao@ittiam.com>
 Victoria Zhislina <niva213@gmail.com>
 Vignesh Venkatasubramanian <vigneshv@google.com>
+Vikas Prasad <vikas.prasad@ittiam.com>
+Vincent Rabaud <vrabaud@google.com>
 Vishesh <vishesh.garg@ittiam.com>
 Vishnu Teja Manyam <vishnu.teja@ittiam.com>
 Vitalii Dziumenko <vdziumenko@luxoft.com>
@@ -263,7 +272,9 @@
 Xiaoqing Zhu <xzhu@netflix.com>
 Xing Jin <ddvfinite@gmail.com>
 Xin Zhao <xinzzhao@tencent.com>
+Yannis Guyon <yguyon@google.com>
 Yaowu Xu <yaowu@google.com>
+Yeqing Wu <yeqing_wu@apple.com>
 Yi Luo <luoyi@google.com>
 Yongzhe Wang <yongzhe@google.com>
 Yue Chen <yuec@google.com>
diff --git a/CHANGELOG b/CHANGELOG
index f80d09d..3fccfc1 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,37 @@
+2021-10-07 v3.2.0
+  This release includes compression efficiency and perceptual quality
+  improvements, speedup and memory optimizations, as well as some new
+  features.
+
+  - New Features
+    * Introduced speeds 7, 8, and 9 for all-intra mode.
+    * Introduced speed 10 for real-time mode.
+    * Introduced an API that allows external partition decisions.
+
+  - Compression Efficiency Improvements
+    * Intra-mode search improvement.
+    * Improved real time (RT) mode BDrate savings by ~5% (RT speed 5)
+      and ~12% (RT speed 6). The improvement was measured on the video
+      conference set.
+
+  - Perceptual Quality Improvements
+    * Added a new mode --deltaq-mode=3 to improve perceptual quality
+      based on a differential contrast model for still images.
+    * Added a new mode –deltaq-mode=4 to improve perceptual quality
+      based on user rated cq_level data set for still images.
+
+  - Speedup and Memory Optimizations
+    * Further improved 2-pass good quality encoder speed:
+      o Speed 2 speedup: 18%
+      o Speed 3 speedup: 22%
+      o Speed 4 speedup: 37%
+      o Speed 5 speedup: 30%
+      o Speed 6 speedup: 20%
+    * Optimized the real time encoder (measured on the video conference
+      set):
+      o RT speed 5 speedup: 110%
+      o RT speed 6 speedup: 77%
+
 2021-09-29 v3.1.3
   This release includes several bug fixes.
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 94395b2..3a84d9b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -47,9 +47,9 @@
 # passed to libtool.
 #
 # We set SO_FILE_VERSION = [c-a].a.r
-set(LT_CURRENT 4)
-set(LT_REVISION 3)
-set(LT_AGE 1)
+set(LT_CURRENT 5)
+set(LT_REVISION 0)
+set(LT_AGE 2)
 math(EXPR SO_VERSION "${LT_CURRENT} - ${LT_AGE}")
 set(SO_FILE_VERSION "${SO_VERSION}.${LT_AGE}.${LT_REVISION}")
 unset(LT_CURRENT)
