MediaPlayer state has been chagned to pause when player is recieved EOS to avoid...
authorkeonho07.kim <keonho07.kim@samsung.com>
Tue, 26 Mar 2013 18:20:37 +0000 (03:20 +0900)
committerkeonho07.kim <keonho07.kim@samsung.com>
Wed, 27 Mar 2013 05:28:16 +0000 (14:28 +0900)
[Title] MediaPlayer state has been chagned to pause when player is recieved EOS to avoid playback bugs.
[Problem] N_SE-28870, N-SE-29806
[Cause] Duration value becomes infinity because playbin state is changed to NULL when player is recieved EOS.
[Solution] Makes player's state to pause when player is recieved EOS.

Change-Id: I1ab5379465d7e5e255ef373e7e7c42197223f1e8

Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp

index 4a036fb..6e0f930 100755 (executable)
@@ -1703,10 +1703,12 @@ void MediaPlayerPrivateGStreamer::didEnd()
 
     if (!m_player->mediaPlayerClient()->mediaPlayerIsLooping()) {
         m_paused = true;
-        gst_element_set_state(m_playBin.get(), GST_STATE_NULL);
 #if ENABLE(TIZEN_GSTREAMER_AUDIO)
+        gst_element_set_state(m_playBin.get(), GST_STATE_PAUSED);
         if (m_audioSessionManager)
-            m_audioSessionManager->setSoundState(ASM_STATE_STOP);
+            m_audioSessionManager->setSoundState(ASM_STATE_PAUSE);
+#else
+        gst_element_set_state(m_playBin.get(), GST_STATE_NULL);
 #endif
 
 #if ENABLE(TIZEN_GSTREAMER_VIDEO)