diff --git a/girs/GstMse-1.0.gir b/girs/GstMse-1.0.gir
index 78211aa927..ae152939ca 100644
--- a/girs/GstMse-1.0.gir
+++ b/girs/GstMse-1.0.gir
@@ -903,7 +903,7 @@ ignored.
- the append window end
+ the append window start
diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/mse/gstsourcebuffer.c b/subprojects/gst-plugins-bad/gst-libs/gst/mse/gstsourcebuffer.c
index 7695bad373..3873541124 100644
--- a/subprojects/gst-plugins-bad/gst-libs/gst/mse/gstsourcebuffer.c
+++ b/subprojects/gst-plugins-bad/gst-libs/gst/mse/gstsourcebuffer.c
@@ -1082,7 +1082,7 @@ gst_source_buffer_get_append_window_start (GstSourceBuffer * self)
/**
* gst_source_buffer_set_append_window_start:
* @self: #GstSourceBuffer instance
- * @start: the append window end
+ * @start: the append window start
* @error: (out) (optional) (nullable) (transfer full): the resulting error or `NULL`
*
* Modifies the current append window start of @self. If successful, samples
@@ -1115,7 +1115,7 @@ gst_source_buffer_set_append_window_start (GstSourceBuffer * self,
return FALSE;
}
- if (start < 0 || start <= self->append_window_end) {
+ if (!GST_CLOCK_TIME_IS_VALID (start) || start <= self->append_window_end) {
g_set_error (error,
GST_MEDIA_SOURCE_ERROR, GST_MEDIA_SOURCE_ERROR_TYPE,
"append window start must be between zero and append window end");