stash/ui/v2.5/src/components/ScenePlayer/util.ts
GammelSami cf5d60f511
Added loop feature for markers + AB prefill (#6510)
* add loop feature for markers + AB prefill
* chore(ui): type ab loop plugin access
2026-02-04 10:18:39 +11:00

27 lines
678 B
TypeScript

import videojs, { VideoJsPlayer } from "video.js";
export const VIDEO_PLAYER_ID = "VideoJsPlayer";
export const getPlayer = () => videojs.getPlayer(VIDEO_PLAYER_ID);
export const getPlayerPosition = () => getPlayer()?.currentTime();
export type AbLoopOptions = {
start: number;
end: number | false;
enabled?: boolean;
};
export type AbLoopPluginApi = {
getOptions: () => AbLoopOptions;
setOptions: (options: AbLoopOptions) => void;
};
export const getAbLoopPlugin = () => {
const player = getPlayer();
if (!player) return null;
const { abLoopPlugin } = player as VideoJsPlayer & {
abLoopPlugin?: AbLoopPluginApi;
};
return abLoopPlugin ?? null;
};