diff --git a/services/engine/histreamer/player/hiplayer_impl.cpp b/services/engine/histreamer/player/hiplayer_impl.cpp index 1397d9ce7f7b23f917bdecdc13945b19d8a108a1..84e15c171897675272a0970f26b81da5f511985f 100644 --- a/services/engine/histreamer/player/hiplayer_impl.cpp +++ b/services/engine/histreamer/player/hiplayer_impl.cpp @@ -279,6 +279,10 @@ int32_t HiPlayerImpl::Seek(int32_t mSeconds, PlayerSeekMode mode) audioDecoder_->Start(); } else if (pipelineStates_ == PlayerStates::PLAYER_PLAYBACK_COMPLETE) { pipeline_->Pause(); + } else if (pipelineStates_ == PlayerStates::PLAYER_PAUSED) { + audioDecoder_->Flush(); + audioDecoder_->Start(); + audioSink_->Flush(); } MEDIA_LOG_I("Do seek ..."); int64_t realSeekTime = seekPos;