@haibun/utils 1.47.1 → 1.48.0

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.
@@ -19,7 +19,7 @@ PACKAGE_DIR=$(npm root)/@haibun/utils
19
19
  # Generate editly configuration from monitor.json
20
20
  echo "Generating editly configuration..."
21
21
  # Use the correct path to the built JS file
22
- node "$PACKAGE_DIR/build/generate-video.js" "$1" "$2" editly-config.json || handle_error "Failed to generate editly configuration"
22
+ node "$PACKAGE_DIR/build/generate-video.js" $* || handle_error "Failed to generate editly configuration"
23
23
 
24
24
  # Run editly using Docker directly instead of alias
25
25
  echo "Generating video with editly..."
@@ -1,6 +1,6 @@
1
1
  import { getMediafileDuration } from '@haibun/core/build/steps/lib/tts.js';
2
2
  import * as fs from 'fs';
3
- const generateEditlyConfig = async (logEntries, outputPath, inputFilePath, title) => {
3
+ const generateEditlyConfig = async (logEntries, outputPath, jitter, inputFilePath, title, endTitle) => {
4
4
  // Get the base directory from the input file path to resolve relative paths
5
5
  const basePath = inputFilePath.substring(0, inputFilePath.lastIndexOf('/') + 1);
6
6
  console.log(`Base path for assets: ${basePath}`);
@@ -28,65 +28,71 @@ const generateEditlyConfig = async (logEntries, outputPath, inputFilePath, title
28
28
  if (featureStartEntry) {
29
29
  assets.featureStart = featureStartEntry.messageContext.incidentDetails.startTime;
30
30
  }
31
+ else {
32
+ throw new Error('No FEATURE_START with startTime found in log.');
33
+ }
31
34
  const featureEndEntry = logEntries.find(e => e.messageContext?.incident === 'FEATURE_END' && e.messageContext?.incidentDetails?.totalTime);
32
35
  const totalDuration = featureEndEntry.messageContext.incidentDetails.totalTime / 1000;
33
36
  if (!featureEndEntry)
34
37
  throw new Error('No FEATURE_END with totalTime found in log.');
35
- // Find the main video asset
36
38
  if (assets.video.length === 0)
37
39
  throw new Error('No video asset found.');
38
40
  const mainVideoAsset = assets.video[0];
39
41
  const videoFileDuration = await getMediafileDuration(mainVideoAsset.path);
40
- if (!assets.featureStart)
41
- throw new Error('No FEATURE_START with startTime found in log.');
42
- const videoFileStats = fs.statSync(mainVideoAsset.path);
43
- const videoFileBirthOrCtime = videoFileStats.birthtimeMs || videoFileStats.ctimeMs;
44
- const videoLayerStart = (videoFileBirthOrCtime - assets.featureStart) / 1000;
45
- // Print assets
46
- console.log("\nAssets:");
47
- console.log("video:", assets.video.map(v => ({ start: v.start, path: v.path })));
48
- console.log("speech:", assets.speech.map(s => ({ start: s.start, path: s.path })));
49
- console.log("featureStart", assets.featureStart);
50
- console.log("totalDuration", totalDuration);
51
- console.log('videoFileBirthOrCtime', videoFileBirthOrCtime);
52
- console.log("videoFileDuration", videoFileDuration);
53
- console.log("videoLayerStart", videoLayerStart);
54
- // Find the minimum start time among all assets (timeline zero)
55
- const timelineZero = 0;
56
- // Find FEATURE_END for duration
42
+ const videoLayerStart = totalDuration - videoFileDuration;
43
+ const videoStartFromArtifact = logEntries.find(e => e.messageContext?.artifact?.artifactType === 'video/start').messageContext.artifact.start / 1000;
44
+ if (videoStartFromArtifact < 1)
45
+ throw new Error('No video start time found in log.');
46
+ console.info("\nAssets:");
47
+ console.info("video:", assets.video.map(v => ({ start: v.start, path: v.path })));
48
+ console.info("speech:", assets.speech.map(s => ({ start: s.start, path: s.path })));
49
+ console.info("featureStart", assets.featureStart);
50
+ console.info("totalDuration", totalDuration);
51
+ console.info("videoFileDuration", videoFileDuration);
52
+ console.info("videoLayerStart", videoLayerStart);
53
+ console.info('videoStartFromArtifact', videoStartFromArtifact);
54
+ // this is subject to wobble, videoLayerStart or videoStartFromArtifact are forays
55
+ const videoStart = videoStartFromArtifact + jitter;
56
+ const endSlideDuration = 2;
57
57
  // Build layers for the single clip
58
58
  const layers = [];
59
- // Add a title layer at the start, lasting until the video starts
60
- if (videoLayerStart > 0) {
61
- layers.push({
62
- type: 'title',
63
- text: title,
64
- textColor: '#cccccc',
65
- backgroundColor: '#222',
66
- position: 'center',
67
- start: 0,
68
- duration: videoLayerStart,
69
- fadeIn: 0,
70
- transition: null
71
- });
72
- }
73
- // Only add detached-audio for speech assets (no subtitle for speech)
59
+ layers.push({
60
+ type: 'title',
61
+ text: title,
62
+ textColor: '#cccccc',
63
+ backgroundColor: '#222',
64
+ position: 'center',
65
+ start: 0,
66
+ duration: videoStart,
67
+ fadeIn: 0,
68
+ transition: null
69
+ });
74
70
  for (const speech of assets.speech) {
75
- const relStartS = ((speech.start ?? 0) - timelineZero) / 1000;
76
71
  layers.push({
77
72
  type: 'detached-audio',
78
73
  path: speech.path,
79
74
  cutFrom: 0,
80
- start: relStartS,
75
+ start: speech.start / 1000,
81
76
  mixVolume: 100
82
77
  });
83
78
  }
84
79
  layers.push({
85
80
  type: 'video',
86
81
  path: mainVideoAsset.path,
87
- start: videoLayerStart
82
+ start: videoStart
83
+ });
84
+ // Add end slide
85
+ layers.push({
86
+ type: 'title',
87
+ text: endTitle,
88
+ textColor: '#cccccc',
89
+ backgroundColor: '#222',
90
+ position: 'center',
91
+ start: totalDuration,
92
+ duration: endSlideDuration,
93
+ fadeIn: 0,
94
+ transition: null
88
95
  });
89
- // Sort layers by their start time (if present)
90
96
  layers.sort((a, b) => (a.start ?? 0) - (b.start ?? 0));
91
97
  const config = {
92
98
  outPath: outputPath,
@@ -97,7 +103,7 @@ const generateEditlyConfig = async (logEntries, outputPath, inputFilePath, title
97
103
  },
98
104
  clips: [
99
105
  {
100
- duration: totalDuration,
106
+ duration: totalDuration + endSlideDuration,
101
107
  layers
102
108
  }
103
109
  ]
@@ -105,39 +111,45 @@ const generateEditlyConfig = async (logEntries, outputPath, inputFilePath, title
105
111
  return config;
106
112
  };
107
113
  const main = async () => {
108
- try {
109
- if (process.argv.length < 5) {
110
- console.error('Usage: node generate-video.js <inputFile> <outputFile> <configOutput> <title>');
111
- process.exit(1);
114
+ const packageJson = JSON.parse(fs.readFileSync('./package.json', 'utf-8'));
115
+ let jitter = -2;
116
+ const positional = [];
117
+ for (const arg of process.argv.slice(2)) {
118
+ if (arg.startsWith('--jitter=')) {
119
+ const val = arg.split('=')[1];
120
+ if (!isNaN(Number(val))) {
121
+ jitter = Number(val);
122
+ }
123
+ else {
124
+ throw new Error(`Invalid value for --jitter: ${val}`);
125
+ }
126
+ }
127
+ else {
128
+ positional.push(arg);
112
129
  }
113
- const packageJson = JSON.parse(fs.readFileSync('./package.json', 'utf-8'));
114
- const args = process.argv.slice(2);
115
- const inputFile = args[0];
116
- const outputFile = args[1];
117
- const configOutput = args[2];
118
- const title = args[3] || packageJson?.description || packageJson?.name;
119
- console.log(args);
120
- console.log(`Input file: ${inputFile}`);
121
- console.log(`Output video file: ${outputFile}`);
122
- console.log(`Config output: ${configOutput}`);
123
- console.log('Title:', title);
124
- // Read monitor.json
125
- const logData = fs.readFileSync(inputFile, 'utf-8');
126
- const logEntries = JSON.parse(logData);
127
- console.log(`Loaded ${logEntries.length} log entries`);
128
- // Generate editly config
129
- const editlyConfig = await generateEditlyConfig(logEntries, outputFile, inputFile, title);
130
- // Write config to file
131
- fs.writeFileSync(configOutput, JSON.stringify(editlyConfig, null, 2));
132
- console.log(`\nEditly config written to ${configOutput}`);
133
- console.log(`To generate video, run: editly ${configOutput}`);
134
130
  }
135
- catch (error) {
136
- console.error('Error:', error);
131
+ if (positional.length < 3) {
132
+ console.error('Usage: node generate-video.js [--jitter=<n>] <inputFile> <outputFile> <configOutput> [title] [endTitle]');
137
133
  process.exit(1);
138
134
  }
135
+ const defaultTitle = packageJson?.description || packageJson?.name;
136
+ const defaultEndTitle = "End of test";
137
+ const [inputFile, outputFile, configOutput, title, endTitle] = positional;
138
+ console.info('Jitter:', jitter);
139
+ console.info(`Input file: ${inputFile}`);
140
+ console.info(`Output video file: ${outputFile}`);
141
+ console.info(`Config output: ${configOutput}`);
142
+ console.info('Title:', title);
143
+ console.info('End Title:', endTitle);
144
+ const logData = fs.readFileSync(inputFile, 'utf-8');
145
+ const logEntries = JSON.parse(logData);
146
+ console.log(`Loaded ${logEntries.length} log entries`);
147
+ const editlyConfig = await generateEditlyConfig(logEntries, outputFile, jitter, inputFile, title || defaultTitle, endTitle || defaultEndTitle);
148
+ fs.writeFileSync(configOutput, JSON.stringify(editlyConfig, null, 2));
149
+ console.info(`\nEditly config written to ${configOutput}`);
139
150
  };
140
151
  main().catch((error) => {
141
152
  console.error('Error in main function:', error);
153
+ process.exit(1);
142
154
  });
143
155
  //# sourceMappingURL=generate-video.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-video.js","sourceRoot":"","sources":["../src/generate-video.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-video.js","sourceRoot":"","sources":["../src/generate-video.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@haibun/utils",
3
3
  "type": "module",
4
- "version": "1.47.1",
4
+ "version": "1.48.0",
5
5
  "description": "",
6
6
  "main": "index.js",
7
7
  "files": ["ref.package.json", "build/**", "scaffold/**"],
@@ -22,5 +22,5 @@
22
22
  "author": "",
23
23
  "license": "ISC",
24
24
  "gitHead": "7cf9680bd922fb622fb59f1e6bf5b65284cb8fd5",
25
- "dependencies": { "@haibun/cli": "1.47.1", "@haibun/core": "1.47.1" }
25
+ "dependencies": { "@haibun/cli": "1.48.0", "@haibun/core": "1.48.0" }
26
26
  }