MCPcopy
hub / github.com/CapSoftware/Cap / mapTimelineSourceTimeToDisplayTime

Function mapTimelineSourceTimeToDisplayTime

apps/web/lib/video-edits.ts:463–481  ·  view source on GitHub ↗
(
	state: VideoTimelineState,
	sourceTime: number,
)

Source from the content-addressed store, hash-verified

461}
462
463export function mapTimelineSourceTimeToDisplayTime(
464 state: VideoTimelineState,
465 sourceTime: number,
466) {
467 const duration = normalizeDuration(state.duration);
468 if (duration <= 0 || !isFiniteNumber(sourceTime)) return 0;
469
470 const time = clampEditTime(sourceTime, 0, duration);
471 let deletedBefore = 0;
472 for (const range of getDisplayDeletedRanges({ ...state, duration })) {
473 if (time <= range.start + EPSILON) break;
474 if (time < range.end - EPSILON) {
475 return roundEditTime(range.start - deletedBefore);
476 }
477 deletedBefore += range.end - range.start;
478 }
479
480 return roundEditTime(Math.max(0, time - deletedBefore));
481}
482
483export function mapTimelineDisplayTimeToSourceTime(
484 state: VideoTimelineState,

Callers 3

EditVideoClientFunction · 0.90

Calls 5

normalizeDurationFunction · 0.85
isFiniteNumberFunction · 0.85
clampEditTimeFunction · 0.85
getDisplayDeletedRangesFunction · 0.85
roundEditTimeFunction · 0.85

Tested by

no test coverage detected