summaryrefslogtreecommitdiff
path: root/apps/web/src/lib/timeline/bookmarks.ts
diff options
context:
space:
mode:
authorMaze Winther <mazewinther@gmail.com>2026-04-07 01:09:13 +0200
committerMaze Winther <mazewinther@gmail.com>2026-04-07 01:09:13 +0200
commite4b67094e757917588fb624a30aa046667403add (patch)
tree55452692eac69a5a63b58f2a5cdb701dd7023d68 /apps/web/src/lib/timeline/bookmarks.ts
parent79df73643185c02493364a077402726d1fa7b9ec (diff)
downloadopencut-e4b67094e757917588fb624a30aa046667403add.tar.gz
refactor: split effects and masks into dedicated rust crates, introduce MediaTime and FrameRate
Diffstat (limited to 'apps/web/src/lib/timeline/bookmarks.ts')
-rw-r--r--apps/web/src/lib/timeline/bookmarks.ts14
1 files changed, 5 insertions, 9 deletions
diff --git a/apps/web/src/lib/timeline/bookmarks.ts b/apps/web/src/lib/timeline/bookmarks.ts
index 70d1b5ee..1fbf17bf 100644
--- a/apps/web/src/lib/timeline/bookmarks.ts
+++ b/apps/web/src/lib/timeline/bookmarks.ts
@@ -1,8 +1,7 @@
import type { Bookmark } from "@/lib/timeline";
+import type { FrameRate } from "opencut-wasm";
import { roundToFrame } from "opencut-wasm";
-export const BOOKMARK_TIME_EPSILON = 0.001;
-
function bookmarkTimeEqual({
bookmarkTime,
frameTime,
@@ -10,7 +9,7 @@ function bookmarkTimeEqual({
bookmarkTime: number;
frameTime: number;
}): boolean {
- return Math.abs(bookmarkTime - frameTime) < BOOKMARK_TIME_EPSILON;
+ return bookmarkTime === frameTime;
}
export function findBookmarkIndex({
@@ -112,9 +111,9 @@ export function getFrameTime({
fps,
}: {
time: number;
- fps: number;
+ fps: FrameRate;
}): number {
- return roundToFrame({ time, fps });
+ return roundToFrame({ time, rate: fps }) ?? time;
}
export function getBookmarkAtTime({
@@ -141,9 +140,6 @@ export function getBookmarksActiveAtTime({
bookmark.duration != null && bookmark.duration > 0
? start + bookmark.duration
: start;
- return (
- time >= start - BOOKMARK_TIME_EPSILON &&
- time <= end + BOOKMARK_TIME_EPSILON
- );
+ return time >= start && time <= end;
});
}