diff --git a/AUTHORS b/AUTHORS
index 8a4e529b5acce809dacc0dca9f3ed8bcc8421e90..c556ff4697a8dfb31750b1ba8e90b36d5ad3394e 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -28,6 +28,7 @@ Cristian Adam
 Sebastian Pippin
 Simon Hosie
 Brad Smith
+Petter Reinholdtsen
 	- Bug fixes, enhancements, build systems.
 
 Mauricio Piacentini
diff --git a/CHANGES b/CHANGES
index fb09793a3ec5350379d75ffcbe7316908f5c49a4..abebfab0019ebcd2af120870d13faaefd1ee0515 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,38 @@
+libteora 1.2.0beta1 (2025 March 15)
+- Bumped minor SONAME versions as <codec.h> methods changed constness
+  of arguments.
+- Updated libogg dependency to version 1.3.4 for ogg_uint64_t.
+- Updated doxygen setup.
+- Updated autotools setup and support scripts (#1467 #1800 #1987 #2318
+  #2320).
+- Added support for RISC OS.
+- Fixed mingw build (#2141).
+- Improved ARM support.
+- Converted SCons setup to work with Python 3.
+- Introduced new configure options --enable-mem-constraint and
+  --enable-gcc-sanitizers.
+- Fixed all known compiler warnings and errors from gcc and clang.
+- Improved examples for stability and correctness.
+- Variuos speed, bug fixes and code quality improvements.
+  - Fixed build problem with Visual Studio (#2317).
+  - Avoids undefined bit shift of signed numbers (#2321, #2322).
+  - Avoids example encoder crash on bogus audio input (#2305).
+  - Fixed musl linking issue with asm enabled (#2287).
+  - Fixed some broken clamping in rate control (#2229).
+  - Added NULL check _tc and _setup even for data packets (#2279).
+  - Fixed mismatched oc_mb_fill_cmapping11 signature (#2068).
+  - Updated the documentation for theora_encode_comment() (#726).
+  - Adjusted build to Only link libcompat with dump_video (#1587).
+  - Corrected an operator precedence error in the visualization
+    code (#1751).
+  - Fixed two spelling errors in the comments (#1804).
+  - Avoid negative bit shift operation in huffdec.c (CVE-2024-56431).
+- Improved library documentation and specification text.
+- Adjusted library dependencies so libtheoraenc do not depend on
+  libtheoradec.
+- Handle fallout from CVE-2017-14633 in libvorbis, check return value
+  in encoder_example and transcoder_example.
+
 libteora 1.2.0alpha1 (2010 September 23)
 
 - New 'ptalarbvorm' encoder with better rate/distortion optimization
diff --git a/configure.ac b/configure.ac
index c7556c7ce5584521ff69b5b15900983b73b931c9..33f43be328da169a9e9fa5c5da9dfb94d0b3c780 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,7 +4,7 @@ dnl ------------------------------------------------
 dnl Initialization and Versioning
 dnl ------------------------------------------------
 
-AC_INIT([libtheora],[1.2.0alpha1+git],[theora-dev@xiph.org])
+AC_INIT([libtheora],[1.2.0beta1],[theora-dev@xiph.org])
 
 AC_CANONICAL_HOST
 
@@ -23,33 +23,33 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 # pages. CURRENT:REVISION:AGE must be updated immediately before each release: #
 #                                                                              #
 #   * If the library source code has changed at all since the last             #
-#     update, then increment TH_LIB_REVISION (`C:R:A' becomes `C:r+1:A').      #
+#     update, then increment TH*_LIB_REVISION (`C:R:A' becomes `C:r+1:A').     #
 #                                                                              #
 #   * If any interfaces have been added, removed, or changed since the         #
-#     last update, increment TH_LIB_CURRENT, and set TH_LIB_REVISION to 0.     #
+#     last update, increment TH*_LIB_CURRENT, and set TH*_LIB_REVISION to 0.   #
 #                                                                              #
 #   * If any interfaces have been added since the last public release,         #
-#     then increment TH_LIB_AGE.                                               #
+#     then increment TH*_LIB_AGE.                                              #
 #                                                                              #
 #   * If any interfaces have been removed since the last public release,       #
-#     then set TH_LIB_AGE to 0.                                                #
+#     then set TH*_LIB_AGE to 0.                                               #
 #                                                                              #
 ################################################################################
-TH_LIB_CURRENT=4
+TH_LIB_CURRENT=5
 TH_LIB_REVISION=0
 TH_LIB_AGE=4
 AC_SUBST(TH_LIB_CURRENT)
 AC_SUBST(TH_LIB_REVISION)
 AC_SUBST(TH_LIB_AGE)
 
-THDEC_LIB_CURRENT=2
+THDEC_LIB_CURRENT=3
 THDEC_LIB_REVISION=5
 THDEC_LIB_AGE=1
 AC_SUBST(THDEC_LIB_CURRENT)
 AC_SUBST(THDEC_LIB_REVISION)
 AC_SUBST(THDEC_LIB_AGE)
 
-THENC_LIB_CURRENT=3
+THENC_LIB_CURRENT=4
 THENC_LIB_REVISION=0
 THENC_LIB_AGE=2
 AC_SUBST(THENC_LIB_CURRENT)
diff --git a/lib/internal.h b/lib/internal.h
index 2f71f77dd322f3e7052469ba7afb919417dbf32f..d599255f053d1d42961789ea79bd37c4de6a4fb2 100644
--- a/lib/internal.h
+++ b/lib/internal.h
@@ -71,7 +71,7 @@
 
 
 /*This library's version.*/
-# define OC_VENDOR_STRING "Xiph.Org libtheora 1.2.0alpha 20100924 (Ptalarbvorm)"
+# define OC_VENDOR_STRING "Xiph.Org libtheora 1.2.0beta1 20250316 (Ptalarbvorm)"
 
 /*Theora bitstream version.*/
 # define TH_VERSION_MAJOR (3)