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.
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) {
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) {