MCPcopy
hub / github.com/midrender/revideo / getGlobalFirstAndLastFrame

Function getGlobalFirstAndLastFrame

packages/renderer/client/render.ts:84–106  ·  view source on GitHub ↗

* Calculate the first and last "global" frame, i.e. frame independent of worker

(
  project: Project,
  renderer: Renderer,
  startSecondFromUser: number,
  endSecondFromUser: number,
)

Source from the content-addressed store, hash-verified

82 * Calculate the first and last "global" frame, i.e. frame independent of worker
83 */
84async function getGlobalFirstAndLastFrame(
85 project: Project,
86 renderer: Renderer,
87 startSecondFromUser: number,
88 endSecondFromUser: number,
89) {
90 const firstGlobalFrame = renderer.timeToFrame(startSecondFromUser);
91 let lastGlobalFrame: number;
92
93 // If end value is provided by user, lastFrame can be obtained.
94 if (isFinite(endSecondFromUser)) {
95 lastGlobalFrame = renderer.timeToFrame(endSecondFromUser);
96 } else {
97 // Otherwise, endSecondFromUser is infinity, so lastGlobalFrame is the duration of the video.
98 const settings = {
99 ...getFullRenderingSettings(project),
100 name: project.name,
101 };
102 lastGlobalFrame = await renderer.getNumberOfFrames(settings);
103 }
104
105 return {firstGlobalFrame, lastGlobalFrame};
106}
107
108async function getWorkerFirstAndLastFrame(
109 firstGlobalFrame: number,

Callers 1

renderFunction · 0.85

Calls 3

getFullRenderingSettingsFunction · 0.90
timeToFrameMethod · 0.80
getNumberOfFramesMethod · 0.80

Tested by

no test coverage detected