summaryrefslogtreecommitdiffstats
path: root/src/multimedia
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2021-09-15 19:45:50 +0300
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2021-09-17 10:06:51 +0300
commitfb9a5bfd0b8ea7551ac7eb01a5ed6ffcb1c86abb (patch)
treea934921616350002a600f74b6b942eb1a14c7f23 /src/multimedia
parenta3c15ba4984f2e7f903e48cfd273af2f3861f083 (diff)
Implement playback progress watcher
Android's MediaPlayer doesn't seem to provide a listener for continuously reporting the current playback position, thus such a mechanism need to be implemented by us, otherwise progress is not being reported back to QMediaPlayer. This also overrides QPlatformMediaPlayer::isSeekable(). Fixes: QTBUG-96079 Pick-to: 6.2 6.2.0 Change-Id: I47ae0e2b9fe18b650fbbd0fb0266dc8a50dc3c55 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Samuel Mira <samuel.mira@qt.io>
Diffstat (limited to 'src/multimedia')
-rw-r--r--src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp5
-rw-r--r--src/multimedia/platform/android/mediaplayer/qandroidmediaplayer_p.h2
2 files changed, 7 insertions, 0 deletions
diff --git a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
index 373aa41ee..49ed8fbec 100644
--- a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
+++ b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer.cpp
@@ -434,6 +434,11 @@ void QAndroidMediaPlayer::stop()
mMediaPlayer->stop();
}
+bool QAndroidMediaPlayer::isSeekable() const
+{
+ return true;
+}
+
void QAndroidMediaPlayer::onInfo(qint32 what, qint32 extra)
{
StateChangeNotifier notifier(this);
diff --git a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer_p.h b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer_p.h
index f48f682d8..b8e187a08 100644
--- a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer_p.h
+++ b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayer_p.h
@@ -96,6 +96,8 @@ public:
void pause() override;
void stop() override;
+ bool isSeekable() const override;
+
int trackCount(TrackType trackType) override;
QMediaMetaData trackMetaData(TrackType trackType, int streamNumber) override;
int activeTrack(TrackType trackType) override;