@bitmagic/cli 0.1.69 → 0.1.70-dev.1

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.
Files changed (96) hide show
  1. package/dist/bin.js +5 -4
  2. package/dist/bin.js.map +1 -1
  3. package/dist/cli.js +6 -5
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/trailer.js +6 -10
  6. package/dist/commands/trailer.js.map +1 -1
  7. package/dist/editor/recording-sink.d.ts +2 -9
  8. package/dist/editor/recording-sink.js +3 -15
  9. package/dist/editor/recording-sink.js.map +1 -1
  10. package/dist/editor/recording-stream.d.ts +3 -2
  11. package/dist/editor/recording-stream.js +14 -48
  12. package/dist/editor/recording-stream.js.map +1 -1
  13. package/dist/editor/shell-page.js +1 -1
  14. package/dist/editor/shell-page.js.map +1 -1
  15. package/dist/errors.d.ts +8 -0
  16. package/dist/errors.js +16 -0
  17. package/dist/errors.js.map +1 -1
  18. package/dist/generate/video-review.js +1 -1
  19. package/dist/generate/video-review.js.map +1 -1
  20. package/dist/render/qr-png.d.ts +3 -6
  21. package/dist/render/qr-png.js +4 -33
  22. package/dist/render/qr-png.js.map +1 -1
  23. package/dist/scaffold/asset-pipeline-skill-files.d.ts +1 -1
  24. package/dist/scaffold/asset-pipeline-skill-files.js +3 -3
  25. package/dist/trailer/chrome-rasterizers.d.ts +7 -0
  26. package/dist/trailer/chrome-rasterizers.js +7 -0
  27. package/dist/trailer/chrome-rasterizers.js.map +1 -0
  28. package/dist/trailer/game-name.d.ts +2 -0
  29. package/dist/trailer/game-name.js +20 -0
  30. package/dist/trailer/game-name.js.map +1 -0
  31. package/dist/trailer/hud-raster.d.ts +1 -1
  32. package/dist/trailer/hud-raster.js +1 -1
  33. package/dist/trailer/hud-raster.js.map +1 -1
  34. package/dist/trailer/record-session.js +1 -2
  35. package/dist/trailer/record-session.js.map +1 -1
  36. package/dist/trailer/title-raster.d.ts +9 -2
  37. package/dist/trailer/title-raster.js +17 -3
  38. package/dist/trailer/title-raster.js.map +1 -1
  39. package/package.json +4 -4
  40. package/dist/editor/capture-file.d.ts +0 -70
  41. package/dist/editor/capture-file.js +0 -204
  42. package/dist/editor/capture-file.js.map +0 -1
  43. package/dist/trailer/analyze.d.ts +0 -23
  44. package/dist/trailer/analyze.js +0 -186
  45. package/dist/trailer/analyze.js.map +0 -1
  46. package/dist/trailer/auto-edl.d.ts +0 -50
  47. package/dist/trailer/auto-edl.js +0 -267
  48. package/dist/trailer/auto-edl.js.map +0 -1
  49. package/dist/trailer/beat-cut.d.ts +0 -57
  50. package/dist/trailer/beat-cut.js +0 -232
  51. package/dist/trailer/beat-cut.js.map +0 -1
  52. package/dist/trailer/edl-time.d.ts +0 -61
  53. package/dist/trailer/edl-time.js +0 -105
  54. package/dist/trailer/edl-time.js.map +0 -1
  55. package/dist/trailer/ffmpeg.d.ts +0 -18
  56. package/dist/trailer/ffmpeg.js +0 -100
  57. package/dist/trailer/ffmpeg.js.map +0 -1
  58. package/dist/trailer/hud-state.d.ts +0 -181
  59. package/dist/trailer/hud-state.js +0 -525
  60. package/dist/trailer/hud-state.js.map +0 -1
  61. package/dist/trailer/io.d.ts +0 -22
  62. package/dist/trailer/io.js +0 -20
  63. package/dist/trailer/io.js.map +0 -1
  64. package/dist/trailer/link.d.ts +0 -1
  65. package/dist/trailer/link.js +0 -15
  66. package/dist/trailer/link.js.map +0 -1
  67. package/dist/trailer/make.d.ts +0 -56
  68. package/dist/trailer/make.js +0 -212
  69. package/dist/trailer/make.js.map +0 -1
  70. package/dist/trailer/merge.d.ts +0 -7
  71. package/dist/trailer/merge.js +0 -165
  72. package/dist/trailer/merge.js.map +0 -1
  73. package/dist/trailer/music-beats.d.ts +0 -123
  74. package/dist/trailer/music-beats.js +0 -672
  75. package/dist/trailer/music-beats.js.map +0 -1
  76. package/dist/trailer/paths.d.ts +0 -28
  77. package/dist/trailer/paths.js +0 -101
  78. package/dist/trailer/paths.js.map +0 -1
  79. package/dist/trailer/render.d.ts +0 -59
  80. package/dist/trailer/render.js +0 -521
  81. package/dist/trailer/render.js.map +0 -1
  82. package/dist/trailer/revision.d.ts +0 -8
  83. package/dist/trailer/revision.js +0 -31
  84. package/dist/trailer/revision.js.map +0 -1
  85. package/dist/trailer/synth.d.ts +0 -9
  86. package/dist/trailer/synth.js +0 -120
  87. package/dist/trailer/synth.js.map +0 -1
  88. package/dist/trailer/timeline-types.d.ts +0 -195
  89. package/dist/trailer/timeline-types.js +0 -419
  90. package/dist/trailer/timeline-types.js.map +0 -1
  91. package/dist/trailer/titles.d.ts +0 -44
  92. package/dist/trailer/titles.js +0 -124
  93. package/dist/trailer/titles.js.map +0 -1
  94. package/dist/trailer/video-chain.d.ts +0 -129
  95. package/dist/trailer/video-chain.js +0 -261
  96. package/dist/trailer/video-chain.js.map +0 -1
package/dist/errors.js CHANGED
@@ -20,6 +20,22 @@ export class CliError extends Error {
20
20
  this.code = code;
21
21
  }
22
22
  }
23
+ /**
24
+ * The user-facing error in `error`, as a CliError, or null for a genuine bug.
25
+ *
26
+ * The trailer compositor lives in `@bitmagic/asset-core/trailer` and throws its own `TrailerError`,
27
+ * the same shape as CliError. Matched by name rather than `instanceof` so that recognising it does
28
+ * not load the whole compositor on every CLI start.
29
+ */
30
+ export function asCliError(error) {
31
+ if (error instanceof CliError)
32
+ return error;
33
+ if (error instanceof Error && error.name === 'TrailerError') {
34
+ const { exitCode, code } = error;
35
+ return new CliError(error.message, typeof exitCode === 'number' ? exitCode : 1, typeof code === 'string' ? code : undefined);
36
+ }
37
+ return null;
38
+ }
23
39
  /**
24
40
  * The `code` off a Node fs/child-process error, without pulling in the NodeJS global namespace.
25
41
  *
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,QAAQ,CAAS;IACjB,IAAI,CAAqB;IAElC,YAAY,OAAe,EAAE,QAAQ,GAAG,CAAC,EAAE,IAAa;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;QACnE,CAAC,CAAC,MAAM,CAAE,KAA2B,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACtF,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,QAAQ,CAAS;IACjB,IAAI,CAAqB;IAElC,YAAY,OAAe,EAAE,QAAQ,GAAG,CAAC,EAAE,IAAa;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,YAAY,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAC5D,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAuD,CAAC;QACnF,OAAO,IAAI,QAAQ,CACjB,KAAK,CAAC,OAAO,EACb,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAC5C,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;QACnE,CAAC,CAAC,MAAM,CAAE,KAA2B,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACtF,CAAC"}
@@ -19,7 +19,7 @@
19
19
  */
20
20
  import * as fs from 'fs';
21
21
  import * as path from 'path';
22
- import { captureFfmpegTool, missingFfmpegTool, runFfmpeg } from '../trailer/ffmpeg.js';
22
+ import { captureFfmpegTool, missingFfmpegTool, runFfmpeg } from '@bitmagic/asset-core/trailer';
23
23
  /** Frames in the sheet, and the grid they are tiled into. 4x2 fits a 16:9 clip on one screen. */
24
24
  const SHEET_COLUMNS = 4;
25
25
  const SHEET_ROWS = 2;
@@ -1 +1 @@
1
- {"version":3,"file":"video-review.js","sourceRoot":"","sources":["../../src/generate/video-review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"video-review.js","sourceRoot":"","sources":["../../src/generate/video-review.ts"],"names":[],"mappings":"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"}
@@ -15,14 +15,11 @@
15
15
  *
16
16
  * Two other hand-rolled PNG encoders exist in this repo — `world-forger-internal`'s vehicle atlas
17
17
  * and `game-play-agent`'s solid-colour tile — and neither is reachable from here: the first is in a
18
- * `private: true` package the CLI does not depend on, the second is server code. Within the CLI the
19
- * chunk/CRC/signature primitives are exported from here and shared with the trailer's transparent
20
- * frame filler (trailer/video-chain.ts); `ios/icon.ts` predates that and keeps its own.
18
+ * `private: true` package the CLI does not depend on, the second is server code. The chunk/CRC/signature
19
+ * primitives live in `@bitmagic/asset-core/trailer` (its `png.ts`), beside the trailer's transparent
20
+ * frame filler that shares them; `ios/icon.ts` predates that and keeps its own.
21
21
  */
22
22
  import { Buffer } from 'buffer';
23
- export declare const PNG_SIGNATURE: Buffer<ArrayBuffer>;
24
- /** One PNG chunk: length, type, data, and the CRC over type+data (never over the length). */
25
- export declare function pngChunk(type: string, data: Buffer): Buffer;
26
23
  export interface QrPngOptions {
27
24
  /** Pixels per module. Defaults to `MODULE_PIXELS`. */
28
25
  scale?: number;
@@ -15,12 +15,13 @@
15
15
  *
16
16
  * Two other hand-rolled PNG encoders exist in this repo — `world-forger-internal`'s vehicle atlas
17
17
  * and `game-play-agent`'s solid-colour tile — and neither is reachable from here: the first is in a
18
- * `private: true` package the CLI does not depend on, the second is server code. Within the CLI the
19
- * chunk/CRC/signature primitives are exported from here and shared with the trailer's transparent
20
- * frame filler (trailer/video-chain.ts); `ios/icon.ts` predates that and keeps its own.
18
+ * `private: true` package the CLI does not depend on, the second is server code. The chunk/CRC/signature
19
+ * primitives live in `@bitmagic/asset-core/trailer` (its `png.ts`), beside the trailer's transparent
20
+ * frame filler that shares them; `ios/icon.ts` predates that and keeps its own.
21
21
  */
22
22
  import { Buffer } from 'buffer';
23
23
  import * as zlib from 'zlib';
24
+ import { PNG_SIGNATURE, pngChunk } from '@bitmagic/asset-core/trailer';
24
25
  /** Pixels per QR module. Large enough that a phone camera reads it off a normal screen. */
25
26
  const MODULE_PIXELS = 8;
26
27
  /**
@@ -28,36 +29,6 @@ const MODULE_PIXELS = 8;
28
29
  * uses — that one is trading margin for terminal columns, and a file has no such constraint.
29
30
  */
30
31
  const QUIET_MODULES = 4;
31
- export const PNG_SIGNATURE = Buffer.from([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);
32
- /** The standard CRC-32 table (PNG spec annex D), built once. */
33
- function buildCrcTable() {
34
- const table = new Uint32Array(256);
35
- for (let n = 0; n < 256; n += 1) {
36
- let c = n;
37
- for (let k = 0; k < 8; k += 1) {
38
- c = (c & 1) !== 0 ? 0xedb88320 ^ (c >>> 1) : c >>> 1;
39
- }
40
- table[n] = c >>> 0;
41
- }
42
- return table;
43
- }
44
- const CRC_TABLE = buildCrcTable();
45
- function crc32(bytes) {
46
- let crc = 0xffffffff;
47
- for (const byte of bytes) {
48
- crc = CRC_TABLE[(crc ^ byte) & 0xff] ^ (crc >>> 8);
49
- }
50
- return (crc ^ 0xffffffff) >>> 0;
51
- }
52
- /** One PNG chunk: length, type, data, and the CRC over type+data (never over the length). */
53
- export function pngChunk(type, data) {
54
- const length = Buffer.alloc(4);
55
- length.writeUInt32BE(data.length, 0);
56
- const typeAndData = Buffer.concat([Buffer.from(type, 'ascii'), data]);
57
- const crc = Buffer.alloc(4);
58
- crc.writeUInt32BE(crc32(typeAndData), 0);
59
- return Buffer.concat([length, typeAndData, crc]);
60
- }
61
32
  /** The pixel width (and height) `encodeQrPng` produces for a matrix of this size. */
62
33
  export function qrPngDimension(matrix, options = {}) {
63
34
  const scale = options.scale ?? MODULE_PIXELS;
@@ -1 +1 @@
1
- {"version":3,"file":"qr-png.js","sourceRoot":"","sources":["../../src/render/qr-png.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qr-png.js","sourceRoot":"","sources":["../../src/render/qr-png.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@
33
33
  * - Prices and timings are NOT test-checked. Sparks come from `api-server/src/llm/llm_cost.json`
34
34
  * (`toolCosts`, 1 spark = $0.01): glb/model/prop 3, voxel character 15, low-poly character 60,
35
35
  * library-only 0, skybox and background 5, image 3, cover and reference 6, block-type 3, sound
36
- * 12, music 0.25/s, video 1.35/s, authored animation 1, video-to-motion 15; forge and vehicle
36
+ * 12, music 0.25/s, video 2/s, authored animation 1, video-to-motion 15; forge and vehicle
37
37
  * are usage-priced, presets free. Timings are observed. The CLI cannot import that file, so a
38
38
  * price, flag or backend change is invisible to the test — which is why the release checklist
39
39
  * (`.claude/skills/generate-release-checklist`) asks for this file to be re-read whenever a
@@ -33,7 +33,7 @@
33
33
  * - Prices and timings are NOT test-checked. Sparks come from `api-server/src/llm/llm_cost.json`
34
34
  * (`toolCosts`, 1 spark = $0.01): glb/model/prop 3, voxel character 15, low-poly character 60,
35
35
  * library-only 0, skybox and background 5, image 3, cover and reference 6, block-type 3, sound
36
- * 12, music 0.25/s, video 1.35/s, authored animation 1, video-to-motion 15; forge and vehicle
36
+ * 12, music 0.25/s, video 2/s, authored animation 1, video-to-motion 15; forge and vehicle
37
37
  * are usage-priced, presets free. Timings are observed. The CLI cannot import that file, so a
38
38
  * price, flag or backend change is invisible to the test — which is why the release checklist
39
39
  * (`.claude/skills/generate-release-checklist`) asks for this file to be re-read whenever a
@@ -196,8 +196,8 @@ Rows are in recommended order: take the first whose conditions hold.
196
196
 
197
197
  | Route | Conditions | ~Cost | Notes |
198
198
  |---|---|---|---|
199
- | \`bitmagic generate video\` from a prompt | a story beat played by \`engine.playVideo()\` | ~1.35 sparks/s (5 s ≈ 7); ~40 s | Read the frame sheet before wiring; needs a user gesture to play. \`video-cutscenes.md\` |
200
- | \`bitmagic generate video\` from a still | animate a picture you have (cover, reference) | same sparks; ~3 min | Comes back in the image's shape, not 16:9 |
199
+ | \`bitmagic generate video\` from a prompt | a story beat played by \`engine.playVideo()\` | ~2 sparks/s (5 s ≈ 10); ~20 s | Read the frame sheet before wiring; needs a user gesture to play. \`video-cutscenes.md\` |
200
+ | \`bitmagic generate video\` from a still | animate a picture you have (cover, reference) | same sparks; ~30 s | Comes back in the image's shape, not 16:9 |
201
201
  | \`bitmagic trailer\` (\`${PRIMARY_SKILLS_DIR}/making-a-trailer/SKILL.md\`) | a trailer or highlight reel of real gameplay | free apart from an optional music bed; \`ffmpeg\` | Cut from a recording, not generated |
202
202
 
203
203
  ## After you have chosen
@@ -0,0 +1,7 @@
1
+ /**
2
+ * The CLI's answer to the compositor's `TrailerRasterizers`: the HUD replay and the title cards,
3
+ * both drawn in headless system Chrome. The compositor itself (`@bitmagic/asset-core/trailer`)
4
+ * never launches a browser, so every render the CLI starts passes these in.
5
+ */
6
+ import type { TrailerRasterizers } from '@bitmagic/asset-core/trailer';
7
+ export declare const CHROME_RASTERIZERS: TrailerRasterizers;
@@ -0,0 +1,7 @@
1
+ import { rasterizeUiKeyframes } from './hud-raster.js';
2
+ import { rasterizeTitles } from './title-raster.js';
3
+ export const CHROME_RASTERIZERS = {
4
+ ui: rasterizeUiKeyframes,
5
+ titles: rasterizeTitles,
6
+ };
7
+ //# sourceMappingURL=chrome-rasterizers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chrome-rasterizers.js","sourceRoot":"","sources":["../../src/trailer/chrome-rasterizers.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,CAAC,MAAM,kBAAkB,GAAuB;IACpD,EAAE,EAAE,oBAAoB;IACxB,MAAM,EAAE,eAAe;CACxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ /** The game's name as the work copy knows it, for the end card and the file name. */
2
+ export declare function gameNameFor(root: string): string;
@@ -0,0 +1,20 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { aliasSourceDir } from '../scaffold/aliases.js';
4
+ /** The game's name as the work copy knows it, for the end card and the file name. */
5
+ export function gameNameFor(root) {
6
+ const gameJson = path.join(root, aliasSourceDir('work'), 'game.json');
7
+ try {
8
+ const parsed = JSON.parse(fs.readFileSync(gameJson, 'utf-8'));
9
+ if (typeof parsed === 'object' && parsed !== null) {
10
+ const name = parsed.name;
11
+ if (typeof name === 'string' && name.trim().length > 0)
12
+ return name.trim();
13
+ }
14
+ }
15
+ catch {
16
+ // No work copy or no name in it — the directory name is the honest fallback.
17
+ }
18
+ return path.basename(root);
19
+ }
20
+ //# sourceMappingURL=game-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-name.js","sourceRoot":"","sources":["../../src/trailer/game-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,qFAAqF;AACrF,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;IACtE,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClD,MAAM,IAAI,GAAI,MAA6B,CAAC,IAAI,CAAC;YACjD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;IAC/E,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type Browser } from 'playwright-core';
2
- import type { UiKeyframe } from './hud-state.js';
2
+ import { type UiKeyframe } from '@bitmagic/asset-core/trailer';
3
3
  export declare const CHROME_MISSING_HINT = "Google Chrome could not be launched \u2014 install it from https://www.google.com/chrome/";
4
4
  /** Headless system Chrome for offscreen rasterization; null (with a warning) when it cannot start. */
5
5
  export declare function launchRasterBrowser(purpose: string): Promise<Browser | null>;
@@ -23,7 +23,7 @@
23
23
  import * as fs from 'fs';
24
24
  import * as path from 'path';
25
25
  import { chromium } from 'playwright-core';
26
- import { out, warn } from './io.js';
26
+ import { out, warn } from '@bitmagic/asset-core/trailer';
27
27
  const NAV_TIMEOUT_MS = 20000;
28
28
  const READY_TIMEOUT_MS = 20000;
29
29
  /** Consecutive keyframe failures after which the run gives up on UI entirely. */
@@ -1 +1 @@
1
- {"version":3,"file":"hud-raster.js","sourceRoot":"","sources":["../../src/trailer/hud-raster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hud-raster.js","sourceRoot":"","sources":["../../src/trailer/hud-raster.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,7 @@ import * as path from 'path';
20
20
  import { CliError } from '../errors.js';
21
21
  import { DEFAULT_START_INTERACTION } from '../verify/start.js';
22
22
  import { launchSystemChrome } from '../chrome-launch.js';
23
- import { EXTRACT_DIR } from '../editor/capture-file.js';
24
- import { recordingsDir, TIMELINE_FILE } from './paths.js';
23
+ import { EXTRACT_DIR, recordingsDir, TIMELINE_FILE } from '@bitmagic/asset-core/trailer';
25
24
  /** Read straight off `engine/debug/ScreenRecorder.ts`, the vendored recorder source. */
26
25
  export function recorderCapabilities(root) {
27
26
  let source = '';
@@ -1 +1 @@
1
- {"version":3,"file":"record-session.js","sourceRoot":"","sources":["../../src/trailer/record-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-session.js","sourceRoot":"","sources":["../../src/trailer/record-session.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
- import type { TitleCue } from './titles.js';
1
+ import { type TitleCue } from '@bitmagic/asset-core/trailer';
2
+ /**
3
+ * The bundled title font, shipped in the CLI's `assets/fonts/` (see `files` in package.json) so
4
+ * titles render identically on any machine instead of depending on system fonts. Resolved from
5
+ * this module's own location: `../../assets/` is the same hop from `src/trailer/` and from
6
+ * `dist/trailer/`, so it works run from source and from an installed package alike.
7
+ */
8
+ export declare function defaultTitleFont(): string;
2
9
  /**
3
10
  * Rasterize each cue to a transparent PNG. Returns null when Chrome can't be
4
11
  * reached, so the caller renders without titles rather than failing the trailer.
5
12
  */
6
- export declare function rasterizeTitles(cues: readonly TitleCue[], width: number, height: number, outDir: string, fontFile: string): Promise<string[] | null>;
13
+ export declare function rasterizeTitles(cues: readonly TitleCue[], width: number, height: number, outDir: string, fontFile: string | undefined): Promise<string[] | null>;
@@ -6,9 +6,22 @@
6
6
  */
7
7
  import * as fs from 'fs';
8
8
  import * as path from 'path';
9
- import { titleHtml } from './titles.js';
9
+ import { fileURLToPath } from 'url';
10
+ import { titleHtml, warn } from '@bitmagic/asset-core/trailer';
10
11
  import { launchRasterBrowser } from './hud-raster.js';
11
- import { warn } from './io.js';
12
+ import { CliError } from '../errors.js';
13
+ /**
14
+ * The bundled title font, shipped in the CLI's `assets/fonts/` (see `files` in package.json) so
15
+ * titles render identically on any machine instead of depending on system fonts. Resolved from
16
+ * this module's own location: `../../assets/` is the same hop from `src/trailer/` and from
17
+ * `dist/trailer/`, so it works run from source and from an installed package alike.
18
+ */
19
+ export function defaultTitleFont() {
20
+ const candidate = fileURLToPath(new URL('../../assets/fonts/NotoSans-Bold.ttf', import.meta.url));
21
+ if (fs.existsSync(candidate))
22
+ return candidate;
23
+ throw new CliError(`The bundled title font is missing (looked at ${candidate}) — reinstall @bitmagic/cli, or pass --title-font <path to .ttf>.`);
24
+ }
12
25
  /**
13
26
  * Rasterize each cue to a transparent PNG. Returns null when Chrome can't be
14
27
  * reached, so the caller renders without titles rather than failing the trailer.
@@ -16,6 +29,7 @@ import { warn } from './io.js';
16
29
  export async function rasterizeTitles(cues, width, height, outDir, fontFile) {
17
30
  if (cues.length === 0)
18
31
  return [];
32
+ const font = fontFile ?? defaultTitleFont();
19
33
  // Before the browser exists: a throwing mkdir must not leak a Chrome.
20
34
  fs.mkdirSync(outDir, { recursive: true });
21
35
  const browser = await launchRasterBrowser('titles');
@@ -29,7 +43,7 @@ export async function rasterizeTitles(cues, width, height, outDir, fontFile) {
29
43
  const paths = [];
30
44
  for (let i = 0; i < cues.length; i++) {
31
45
  const pngPath = path.join(outDir, `title_${String(i).padStart(2, '0')}.png`);
32
- await page.setContent(titleHtml(cues[i], width, height, fontFile), { waitUntil: 'load' });
46
+ await page.setContent(titleHtml(cues[i], width, height, font), { waitUntil: 'load' });
33
47
  // Web fonts load asynchronously; screenshotting first yields fallback type.
34
48
  await page.evaluate('document.fonts.ready.then(() => true)');
35
49
  await page.screenshot({ path: pngPath, omitBackground: true, type: 'png' });
@@ -1 +1 @@
1
- {"version":3,"file":"title-raster.js","sourceRoot":"","sources":["../../src/trailer/title-raster.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAyB,EACzB,KAAa,EACb,MAAc,EACd,MAAc,EACd,QAAgB;IAEhB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,sEAAsE;IACtE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACpD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,uCAAuC,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAC7E,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1F,4EAA4E;YAC5E,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAuC,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5E,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QACtH,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"title-raster.js","sourceRoot":"","sources":["../../src/trailer/title-raster.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitmagic/cli",
3
- "version": "0.1.69",
3
+ "version": "0.1.70-dev.1",
4
4
  "description": "Build Bitmagic games from your own agent tool",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Bitmagic Oy",
@@ -25,9 +25,9 @@
25
25
  "playwright-core": "^1.59.1",
26
26
  "tar": "^7.4.3",
27
27
  "ws": "^8.21.3",
28
- "@bitmagic/animation-forger": "0.1.24",
29
- "@bitmagic/asset-core": "0.2.24",
30
- "@bitmagic/world-forger": "0.1.29"
28
+ "@bitmagic/animation-forger": "0.1.25-dev.1",
29
+ "@bitmagic/asset-core": "0.2.25-dev.1",
30
+ "@bitmagic/world-forger": "0.1.30-dev.1"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@eslint/js": "^9.38.0",
@@ -1,70 +0,0 @@
1
- export type CaptureCodec = 'avc' | 'vp9';
2
- export declare const CHUNK_HEADER_BYTES = 5;
3
- export declare const CAPTURE_FPS = 60;
4
- /** Where ffmpeg drops the extracted PNGs before they are renamed onto the recorder's frame indices. */
5
- export declare const EXTRACT_DIR = ".extract";
6
- export declare function isCaptureCodec(value: unknown): value is CaptureCodec;
7
- /** The elementary stream written during the recording. */
8
- export declare function elementaryName(codec: CaptureCodec): string;
9
- /** The playable file kept next to the frames. */
10
- export declare function containerName(codec: CaptureCodec): string;
11
- export interface ChunkMessage {
12
- frameIndex: number;
13
- key: boolean;
14
- bytes: Buffer;
15
- }
16
- /** Split a binary message into its header and chunk bytes; null when it cannot be one. */
17
- export declare function parseChunkMessage(data: Buffer): ChunkMessage | null;
18
- /**
19
- * Which frame indices arrived. Chrome's encoders emit one chunk per frame in input order, so a
20
- * gap here is a frame the recorder itself reported as failed; `finalizeFrames` fills it from a
21
- * neighbour after extraction, the way `FrameSequencer` does for raw frames.
22
- */
23
- export declare class ChunkLedger {
24
- private next;
25
- readonly present: number[];
26
- readonly missing: number[];
27
- /** Whether this chunk is new (a late or duplicate index is ignored). */
28
- accept(frameIndex: number): boolean;
29
- /** Mark the tail up to the recorder's declared count as missing. */
30
- finish(frameCount: number): void;
31
- get received(): number;
32
- /** One past the highest index seen (or declared). */
33
- get expected(): number;
34
- }
35
- /** The 32-byte IVF file header (VP9, timebase 1/60). */
36
- export declare function ivfHeader(width: number, height: number, frameCount: number): Buffer;
37
- /** Appends chunks to the elementary stream as they arrive; closes with the IVF count patched in. */
38
- export declare class CaptureWriter {
39
- readonly codec: CaptureCodec;
40
- private readonly width;
41
- private readonly height;
42
- readonly filePath: string;
43
- private readonly fd;
44
- private frames;
45
- private closed;
46
- constructor(codec: CaptureCodec, dir: string, width: number, height: number);
47
- append(frameIndex: number, bytes: Buffer): void;
48
- close(): void;
49
- }
50
- /**
51
- * `-c copy` into a container. The raw H.264 demuxer would otherwise take its timing from the
52
- * encoder's VUI (Chrome's software encoder writes a 120 Hz tick), so the frame rate is forced on
53
- * the input and the timestamps regenerated.
54
- */
55
- export declare function remuxArgs(codec: CaptureCodec, dir: string): string[];
56
- /**
57
- * One PNG per decoded frame, in decode order, into `.extract/`. `-vsync 0` (the spelling every
58
- * ffmpeg since 4.x accepts) stops ffmpeg from duplicating or dropping frames to hit a rate.
59
- */
60
- export declare function extractArgs(codec: CaptureCodec, dir: string): string[];
61
- /**
62
- * Rename the extracted PNGs onto the frame indices the ledger says they belong to, then fill
63
- * every hole up to the declared count by copying the previous frame (or the first one, for a
64
- * leading gap) so `<name>_%06d.png` stays aligned with the recorder's frame clock. Returns the
65
- * same `{written, missing}` the raw path reports.
66
- */
67
- export declare function finalizeFrames(dir: string, recordingName: string, ledger: ChunkLedger, frameCount: number): {
68
- written: number;
69
- missing: number[];
70
- };