From b86aaeb0fc9495e6635e8571877aa05e8514cabf Mon Sep 17 00:00:00 2001 From: kimhyungrok Date: Wed, 12 Jun 2024 09:59:11 +0900 Subject: [PATCH] fix media player seek/position handling It remove the multiplication by 1000 when calling media player seek. It change to send update position callback even if the media is paused. Signed-off-by: kimhyungrok --- src/core/media_player.cc | 7 ++++++- src/core/media_player.hh | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/core/media_player.cc b/src/core/media_player.cc index d6d1d43e..bb02faa6 100644 --- a/src/core/media_player.cc +++ b/src/core/media_player.cc @@ -170,7 +170,7 @@ MediaPlayer::MediaPlayer(int volume) d->pos_timer = new NUGUTimer(); d->pos_timer->setInterval(POSITION_POLLING_TIMEOUT_500MS); d->pos_timer->setCallback([&]() { - if (!isPlaying()) + if (!isActive()) return; updatePosition(); @@ -495,4 +495,9 @@ NuguPlayer* MediaPlayer::getNuguPlayer() return d->player; } +bool MediaPlayer::isActive() +{ + return isPlaying() || d->state == MediaPlayerState::PAUSED; +} + } // NuguCore diff --git a/src/core/media_player.hh b/src/core/media_player.hh index 6a39c94e..b9882e89 100644 --- a/src/core/media_player.hh +++ b/src/core/media_player.hh @@ -75,6 +75,7 @@ public: private: void setPositionWithSeek(int position); + bool isActive(); MediaPlayerPrivate* d; };