From 905c6427f322ced67e64540de556f6027d7953d5 Mon Sep 17 00:00:00 2001 From: jinweiliu Date: Wed, 22 Mar 2023 10:28:37 +0000 Subject: [PATCH] fix video Signed-off-by: jinweiliu Change-Id: I74ac118f2b92f37832266fea41fa59978a2a5941 --- frameworks/bridge/declarative_frontend/jsview/js_video.cpp | 2 +- frameworks/core/components/video/video_element.cpp | 4 ++++ .../core/components_ng/render/adapter/rosen_media_player.cpp | 5 ++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/frameworks/bridge/declarative_frontend/jsview/js_video.cpp b/frameworks/bridge/declarative_frontend/jsview/js_video.cpp index 996d93cc2d8..19ec1cc35c5 100644 --- a/frameworks/bridge/declarative_frontend/jsview/js_video.cpp +++ b/frameworks/bridge/declarative_frontend/jsview/js_video.cpp @@ -74,7 +74,7 @@ void JSVideo::Create(const JSCallbackInfo& info) // Parse the rate, if it is invalid, set it as 1.0. double currentProgressRate = 1.0; - if (ParseJsDouble(currentProgressRateValue, currentProgressRate)) { + if (!ParseJsDouble(currentProgressRateValue, currentProgressRate)) { LOGW("Video parse currentProgressRate failed."); } VideoModel::GetInstance()->SetProgressRate(currentProgressRate); diff --git a/frameworks/core/components/video/video_element.cpp b/frameworks/core/components/video/video_element.cpp index 61469695878..56f3514bc78 100644 --- a/frameworks/core/components/video/video_element.cpp +++ b/frameworks/core/components/video/video_element.cpp @@ -502,6 +502,10 @@ void VideoElement::SetMediaSource(std::string& filePath, int32_t& fd) return; } } else { + // relative path + if (StringUtils::StartWith(filePath, "/")) { + filePath = filePath.substr(1); + } RelativePathPlay(filePath); } } diff --git a/frameworks/core/components_ng/render/adapter/rosen_media_player.cpp b/frameworks/core/components_ng/render/adapter/rosen_media_player.cpp index 004da88e6ca..59794543536 100644 --- a/frameworks/core/components_ng/render/adapter/rosen_media_player.cpp +++ b/frameworks/core/components_ng/render/adapter/rosen_media_player.cpp @@ -272,6 +272,9 @@ bool RosenMediaPlayer::SetMediaSource(std::string& filePath, int32_t& fd) } } else { // relative path + if (StringUtils::StartWith(filePath, "/")) { + filePath = filePath.substr(1); + } RelativePathPlay(filePath); } return true; @@ -356,4 +359,4 @@ int32_t RosenMediaPlayer::Seek(int32_t mSeconds, OHOS::Ace::SeekMode mode) return mediaPlayer_->Seek(mSeconds, ConvertToMediaSeekMode(mode)); } -} // namespace OHOS::Ace::NG \ No newline at end of file +} // namespace OHOS::Ace::NG -- Gitee