From 67aca6db6c7806dfb73ce409f7329f92e7f2be9e Mon Sep 17 00:00:00 2001 From: "taeyoon0.lee" Date: Thu, 1 Feb 2018 23:01:34 +0900 Subject: [PATCH] Fixed a bug what video plugin doesn't show the video if only video file is changed Change-Id: I4d174569ae703967cac8750507d31bb08e6bf797 --- dali-extension/video-player/tizen-video-player.cpp | 30 ++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/dali-extension/video-player/tizen-video-player.cpp b/dali-extension/video-player/tizen-video-player.cpp index e544fe8..26396bd 100644 --- a/dali-extension/video-player/tizen-video-player.cpp +++ b/dali-extension/video-player/tizen-video-player.cpp @@ -241,20 +241,46 @@ void TizenVideoPlayer::SetUrl( const std::string& url ) { if( mUrl != url ) { + int error = PLAYER_ERROR_NONE; + mUrl = url; GetPlayerState( &mPlayerState ); if( mPlayerState != PLAYER_STATE_NONE && mPlayerState != PLAYER_STATE_IDLE ) { + + if( mNativeImageSourcePtr ) + { + error = player_unset_media_packet_video_frame_decoded_cb( mPlayer ); + LogPlayerError( error ); + } + Stop(); - int error = player_unprepare( mPlayer ); + + error = player_unprepare( mPlayer ); + LogPlayerError( error ); + + if( mNativeImageSourcePtr ) + { + error = player_set_media_packet_video_frame_decoded_cb( mPlayer, MediaPacketVideoDecodedCb, this ); + LogPlayerError( error ); + } + else + { + int width, height; + ecore_wl_screen_size_get( &width, &height ); + error = player_set_ecore_wl_display( mPlayer, PLAYER_DISPLAY_TYPE_OVERLAY, mEcoreWlWindow, 0, 0, width, height ); + LogPlayerError( error ); + } + + GetPlayerState( &mPlayerState ); LogPlayerError( error ); } if( mPlayerState == PLAYER_STATE_IDLE ) { - int error = player_set_uri( mPlayer, mUrl.c_str() ); + error = player_set_uri( mPlayer, mUrl.c_str() ); LogPlayerError( error ); error = player_prepare( mPlayer ); -- 2.7.4