diff --git a/girs/GstPlay-1.0.gir b/girs/GstPlay-1.0.gir
index d23dfd923e..0f1dabaf68 100644
--- a/girs/GstPlay-1.0.gir
+++ b/girs/GstPlay-1.0.gir
@@ -345,7 +345,10 @@ of its queued messages, thus breaking any possible reference cycle.
Video is going to be rendered by @video_renderer, or if %NULL is provided
no special video set up will be done and some default handling will be
-performed.
+performed.
+
+This also initializes GStreamer via `gst_init()` on the first call if this
+didn't happen before.
a new #GstPlay instance
diff --git a/girs/GstPlayer-1.0.gir b/girs/GstPlayer-1.0.gir
index 6e153adef2..92efe7e756 100644
--- a/girs/GstPlayer-1.0.gir
+++ b/girs/GstPlayer-1.0.gir
@@ -337,7 +337,10 @@ passed. See gst_player_g_main_context_signal_dispatcher_new().
Video is going to be rendered by @video_renderer, or if %NULL is provided
no special video set up will be done and some default handling will be
-performed.
+performed.
+
+This also initializes GStreamer via `gst_init()` on the first call if this
+didn't happen before.
a new #GstPlayer instance
diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/play/gstplay.c b/subprojects/gst-plugins-bad/gst-libs/gst/play/gstplay.c
index da5546c449..2527aab7cb 100644
--- a/subprojects/gst-plugins-bad/gst-libs/gst/play/gstplay.c
+++ b/subprojects/gst-plugins-bad/gst-libs/gst/play/gstplay.c
@@ -2760,6 +2760,9 @@ gst_play_init_once (G_GNUC_UNUSED gpointer user_data)
* no special video set up will be done and some default handling will be
* performed.
*
+ * This also initializes GStreamer via `gst_init()` on the first call if this
+ * didn't happen before.
+ *
* Returns: (transfer full): a new #GstPlay instance
* Since: 1.20
*/
diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/player/gstplayer.c b/subprojects/gst-plugins-bad/gst-libs/gst/player/gstplayer.c
index b9f93f8367..ad78731ae4 100644
--- a/subprojects/gst-plugins-bad/gst-libs/gst/player/gstplayer.c
+++ b/subprojects/gst-plugins-bad/gst-libs/gst/player/gstplayer.c
@@ -625,6 +625,9 @@ gst_player_constructed (GObject * object)
* no special video set up will be done and some default handling will be
* performed.
*
+ * This also initializes GStreamer via `gst_init()` on the first call if this
+ * didn't happen before.
+ *
* Returns: (transfer full): a new #GstPlayer instance
*/
GstPlayer *