diff --git a/packages/compositor/rust/opened_stream.rs b/packages/compositor/rust/opened_stream.rs index c4022b5e2b..a4695d3180 100644 --- a/packages/compositor/rust/opened_stream.rs +++ b/packages/compositor/rust/opened_stream.rs @@ -240,7 +240,7 @@ impl OpenedStream { one_frame_in_time_base, match freshly_seeked || self.last_position.is_none() { true => None, - false => Some(self.last_position.unwrap()), + false => Some(self.last_position.unwrap_or(0)), }, tone_mapped, frame_cache_manager, @@ -356,7 +356,7 @@ impl OpenedStream { let previous_pts = match freshly_seeked || self.last_position.is_none() { true => None, - false => Some(self.last_position.unwrap()), + false => Some(self.last_position.unwrap_or(0)), }; let item = FrameCacheItem { resolved_pts: unfiltered.pts().expect("expected pts"), diff --git a/packages/compositor/rust/opened_video_manager.rs b/packages/compositor/rust/opened_video_manager.rs index ba04471ca9..0f48c291e2 100644 --- a/packages/compositor/rust/opened_video_manager.rs +++ b/packages/compositor/rust/opened_video_manager.rs @@ -147,7 +147,7 @@ impl OpenedVideoManager { stream_index, OpenStream { src: video.src.clone(), - last_time: video.last_position.unwrap() as f64 + last_time: video.last_position.unwrap_or(0) as f64 / (video.time_base.1 as f64 / video.time_base.0 as f64), id: stream_index, transparent: video.transparent,