diff --git a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
index cf2ec626276d20d58676517ba244e304a9950267..cc7aef3676b7aaa5478c9fca0b5874915c4873f6 100644
--- a/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
+++ b/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp
@@ -160,7 +160,8 @@ QGstreamerPlayerSession::QGstreamerPlayerSession(QObject *parent)
         }
         g_object_set(G_OBJECT(m_playbin), "flags", flags, NULL);
 
-        GstElement *audioSink = gst_element_factory_make("autoaudiosink", "audiosink");
+        const QByteArray envAudioSink = qgetenv("QT_GSTREAMER_PLAYBIN_AUDIOSINK");
+        GstElement *audioSink = gst_element_factory_make(envAudioSink.isEmpty() ? "autoaudiosink" : envAudioSink, "audiosink");
         if (audioSink) {
             if (usePlaybinVolume()) {
                 m_audioSink = audioSink;