[M120 Migration][MM] Handle live stream duration and currenttime
[platform/framework/web/chromium-efl.git] / media / base / pipeline_impl.cc
index 747ff15..e707a0d 100644 (file)
@@ -199,6 +199,7 @@ class PipelineImpl::RendererWrapper final : public DemuxerHost,
   void OnSeekableTimeChange(base::TimeDelta min_time,
                             base::TimeDelta max_time,
                             bool is_live) final;
+  void OnLivePlaybackComplete() final;
 #endif
 
   // Common handlers for notifications from renderers and demuxer.
@@ -1141,6 +1142,12 @@ void PipelineImpl::RendererWrapper::OnSeekableTimeChange(
       FROM_HERE, base::BindOnce(&PipelineImpl::OnSeekableTimeChange,
                                 weak_pipeline_, min_time, max_time, is_live));
 }
+
+void PipelineImpl::RendererWrapper::OnLivePlaybackComplete() {
+  main_task_runner_->PostTask(
+      FROM_HERE,
+      base::BindOnce(&PipelineImpl::OnLivePlaybackComplete, weak_pipeline_));
+}
 #endif
 
 void PipelineImpl::RendererWrapper::OnPipelineError(PipelineStatus error) {
@@ -2043,6 +2050,11 @@ void PipelineImpl::OnSeekableTimeChange(base::TimeDelta min_time,
   DVLOG(3) << __func__;
   client_->OnSeekableTimeChange(min_time, max_time, is_live);
 }
+
+void PipelineImpl::OnLivePlaybackComplete() {
+  LOG(INFO) << "(" << static_cast<void*>(this) << ") " << __func__;
+  client_->OnLivePlaybackComplete();
+}
 #endif
 
 void PipelineImpl::OnSeekDone(bool is_suspended) {