[M120 Migration][HbbTV] MSE: Fix missing readyState update when buffering completes... 09/315609/4
authorJan Prusakowski <jan.prus@samsung.com>
Mon, 22 Jul 2024 06:04:00 +0000 (08:04 +0200)
committerBot Blink <blinkbot@samsung.com>
Tue, 3 Dec 2024 13:19:32 +0000 (13:19 +0000)
Ported commit:
https://review.tizen.org/gerrit/c/platform/framework/web/chromium-efl/+/314885

[Problem]
If buffering of data completes before player preparation is finished readyState is not updated.

[Solution]
When player preparation completes update buffering state so that readyState is updated.

[*KONA_ID]DF240614-01315 [PreCert][SCL][TV][24_OSU_TV(23_PontusM)][Italy][TivuSat][HbbTV(App)]RAIPLAY_DRM Playready content reproduction test : After end of Pre-roll, A/V of DRM content blocked with loading and black screen

Bug: https://jira-eu.sec.samsung.net/browse/VDWASM-1817
Signed-off-by: Robert Bycul <r.bycul@samsung.com>
Change-Id: I721152b923ccb7869684ad875522fa52abae8c37

tizen_src/chromium_impl/media/filters/media_player_esplusplayer.cc

index 314b313f861dae1c5743c313420ca1767c3658fc..6e904e20adffca7c1045ac1760fe68e43f38c7c4 100644 (file)
@@ -1290,6 +1290,13 @@ void MediaPlayerESPlusPlayer::OnPrepareComplete(bool result) {
                            << pending_seek_position_;
 
   PostPrepareComplete();
+
+  // Make sure readyState is updated in case buffering completed before
+  // prepare finishes.
+  OnBufferingStatusChanged(DemuxerStream::AUDIO,
+                           buffer_observer_->GetAudioStatus());
+  OnBufferingStatusChanged(DemuxerStream::VIDEO,
+                           buffer_observer_->GetVideoStatus());
 }
 
 void MediaPlayerESPlusPlayer::PostPrepareComplete() {