@amaster.ai/pi-video-gen 0.1.30 → 0.1.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -140,6 +140,8 @@ Choose the source for each shot: reuse existing video, call `video_generate` dir
140
140
 
141
141
  `video_compose` accepts `<jobDir>/remotion-input.json` with absolute `projectDir`, `compositionId`, optional `entryPoint`, `assets`, `inputProps` and `browserExecutable`. The project must be in a trusted working directory and have local Remotion dependencies plus Chrome/Chromium installed. Original `public/` files are copied with their relative paths; injected assets are available through `inputProps.videoGenAssets` and `staticFile()`. `video_render` uses the same contract under `assembly.type: "remotion"`; it preflights the project with placeholders before any model submit. The plugin does not install Remotion or download a browser during a render.
142
142
 
143
+ Remotion specs also accept `qcTimesSec`, up to 32 non-negative timestamps in seconds strictly within the composition duration. Use these to review key handoffs before, during and after the movement. New renders extract first/middle/last review frames plus these times from the actual MP4 and return `qcFrames` and `qcReportPath`. For batch assembly, the returned frame list also includes the Remotion review frames; the batch QC report links their SHA-bound report under `remotion`. Sampling uses the video-track duration so an audio tail cannot push a frame past the picture. Frame/report hashes are verified on resume; missing or changed evidence is rejected. Older jobs without QC hashes resume without recorded QC. See [motion authoring](skills/video-gen/references/motion-authoring.md) and the editable [continuous motion demo](skills/video-gen/examples/continuous-demo/README.md). Both build on the existing Remotion path without another skill or runtime.
144
+
143
145
  For Remotion batch rendering, the composition must expose `props.videoGenShotTimesSec` with one in-film sample time (seconds) per shot ID. It may be set through `defaultProps` or computed by `calculateMetadata` from the actual assets. The placeholder preflight checks that every shot has a valid time before paid submission; the final QC uses the values returned by the rendered composition. Default concat and FFmpeg timeline QC use actual clip or resolved segment durations instead.
144
146
 
145
147
  Keep Remotion source files and imports outside the video output directory; that directory is excluded from the frozen project fingerprint so other jobs cannot invalidate paid work. The entry point is rejected if it is inside the output directory, and the output directory cannot be inside the project's `public/` tree.
@@ -168,7 +170,7 @@ Crash or cancel mid-render? Rerun the same spec path — generated-shot handles
168
170
 
169
171
  All four tools declare `outputSchema` and return bounded `structuredContent`; codemode receives the object directly. Generation returns `jobId`, `state`, `videoPath`, and available `taskId`/`bytes`; composition/rendering return `jobId`, `state`, `finalVideoPath`, and their existing composition metadata. `video_capabilities` exposes `activeId`, `activeResolved`, `provider`, `keyReady`, `capabilities`, `models`, and `totalModels`, without provider credentials or URLs.
170
172
 
171
- `qcStatus: "recorded"` means the result includes existing QC frame/report paths. It does not mean a human or visual inspection passed. `qcStatus: "not_performed"` covers single clips, concat, Remotion composition, or historical jobs without recorded QC. Available `qcFrames`, `qcReportPath`, `subtitlePath`, and editable project paths are returned directly. Failures return `{ error, truncated }` with `isError: true` and available persisted `jobId`/`state`/`taskId` or render-shot states. An ambiguous or interrupted paid job must be inspected/resumed rather than submitted again.
173
+ `qcStatus: "recorded"` means the result includes existing QC frame/report paths. It does not mean a human or visual inspection passed. `qcStatus: "not_performed"` covers single clips, concat, or historical jobs without recorded QC. Available `qcFrames`, `qcReportPath`, `subtitlePath`, and editable project paths are returned directly. Failures return `{ error, truncated }` with `isError: true` and available persisted `jobId`/`state`/`taskId` or render-shot states. An ambiguous or interrupted paid job must be inspected/resumed rather than submitted again.
172
174
 
173
175
  ```javascript
174
176
  const image = await tools.image_generate({ prompt: "A blue product illustration" });
@@ -185,3 +187,7 @@ text({ path: video.finalVideoPath, qcStatus: video.qcStatus, frames: video.qcFra
185
187
  The example's image call requires the normal image-provider configuration and authorization. `tests/structured-workflows.test.ts` exercises the same chain in real Pi codemode (`on` and `only`) with a fixed image-provider fixture and real local FFmpeg rendering, without paid/network generation.
186
188
 
187
189
  Structured output is limited to 12 KiB and top-level lists to 100 complete records. `truncated: true` indicates omitted records; `total` retains the original count where available. Oversized records with an `id` retain that complete ID and small scalar metadata, omit large fields, and carry `truncated: true` both on the record and envelope; callers must check that flag before reusing content for an update. Oversized results without a record ID return a typed output-limit error instead of clipped paths or content. A write may already have completed when that happens: inspect saved state before retrying. Readable text and renderer details are independently bounded.
190
+
191
+ ## References
192
+
193
+ - [huashu-motion skill](https://github.com/alchaincyf/huashu-motion/blob/52467f99c602b76ba86d511d37acdfe93fa1e16e/skills/huashu-motion/SKILL.md): reference for creative direction, motion rhythm, music and export review. pi-video-gen uses its own tools and composition workflows.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,iCAAiC,CAAC;AAwSzC,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CA4rClE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,iCAAiC,CAAC;AAwSzC,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CA6rClE"}
package/dist/index.js CHANGED
@@ -608,7 +608,7 @@ export default function piVideoGenExtension(pi) {
608
608
  kind: 'remotion',
609
609
  finalVideoPath: result.finalVideoPath,
610
610
  });
611
- return okResult(`Remotion video ready: ${result.finalVideoPath}. Editable project: ${result.projectDir}. Job: ${result.jobId}.`, result);
611
+ return okResult(`Remotion video ready: ${result.finalVideoPath}. Editable project: ${result.projectDir}. QC frames: ${result.qcFrames.join(', ') || 'not recorded'}. Job: ${result.jobId}.`, { ...result, qcStatus: result.qcFrames.length ? 'recorded' : 'not_performed' });
612
612
  }
613
613
  // C0: lossless concat of existing clips.
614
614
  const result = await runCompose({
@@ -747,9 +747,10 @@ export default function piVideoGenExtension(pi) {
747
747
  promptGuidelines: [
748
748
  'Read the video-gen skill and follow its concat or timeline workflow before writing the spec. Local composition skips video_capabilities and paid-model gates.',
749
749
  'Choose compose-input.json for lossless concat, timeline-input.json for FFmpeg overlays and narration, or remotion-input.json for precise graphics and an editable React project. Remotion requires a trusted local project and installed Remotion/Chrome; optional narration sends text to Microsoft Edge TTS.',
750
+ 'For Remotion, use optional qcTimesSec (up to 32 seconds-based timestamps) to inspect important handoffs before, during and after the transition. Review returned QC frames; recorded evidence does not establish motion or audio acceptance.',
750
751
  'For C0: every ordered stream across all clips must match (codec/resolution/fps/timebase/pix_fmt/sample-rate/audio layout) — mismatches are reported via ffprobe, never silently transcoded. Do NOT use for AI video generation (use video_generate/video_render).',
751
752
  'For timeline: each segment contains exactly one image or video. Video uses numeric durationSec with optional trimStartSec, fit, and sourceAudio; image may use auto duration and motion.',
752
- 'Reuse existing images/screenshots/clips first and generate only missing visuals with image_generate. Put Chinese titles in overlay and use subtitles.mode "burn" when narration subtitles must appear directly in the frames.',
753
+ 'Reuse suitable existing images/screenshots/clips first; use image_generate for missing visuals or explicitly requested replacements. Put Chinese titles in overlay and use subtitles.mode "burn" when narration subtitles must appear directly in the frames.',
753
754
  'Timeline TTS failures stop by default. Set ttsFailureMode "silent-subtitles" in timeline-input.json only after the user explicitly accepts silent audio with preserved subtitles.',
754
755
  'Narration is not fully local: require an explicit voice such as "edge-tts:zh-CN-YunyangNeural" only after disclosing that narration text is sent to Microsoft Edge TTS.',
755
756
  'Local compute — no paid-model confirmation needed, but tell the user the segment/clip count and planned duration before calling.',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export type RemotionSpec = {
7
7
  assets?: Record<string, string>;
8
8
  inputProps?: Record<string, unknown>;
9
9
  browserExecutable?: string;
10
+ qcTimesSec?: number[];
10
11
  };
11
12
  export declare function parseRemotionSpec(raw: string): RemotionSpec;
12
13
  export declare function preflightRemotion(opts: {
@@ -39,6 +40,8 @@ export declare function runRemotion(opts: {
39
40
  projectHash: string;
40
41
  finalVideoPath: string;
41
42
  resumed: boolean;
43
+ qcFrames: never[];
44
+ qcReportPath: undefined;
42
45
  shotTimesSec?: never;
43
46
  } | {
44
47
  jobId: string;
@@ -47,5 +50,7 @@ export declare function runRemotion(opts: {
47
50
  finalVideoPath: string;
48
51
  resumed: boolean;
49
52
  shotTimesSec: Record<string, number> | undefined;
53
+ qcFrames: string[];
54
+ qcReportPath: string | undefined;
50
55
  }>;
51
56
  //# sourceMappingURL=remotion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remotion.d.ts","sourceRoot":"","sources":["../src/remotion.ts"],"names":[],"mappings":"AA0BA,OAAO,EACL,KAAK,UAAU,EAKhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAqCF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAoD3D;AAwUD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC,mBAyEA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;GAgLA"}
1
+ {"version":3,"file":"remotion.d.ts","sourceRoot":"","sources":["../src/remotion.ts"],"names":[],"mappings":"AA0BA,OAAO,EACL,KAAK,UAAU,EAKhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAsCF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAgE3D;AA4UD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC,mBA0EA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;;;;GAoSA"}
package/dist/remotion.js CHANGED
@@ -6,7 +6,7 @@ import { basename, dirname, extname, isAbsolute, join, resolve, sep } from 'node
6
6
  import { promisify } from 'node:util';
7
7
  import { resolveOutputDir } from './config.js';
8
8
  import { VideoGenError } from './errors.js';
9
- import { probeDuration, probeStreams, resolveFfprobe, resolveGplFfmpeg, runFfmpegCommand, } from './ffmpeg.js';
9
+ import { probeStreams, probeVideoDuration, resolveFfprobe, resolveGplFfmpeg, runFfmpegCommand, } from './ffmpeg.js';
10
10
  import { assertSafeId, hashFileSha256, readJsonFile, writeJsonAtomic, } from './jobs/store.js';
11
11
  class RemotionCleanupError extends VideoGenError {
12
12
  }
@@ -62,6 +62,11 @@ export function parseRemotionSpec(raw) {
62
62
  if (typeof path !== 'string' || !isAbsolute(path))
63
63
  throw new VideoGenError(`Remotion asset "${id}" needs an absolute local path.`, 'remotion: asset path');
64
64
  }
65
+ if (spec.qcTimesSec !== undefined &&
66
+ (!Array.isArray(spec.qcTimesSec) ||
67
+ spec.qcTimesSec.length > 32 ||
68
+ spec.qcTimesSec.some((time) => typeof time !== 'number' || !Number.isFinite(time) || time < 0)))
69
+ throw new VideoGenError('qcTimesSec must contain at most 32 finite, non-negative timestamps in seconds.', 'remotion: qc times');
65
70
  if (spec.inputProps !== undefined &&
66
71
  (!spec.inputProps ||
67
72
  typeof spec.inputProps !== 'object' ||
@@ -206,6 +211,9 @@ let stage = 19;
206
211
  const serveUrl = await bundle({entryPoint: x.entryPoint, rootDir: x.projectDir, publicDir: x.publicDir});
207
212
  stage = 21;
208
213
  const composition = await selectComposition({serveUrl, id: x.compositionId, inputProps: x.inputProps, browserExecutable: x.browserExecutable});
214
+ stage = 24;
215
+ if (x.qcTimesSec && x.qcTimesSec.some((t) => t >= composition.durationInFrames / composition.fps)) throw new Error('qcTimesSec outside composition');
216
+ stage = 21;
209
217
  if (x.shotIds) {
210
218
  const times = composition.props.videoGenShotTimesSec;
211
219
  if (!times || typeof times !== 'object' || Array.isArray(times) || x.shotIds.some((id) => !Number.isFinite(times[id]) || times[id] < 0 || times[id] >= composition.durationInFrames / composition.fps)) {
@@ -335,6 +343,7 @@ function runRunner(input, signal) {
335
343
  21: 'Remotion composition could not be selected; check its ID, videoGenShotTimesSec metadata and browser.',
336
344
  22: 'Remotion frame preflight failed; check browser access and static assets.',
337
345
  23: 'Remotion video rendering failed; check media compatibility and project code.',
346
+ 24: 'Remotion qcTimesSec must be within the composition duration.',
338
347
  }[code ?? -1] ?? 'Remotion process failed.';
339
348
  throw new VideoGenError(reason, `remotion: process stage ${code}`);
340
349
  })().catch(fail);
@@ -384,6 +393,7 @@ export async function preflightRemotion(opts) {
384
393
  publicDir: join(dir, 'public'),
385
394
  compositionId: opts.spec.compositionId,
386
395
  shotIds: opts.shotIds,
396
+ qcTimesSec: opts.spec.qcTimesSec,
387
397
  inputProps: { ...opts.spec.inputProps, videoGenAssets: mapped },
388
398
  output: join(dir, 'frame.png'),
389
399
  mode: 'preflight',
@@ -429,6 +439,8 @@ export async function runRemotion(opts) {
429
439
  projectHash,
430
440
  finalVideoPath: '',
431
441
  resumed: false,
442
+ qcFrames: [],
443
+ qcReportPath: undefined,
432
444
  };
433
445
  const hashes = {};
434
446
  for (const [id, path] of Object.entries(assets)) {
@@ -453,6 +465,39 @@ export async function runRemotion(opts) {
453
465
  if (opts.shotIds?.some((id) => !Number.isFinite(manifest.shotTimesSec?.[id]) ||
454
466
  (manifest.shotTimesSec?.[id] ?? -1) < 0))
455
467
  throw new VideoGenError('Remotion shot timing metadata is missing.', 'remotion: shot timings');
468
+ const qcPaths = [];
469
+ if (manifest.qcHashes !== undefined) {
470
+ if (!manifest.qcHashes ||
471
+ typeof manifest.qcHashes !== 'object' ||
472
+ Array.isArray(manifest.qcHashes) ||
473
+ Object.keys(manifest.qcHashes).length > 36)
474
+ throw new VideoGenError('Remotion QC manifest is invalid.', 'remotion: qc manifest');
475
+ for (const [rel, expected] of Object.entries(manifest.qcHashes)) {
476
+ if (!/^qc-[a-f0-9-]{36}[/\\](frame_\d{2}\.png|report\.json)$/.test(rel))
477
+ throw new VideoGenError('Remotion QC path is invalid.', 'remotion: qc path');
478
+ const path = join(jobDir, rel);
479
+ const entry = await lstat(path).catch(() => null);
480
+ if (!entry?.isFile() ||
481
+ entry.isSymbolicLink() ||
482
+ !(await realpath(path)).startsWith(`${jobDir}${sep}`) ||
483
+ (await hashFileSha256(path, opts.signal)) !== expected)
484
+ throw new VideoGenError('Remotion QC artifact is missing or changed.', 'remotion: qc drift');
485
+ qcPaths.push(path);
486
+ }
487
+ const reportPath = qcPaths.find((path) => path.endsWith('report.json'));
488
+ const report = reportPath
489
+ ? readJsonFile(reportPath)
490
+ : undefined;
491
+ if (!reportPath ||
492
+ report?.finalVideoPath !== manifest.finalVideoPath ||
493
+ report?.finalVideoHash !== manifest.finalVideoHash ||
494
+ !Array.isArray(report.samples) ||
495
+ report.samples.length === 0 ||
496
+ report.samples.length !== qcPaths.length - 1 ||
497
+ report.samples.some((sample, index) => sample?.path !==
498
+ join(basename(dirname(reportPath)), `frame_${String(index).padStart(2, '0')}.png`) || !Object.hasOwn(manifest.qcHashes, sample.path)))
499
+ throw new VideoGenError('Remotion QC evidence is incomplete or inconsistent.', 'remotion: qc completeness');
500
+ }
456
501
  return {
457
502
  jobId: basename(jobDir),
458
503
  projectDir: project.projectDir,
@@ -460,6 +505,8 @@ export async function runRemotion(opts) {
460
505
  finalVideoPath: manifest.finalVideoPath,
461
506
  resumed: true,
462
507
  shotTimesSec: manifest.shotTimesSec,
508
+ qcFrames: qcPaths.filter((path) => path.endsWith('.png')),
509
+ qcReportPath: qcPaths.find((path) => path.endsWith('report.json')),
463
510
  };
464
511
  }
465
512
  if (opts.verifyOnly)
@@ -467,9 +514,11 @@ export async function runRemotion(opts) {
467
514
  const publicDir = join(jobDir, `public-snapshot-${randomUUID()}`);
468
515
  const temp = join(jobDir, `final_video.${randomUUID()}.tmp.mp4`);
469
516
  const metadataPath = join(jobDir, `shot-times.${randomUUID()}.json`);
517
+ const qcDir = join(jobDir, `qc-${randomUUID()}`);
470
518
  let ownsSnapshot = false;
471
519
  let retainSnapshot = false;
472
520
  let cleanupSafe = true;
521
+ let ownsQc = false;
473
522
  try {
474
523
  const mapped = await snapshotPublic(project.projectDir, publicDir, assets, undefined);
475
524
  ownsSnapshot = true;
@@ -481,6 +530,7 @@ export async function runRemotion(opts) {
481
530
  publicDir,
482
531
  compositionId: spec.compositionId,
483
532
  shotIds: opts.shotIds,
533
+ qcTimesSec: spec.qcTimesSec,
484
534
  metadataPath,
485
535
  inputProps: { ...spec.inputProps, videoGenAssets: mapped },
486
536
  output: temp,
@@ -492,23 +542,57 @@ export async function runRemotion(opts) {
492
542
  const shotTimesSec = opts.shotIds
493
543
  ? JSON.parse(await readFile(metadataPath, 'utf8'))
494
544
  : undefined;
545
+ const finalVideoPath = join(jobDir, 'final_video.mp4');
546
+ const finalVideoHash = await hashFileSha256(temp, opts.signal);
547
+ const qcHashes = {};
548
+ const qcFrames = [];
549
+ let qcReportPath;
495
550
  if (opts.verifyMedia !== false) {
496
- const ffprobe = resolveFfprobe(opts.ffmpegPath);
551
+ const ffprobe = resolveFfprobe(opts.settings.ffmpegPath);
497
552
  if (!ffprobe.runnable)
498
553
  throw new VideoGenError('ffprobe is required to verify Remotion output.', 'remotion: ffprobe missing');
499
- await probeStreams(ffprobe.path, temp, opts.signal);
500
- await probeDuration(ffprobe.path, temp, opts.signal);
554
+ const streams = await probeStreams(ffprobe.path, temp, opts.signal);
555
+ const [numerator, denominator = 1] = streams.fps.split('/').map(Number);
556
+ const fps = numerator / denominator;
557
+ if (!Number.isFinite(fps) || fps <= 0)
558
+ throw new VideoGenError('Remotion QC needs a valid video frame rate.', 'remotion: qc fps');
559
+ const durationSec = await probeVideoDuration(ffprobe.path, temp, opts.signal);
560
+ if (spec.qcTimesSec?.some((time) => time >= durationSec))
561
+ throw new VideoGenError('qcTimesSec exceeds the exported video duration.', 'remotion: qc duration');
562
+ const lastFrame = Math.max(0, Math.round(durationSec * fps) - 1);
563
+ const edge = Math.min(0.5, durationSec / 4);
564
+ const times = [
565
+ ...new Set([edge, durationSec / 2, durationSec - edge, ...(spec.qcTimesSec ?? [])]),
566
+ ].sort((a, b) => a - b);
567
+ await mkdir(qcDir);
568
+ ownsQc = true;
569
+ const samples = [];
570
+ for (const [index, timeSec] of times.entries()) {
571
+ const name = `frame_${String(index).padStart(2, '0')}.png`;
572
+ const path = join(qcDir, name);
573
+ const framePosition = timeSec * fps;
574
+ // Preserve exact decimal frame boundaries despite floating-point roundoff.
575
+ const frameTimeSec = Math.min(lastFrame, Math.floor(framePosition + 4 * Number.EPSILON * Math.max(1, framePosition))) / fps;
576
+ await runFfmpegCommand(opts.ffmpegPath, ['-ss', frameTimeSec.toFixed(6), '-i', temp, '-frames:v', '1', '-y', path], opts.signal);
577
+ const rel = join(basename(qcDir), name);
578
+ qcHashes[rel] = await hashFileSha256(path, opts.signal);
579
+ qcFrames.push(path);
580
+ samples.push({ timeSec, frameTimeSec, path: rel });
581
+ }
582
+ qcReportPath = join(qcDir, 'report.json');
583
+ writeJsonAtomic(qcReportPath, { finalVideoPath, finalVideoHash, durationSec, samples });
584
+ qcHashes[join(basename(qcDir), 'report.json')] = await hashFileSha256(qcReportPath, opts.signal);
501
585
  }
502
586
  if ((await projectFingerprint(project.projectDir, output)) !== projectHash)
503
587
  throw new VideoGenError('Remotion project changed during rendering; refusing to commit output.', 'remotion: project render race');
504
- const finalVideoPath = join(jobDir, 'final_video.mp4');
505
588
  await rename(temp, finalVideoPath);
506
589
  writeJsonAtomic(manifestPath, {
507
590
  kind: 'remotion',
508
591
  fingerprint,
509
592
  finalVideoPath,
510
- finalVideoHash: await hashFileSha256(finalVideoPath),
593
+ finalVideoHash,
511
594
  shotTimesSec,
595
+ ...(ownsQc ? { qcHashes } : {}),
512
596
  });
513
597
  retainSnapshot = true;
514
598
  return {
@@ -518,6 +602,8 @@ export async function runRemotion(opts) {
518
602
  finalVideoPath,
519
603
  resumed: false,
520
604
  shotTimesSec,
605
+ qcFrames,
606
+ qcReportPath,
521
607
  };
522
608
  }
523
609
  catch (error) {
@@ -531,6 +617,8 @@ export async function runRemotion(opts) {
531
617
  await rm(metadataPath, { force: true });
532
618
  if (ownsSnapshot && !retainSnapshot)
533
619
  await rm(publicDir, { recursive: true, force: true });
620
+ if (ownsQc && !retainSnapshot)
621
+ await rm(qcDir, { recursive: true, force: true });
534
622
  }
535
623
  }
536
624
  }