diff -pruN 0.42.0-2/debian/changelog 0.42.0-2ubuntu1/debian/changelog
--- 0.42.0-2/debian/changelog	2022-10-30 14:10:56.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/changelog	2022-11-16 20:35:33.000000000 +0000
@@ -1,3 +1,12 @@
+rygel (0.42.0-2ubuntu1) lunar; urgency=medium
+
+  * Merge from Debian unstable. Remaining change:
+    - Add debian/patches/revert_gst_depends.patch: revert upstream commit
+      'Use GES for time seeking during transcoding', gst-editing-services
+      depends on gstreamer codecs which can't be promoted to main
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Wed, 16 Nov 2022 15:35:33 -0500
+
 rygel (0.42.0-2) unstable; urgency=medium
 
   * Team upload.
@@ -18,6 +27,15 @@ rygel (0.42.0-1) experimental; urgency=m
 
  -- Andreas Henriksson <andreas@fatal.se>  Tue, 18 Oct 2022 20:23:15 +0200
 
+rygel (0.40.4-1ubuntu1) kinetic; urgency=medium
+
+  * Merge from Debian unstable. Remaining change:
+    - Add debian/patches/revert_gst_depends.patch: revert upstream commit
+      'Use GES for time seeking during transcoding', gst-editing-services
+      depends on gstreamer codecs which can't be promoted to main
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Tue, 07 Jun 2022 16:36:04 -0400
+
 rygel (0.40.4-1) unstable; urgency=medium
 
   * Team upload
@@ -25,6 +43,15 @@ rygel (0.40.4-1) unstable; urgency=mediu
 
  -- Nathan Pratta Teodosio <nathan.teodosio@canonical.com>  Mon, 06 Jun 2022 13:52:46 -0300
 
+rygel (0.40.3-1ubuntu1) jammy; urgency=medium
+
+  * Merge from Debian unstable. Remaining change:
+    - Add debian/patches/revert_gst_depends.patch: revert upstream commit
+      'Use GES for time seeking during transcoding', gst-editing-services
+      depends on gstreamer codecs which can't be promoted to main
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Sun, 16 Jan 2022 16:33:27 -0500
+
 rygel (0.40.3-1) unstable; urgency=medium
 
   * New upstream release
@@ -32,12 +59,30 @@ rygel (0.40.3-1) unstable; urgency=mediu
 
  -- Jeremy Bicha <jbicha@debian.org>  Sun, 16 Jan 2022 16:28:27 -0500
 
+rygel (0.40.2-1ubuntu1) jammy; urgency=low
+
+  * Merge from Debian unstable. Remaining changes:
+    - Add debian/patches/revert_gst_depends.patch: revert upstream commit
+      'Use GES for time seeking during transcoding', gst-editing-services
+      depends on gstreamer codecs which can't be promoted to main
+
+ -- Steve Langasek <steve.langasek@ubuntu.com>  Mon, 15 Nov 2021 08:59:37 -0800
+
 rygel (0.40.2-1) unstable; urgency=medium
 
   * New upstream release
 
  -- Jeremy Bicha <jbicha@debian.org>  Fri, 24 Sep 2021 18:11:22 -0400
 
+rygel (0.40.1-3ubuntu1) impish; urgency=medium
+
+  * Sync with Debian. Remaining change:
+    - Add debian/patches/revert_gst_depends.patch: revert upstream commit
+      'Use GES for time seeking during transcoding', gst-editing-services
+      depends on gstreamer codecs which can't be promoted to main
+
+ -- Jeremy Bicha <jbicha@debian.org>  Sun, 19 Sep 2021 07:25:14 -0400
+
 rygel (0.40.1-3) unstable; urgency=medium
 
   * Build-Depend on dh-sequence-gnome
@@ -47,12 +92,29 @@ rygel (0.40.1-3) unstable; urgency=mediu
 
  -- Jeremy Bicha <jbicha@debian.org>  Tue, 31 Aug 2021 20:45:51 -0400
 
+rygel (0.40.1-2ubuntu1) impish; urgency=medium
+
+  * debian/patches/revert_gst_depends.patch: revert upstream commit
+    'Use GES for time seeking during transcoding', gst-editing-services
+    depends on gstreamer codecs which can't be promoted
+
+ -- Iain Lane <iain.lane@canonical.com>  Thu, 22 Jul 2021 16:45:30 +0100
+
 rygel (0.40.1-2) experimental; urgency=medium
 
   * control, rules, rygel-tracker.install: Switch to tracker 3
 
  -- Iain Lane <laney@debian.org>  Thu, 24 Jun 2021 18:20:53 +0100
 
+rygel (0.40.1-1ubuntu1) impish; urgency=medium
+
+  * Resynchronize on Debian, remaining Ubuntu changes
+  * debian/patches/revert_gst_depends.patch: revert upstream commit
+    'Use GES for time seeking during transcoding', gst-editing-services
+    depends on gstreamer codecs which can't be promoted
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 15 Jun 2021 10:23:08 +0200
+
 rygel (0.40.1-1) experimental; urgency=medium
 
   * New upstream release
diff -pruN 0.42.0-2/debian/control 0.42.0-2ubuntu1/debian/control
--- 0.42.0-2/debian/control	2022-10-30 14:10:56.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/control	2022-11-16 20:35:33.000000000 +0000
@@ -5,8 +5,9 @@
 Source: rygel
 Section: net
 Priority: optional
-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
-Uploaders: Emilio Pozuelo Monfort <pochu@debian.org>, Iain Lane <laney@debian.org>, Laurent Bigonville <bigon@debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Uploaders: Emilio Pozuelo Monfort <pochu@debian.org>, Iain Lane <laney@debian.org>, Jeremy Bicha <jbicha@ubuntu.com>, Laurent Bigonville <bigon@debian.org>
 Build-Depends: debhelper-compat (= 13),
                dh-sequence-gnome,
                gstreamer1.0-plugins-base,
@@ -34,8 +35,10 @@ Build-Depends: debhelper-compat (= 13),
                valadoc (>= 0.2)
 Standards-Version: 4.5.1
 X-Ubuntu-Use-Langpack: yes
-Vcs-Browser: https://salsa.debian.org/gnome-team/rygel
-Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git
+XS-Debian-Vcs-Browser: https://salsa.debian.org/gnome-team/rygel
+XS-Debian-Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git
+Vcs-Browser: https://salsa.debian.org/gnome-team/rygel/-/tree/ubuntu/master
+Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git -b ubuntu/master
 Homepage: https://wiki.gnome.org/Projects/Rygel
 
 Package: rygel
diff -pruN 0.42.0-2/debian/control.in 0.42.0-2ubuntu1/debian/control.in
--- 0.42.0-2/debian/control.in	2022-10-30 14:09:09.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/control.in	2022-11-16 20:35:33.000000000 +0000
@@ -1,7 +1,8 @@
 Source: rygel
 Section: net
 Priority: optional
-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
 Uploaders: @GNOME_TEAM@
 Build-Depends: debhelper-compat (= 13),
                dh-sequence-gnome,
@@ -30,8 +31,10 @@ Build-Depends: debhelper-compat (= 13),
                valadoc (>= 0.2)
 Standards-Version: 4.5.1
 X-Ubuntu-Use-Langpack: yes
-Vcs-Browser: https://salsa.debian.org/gnome-team/rygel
-Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git
+XS-Debian-Vcs-Browser: https://salsa.debian.org/gnome-team/rygel
+XS-Debian-Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git
+Vcs-Browser: https://salsa.debian.org/gnome-team/rygel/-/tree/ubuntu/master
+Vcs-Git: https://salsa.debian.org/gnome-team/rygel.git -b ubuntu/master
 Homepage: https://wiki.gnome.org/Projects/Rygel
 
 Package: rygel
diff -pruN 0.42.0-2/debian/gbp.conf 0.42.0-2ubuntu1/debian/gbp.conf
--- 0.42.0-2/debian/gbp.conf	2022-10-30 14:09:09.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/gbp.conf	2022-11-16 20:35:33.000000000 +0000
@@ -1,6 +1,7 @@
 [DEFAULT]
 pristine-tar = True
-debian-branch = debian/master
+debian-branch = ubuntu/master
+debian-tag = ubuntu/%(version)s
 upstream-branch = upstream/latest
 
 [buildpackage]
diff -pruN 0.42.0-2/debian/patches/revert_gst_depends.patch 0.42.0-2ubuntu1/debian/patches/revert_gst_depends.patch
--- 0.42.0-2/debian/patches/revert_gst_depends.patch	1970-01-01 00:00:00.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/patches/revert_gst_depends.patch	2022-11-16 20:35:33.000000000 +0000
@@ -0,0 +1,142 @@
+From: Iain Lane <iain.lane@canonical.com>
+Date: Thu, 22 Jul 2021 16:45:30 +0100
+Subject: Revert "engine-gst: Use GES for time seeking during transcoding"
+
+This reverts commit 6ad5c0cd51a2dcece1da9b257d85e812301bf296.
+
+gst-editing-services depends on gstreamer codecs which can't be promoted
+to Ubuntu main
+---
+ meson.build                                        |  3 +-
+ .../gstreamer/rygel-gst-data-source.vala           |  8 ++--
+ .../gstreamer/rygel-gst-media-engine.vala          |  1 -
+ .../rygel-gst-transcoding-data-source.vala         | 46 ++++++----------------
+ 4 files changed, 16 insertions(+), 42 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index bd4f58f..28628a5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -98,7 +98,6 @@ gstreamer_base = dependency('gstreamer-base-1.0', version : '>= 1.0', disabler:
+ gstreamer_audio = dependency('gstreamer-audio-1.0', version : '>= 1.0', disabler: true, required: get_option('gstreamer'))
+ gstreamer_video = dependency('gstreamer-video-1.0', version : '>= 1.0', disabler: true, required: get_option('gstreamer'))
+ gstreamer_tag = dependency('gstreamer-tag-1.0', version : '>= 1.0', disabler: true, required: get_option('gstreamer'))
+-gstreamer_es = dependency('gst-editing-services-1.0', version : '>= 1.16', disabler: true, required : get_option('gstreamer'))
+ gupnp_dlna_gst = dependency('gupnp-dlna-gst-2.0', version: '>= 0.9.4', disabler: true, required: get_option('gstreamer'))
+ 
+ gdk_pixbuf = dependency('gdk-pixbuf-2.0')
+@@ -127,7 +126,7 @@ renderer_gst_deps = common_deps + [gstreamer, gstreamer_audio]
+ server_deps = common_deps + [gssdp, gupnp_av, soup, mediaart, gmodule, libxml]
+ db_deps = common_deps + [gupnp_av, gio, sqlite, unistring]
+ media_engine_gst_dep = [gee, gupnp_av, libxml, gio, gstreamer, gstreamer_pbu,
+-                        gstreamer_base, gupnp_dlna, math, gstreamer_es]
++                        gstreamer_base, gupnp_dlna, math]
+ ruih_deps = common_deps
+ rygel_deps = common_deps
+ 
+diff --git a/src/media-engines/gstreamer/rygel-gst-data-source.vala b/src/media-engines/gstreamer/rygel-gst-data-source.vala
+index ca17717..b16562d 100644
+--- a/src/media-engines/gstreamer/rygel-gst-data-source.vala
++++ b/src/media-engines/gstreamer/rygel-gst-data-source.vala
+@@ -36,10 +36,8 @@ internal class Rygel.GstDataSource : Rygel.DataSource, GLib.Object {
+     private HTTPSeekRequest seek = null;
+     private GstSink sink;
+     private uint bus_watch_id;
+-    string uri = null;
+ 
+     public GstDataSource (string uri, MediaResource ? resource) throws Error {
+-        this.uri = uri;
+         this.res = resource;
+         this.src = GstUtils.create_source_for_uri (uri);
+         if (this.src == null) {
+@@ -63,8 +61,8 @@ internal class Rygel.GstDataSource : Rygel.DataSource, GLib.Object {
+         this.src = element;
+     }
+ 
+-    public string get_uri () {
+-        return this.uri;
++    public HTTPSeekRequest? get_seek_request () {
++        return this.seek;
+     }
+ 
+     public virtual Gee.List<HTTPResponseElement>? preroll
+@@ -286,7 +284,7 @@ internal class Rygel.GstDataSource : Rygel.DataSource, GLib.Object {
+         return ret;
+     }
+ 
+-    public virtual bool perform_seek () {
++    private bool perform_seek () {
+         var stop_type = Gst.SeekType.NONE;
+         Format format;
+         var flags = SeekFlags.FLUSH;
+diff --git a/src/media-engines/gstreamer/rygel-gst-media-engine.vala b/src/media-engines/gstreamer/rygel-gst-media-engine.vala
+index a42d779..c120748 100644
+--- a/src/media-engines/gstreamer/rygel-gst-media-engine.vala
++++ b/src/media-engines/gstreamer/rygel-gst-media-engine.vala
+@@ -35,7 +35,6 @@ public class Rygel.GstMediaEngine : Rygel.MediaEngine {
+         unowned string[] args = null;
+ 
+         Gst.init (ref args);
+-        GES.init ();
+         Gst.Preset.set_app_dir (BuildConfig.PRESET_DIR);
+ 
+         /* Get the possible DLNA profiles
+diff --git a/src/media-engines/gstreamer/rygel-gst-transcoding-data-source.vala b/src/media-engines/gstreamer/rygel-gst-transcoding-data-source.vala
+index 082ea8f..b96a9c0 100644
+--- a/src/media-engines/gstreamer/rygel-gst-transcoding-data-source.vala
++++ b/src/media-engines/gstreamer/rygel-gst-transcoding-data-source.vala
+@@ -43,42 +43,20 @@ internal class Rygel.TranscodingGstDataSource : Rygel.GstDataSource {
+                                          throws Error {
+         var bin = (Gst.Bin) this.src;
+ 
+-        if (seek_request == null || seek_request is HTTPByteSeekRequest) {
+-            this.decoder = GstUtils.create_element (DECODE_BIN, DECODE_BIN);
+-            debug ("%s using the following encoding profile:",
+-                    this.get_class ().get_type ().name ());
+-                    GstUtils.dump_encoding_profile (encoder.profile);
+-
+-            bin.add_many (orig_source.src, decoder);
+-            orig_source.src.link (decoder);
+-            orig_source.src.sync_state_with_parent ();
+-            decoder.sync_state_with_parent ();
+-
+-            decoder.autoplug_continue.connect (this.on_decode_autoplug_continue);
+-            decoder.pad_added.connect (this.on_decoder_pad_added);
+-            decoder.no_more_pads.connect (this.on_no_more_pads);
+-        } else {
+-            var time_seek = (HTTPTimeSeekRequest) seek_request;
+-
+-            var timeline = new GES.Timeline.audio_video ();
+-            var layer = timeline.append_layer ();
+-            var clip = new GES.UriClip (this.orig_source.get_uri ());
+-            clip.in_point = time_seek.start_time * Gst.USECOND;
+-            clip.duration = time_seek.range_duration * Gst.USECOND;
+-            layer.add_clip (clip);
+-            timeline.commit ();
+-            var gessrc = GstUtils.create_element ("gessrc", "gessrc");
+-            bin.add (gessrc);
+-            gessrc.pad_added.connect (this.on_decoder_pad_added);
+-            gessrc.no_more_pads.connect (this.on_no_more_pads);
+-            gessrc.set ("timeline", timeline, null);
+-        }
++        this.decoder = GstUtils.create_element (DECODE_BIN, DECODE_BIN);
++        debug ("%s using the following encoding profile:",
++                this.get_class ().get_type ().name ());
++                GstUtils.dump_encoding_profile (encoder.profile);
+ 
+-        return base.preroll (seek_request, playspeed_request);
+-    }
++        bin.add_many (orig_source.src, decoder);
+ 
+-    public override bool perform_seek () {
+-        return true;
++        orig_source.src.link (decoder);
++
++        decoder.autoplug_continue.connect (this.on_decode_autoplug_continue);
++        decoder.pad_added.connect (this.on_decoder_pad_added);
++        decoder.no_more_pads.connect (this.on_no_more_pads);
++
++        return base.preroll (seek_request, playspeed_request);
+     }
+ 
+     private Gst.Pad? get_compatible_sink_pad (Pad pad, Caps caps) {
diff -pruN 0.42.0-2/debian/patches/series 0.42.0-2ubuntu1/debian/patches/series
--- 0.42.0-2/debian/patches/series	2022-10-30 14:09:09.000000000 +0000
+++ 0.42.0-2ubuntu1/debian/patches/series	2022-11-16 20:35:33.000000000 +0000
@@ -0,0 +1 @@
+revert_gst_depends.patch
