nodejs-audio-visualizer 5.5.3 → 5.6.4
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/LICENSE +21 -21
- package/README.md +84 -83
- package/dist/audio.d.ts +13 -13
- package/dist/audio.js +128 -128
- package/dist/beats.d.ts +39 -39
- package/dist/beats.js +220 -220
- package/dist/bpmEncoder.d.ts +14 -14
- package/dist/bpmEncoder.js +97 -97
- package/dist/config.d.ts +81 -80
- package/dist/config.js +392 -391
- package/dist/config.js.map +1 -1
- package/dist/dsp.d.ts +16 -16
- package/dist/dsp.js +76 -76
- package/dist/highlight.d.ts +91 -91
- package/dist/highlight.js +606 -606
- package/dist/image.d.ts +107 -97
- package/dist/image.js +614 -545
- package/dist/image.js.map +1 -1
- package/dist/index.d.ts +98 -96
- package/dist/index.js +673 -667
- package/dist/index.js.map +1 -1
- package/dist/subtitleConvert.d.ts +3 -3
- package/dist/subtitleConvert.js +61 -61
- package/dist/video.d.ts +171 -171
- package/dist/video.js +743 -743
- package/dist/waitForEventLoop.d.ts +1 -1
- package/dist/waitForEventLoop.js +5 -5
- package/package.json +62 -62
- package/src/audio.ts +129 -129
- package/src/beats.ts +279 -279
- package/src/bpmEncoder.ts +97 -97
- package/src/config.ts +504 -501
- package/src/dsp.ts +95 -95
- package/src/highlight.ts +617 -617
- package/src/image.ts +791 -707
- package/src/index.ts +896 -885
- package/src/subtitleConvert.ts +63 -63
- package/src/tests/audio.test.ts +102 -102
- package/src/tests/beats.test.ts +134 -134
- package/src/tests/config.test.ts +568 -553
- package/src/tests/dsp.test.ts +24 -24
- package/src/tests/highlight.test.ts +397 -397
- package/src/tests/image.test.ts +371 -319
- package/src/tests/index.test.ts +180 -180
- package/src/tests/subtitleConvert.test.ts +23 -23
- package/src/tests/video.test.ts +652 -652
- package/src/typings.d.ts +28 -28
- package/src/video.ts +947 -947
- package/src/waitForEventLoop.ts +2 -2
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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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const isLikelyLrc: (text: string) => boolean;
|
|
2
|
-
export declare const lrcToSrt: (lrc: string) => string;
|
|
3
|
-
export declare const normalizeInlineSubtitlesToSrt: (text: string) => string;
|
|
1
|
+
export declare const isLikelyLrc: (text: string) => boolean;
|
|
2
|
+
export declare const lrcToSrt: (lrc: string) => string;
|
|
3
|
+
export declare const normalizeInlineSubtitlesToSrt: (text: string) => string;
|
package/dist/subtitleConvert.js
CHANGED
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/** LRC timestamp line: [mm:ss.xx] text — hundredths optional after dot. */
|
|
4
|
-
var LRC_LINE = /^\[(\d+):(\d+)(?:\.(\d+))?\]\s*(.*)$/;
|
|
5
|
-
exports.isLikelyLrc = function (text) {
|
|
6
|
-
var body = text.replace(/^\uFEFF/, '');
|
|
7
|
-
for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
|
|
8
|
-
var line = _a[_i];
|
|
9
|
-
var t = line.trim();
|
|
10
|
-
if (t.length === 0) {
|
|
11
|
-
continue;
|
|
12
|
-
}
|
|
13
|
-
return LRC_LINE.test(t);
|
|
14
|
-
}
|
|
15
|
-
return false;
|
|
16
|
-
};
|
|
17
|
-
var msToSrtTime = function (ms) {
|
|
18
|
-
var h = Math.floor(ms / 3600000);
|
|
19
|
-
var m = Math.floor((ms % 3600000) / 60000);
|
|
20
|
-
var s = Math.floor((ms % 60000) / 1000);
|
|
21
|
-
var milli = ms % 1000;
|
|
22
|
-
var pad = function (n, w) { return String(n).padStart(w, '0'); };
|
|
23
|
-
return pad(h, 2) + ":" + pad(m, 2) + ":" + pad(s, 2) + "," + pad(milli, 3);
|
|
24
|
-
};
|
|
25
|
-
var DEFAULT_TAIL_MS = 2000;
|
|
26
|
-
exports.lrcToSrt = function (lrc) {
|
|
27
|
-
var body = lrc.replace(/^\uFEFF/, '');
|
|
28
|
-
var entries = [];
|
|
29
|
-
for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
|
|
30
|
-
var line = _a[_i];
|
|
31
|
-
var match = line.trim().match(LRC_LINE);
|
|
32
|
-
if (!match) {
|
|
33
|
-
continue;
|
|
34
|
-
}
|
|
35
|
-
var min = parseInt(match[1], 10);
|
|
36
|
-
var sec = parseInt(match[2], 10);
|
|
37
|
-
var centisec = match[3] !== undefined
|
|
38
|
-
? parseInt(match[3].padEnd(2, '0').slice(0, 2), 10)
|
|
39
|
-
: 0;
|
|
40
|
-
var startMs = (min * 60 + sec) * 1000 + centisec * 10;
|
|
41
|
-
var text = (match[4] || '').trim();
|
|
42
|
-
if (text.length > 0) {
|
|
43
|
-
entries.push({ startMs: startMs, text: text });
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
entries.sort(function (a, b) { return a.startMs - b.startMs; });
|
|
47
|
-
var out = '';
|
|
48
|
-
for (var i = 0; i < entries.length; i++) {
|
|
49
|
-
var start = entries[i].startMs;
|
|
50
|
-
var end = i + 1 < entries.length
|
|
51
|
-
? Math.max(entries[i + 1].startMs, start + 1)
|
|
52
|
-
: start + DEFAULT_TAIL_MS;
|
|
53
|
-
out += i + 1 + "\n";
|
|
54
|
-
out += msToSrtTime(start) + " --> " + msToSrtTime(end) + "\n";
|
|
55
|
-
out += entries[i].text + "\n\n";
|
|
56
|
-
}
|
|
57
|
-
return out.length > 0 ? out.replace(/\n*$/, '\n') : '';
|
|
58
|
-
};
|
|
59
|
-
exports.normalizeInlineSubtitlesToSrt = function (text) {
|
|
60
|
-
return exports.isLikelyLrc(text) ? exports.lrcToSrt(text) : text;
|
|
61
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/** LRC timestamp line: [mm:ss.xx] text — hundredths optional after dot. */
|
|
4
|
+
var LRC_LINE = /^\[(\d+):(\d+)(?:\.(\d+))?\]\s*(.*)$/;
|
|
5
|
+
exports.isLikelyLrc = function (text) {
|
|
6
|
+
var body = text.replace(/^\uFEFF/, '');
|
|
7
|
+
for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
|
|
8
|
+
var line = _a[_i];
|
|
9
|
+
var t = line.trim();
|
|
10
|
+
if (t.length === 0) {
|
|
11
|
+
continue;
|
|
12
|
+
}
|
|
13
|
+
return LRC_LINE.test(t);
|
|
14
|
+
}
|
|
15
|
+
return false;
|
|
16
|
+
};
|
|
17
|
+
var msToSrtTime = function (ms) {
|
|
18
|
+
var h = Math.floor(ms / 3600000);
|
|
19
|
+
var m = Math.floor((ms % 3600000) / 60000);
|
|
20
|
+
var s = Math.floor((ms % 60000) / 1000);
|
|
21
|
+
var milli = ms % 1000;
|
|
22
|
+
var pad = function (n, w) { return String(n).padStart(w, '0'); };
|
|
23
|
+
return pad(h, 2) + ":" + pad(m, 2) + ":" + pad(s, 2) + "," + pad(milli, 3);
|
|
24
|
+
};
|
|
25
|
+
var DEFAULT_TAIL_MS = 2000;
|
|
26
|
+
exports.lrcToSrt = function (lrc) {
|
|
27
|
+
var body = lrc.replace(/^\uFEFF/, '');
|
|
28
|
+
var entries = [];
|
|
29
|
+
for (var _i = 0, _a = body.split(/\r?\n/); _i < _a.length; _i++) {
|
|
30
|
+
var line = _a[_i];
|
|
31
|
+
var match = line.trim().match(LRC_LINE);
|
|
32
|
+
if (!match) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
var min = parseInt(match[1], 10);
|
|
36
|
+
var sec = parseInt(match[2], 10);
|
|
37
|
+
var centisec = match[3] !== undefined
|
|
38
|
+
? parseInt(match[3].padEnd(2, '0').slice(0, 2), 10)
|
|
39
|
+
: 0;
|
|
40
|
+
var startMs = (min * 60 + sec) * 1000 + centisec * 10;
|
|
41
|
+
var text = (match[4] || '').trim();
|
|
42
|
+
if (text.length > 0) {
|
|
43
|
+
entries.push({ startMs: startMs, text: text });
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
entries.sort(function (a, b) { return a.startMs - b.startMs; });
|
|
47
|
+
var out = '';
|
|
48
|
+
for (var i = 0; i < entries.length; i++) {
|
|
49
|
+
var start = entries[i].startMs;
|
|
50
|
+
var end = i + 1 < entries.length
|
|
51
|
+
? Math.max(entries[i + 1].startMs, start + 1)
|
|
52
|
+
: start + DEFAULT_TAIL_MS;
|
|
53
|
+
out += i + 1 + "\n";
|
|
54
|
+
out += msToSrtTime(start) + " --> " + msToSrtTime(end) + "\n";
|
|
55
|
+
out += entries[i].text + "\n\n";
|
|
56
|
+
}
|
|
57
|
+
return out.length > 0 ? out.replace(/\n*$/, '\n') : '';
|
|
58
|
+
};
|
|
59
|
+
exports.normalizeInlineSubtitlesToSrt = function (text) {
|
|
60
|
+
return exports.isLikelyLrc(text) ? exports.lrcToSrt(text) : text;
|
|
61
|
+
};
|
|
62
62
|
//# sourceMappingURL=subtitleConvert.js.map
|
package/dist/video.d.ts
CHANGED
|
@@ -1,171 +1,171 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { Readable, Writable } from 'stream';
|
|
3
|
-
import { TempoEstimate } from './beats';
|
|
4
|
-
export interface AudioMuxSegment {
|
|
5
|
-
seekSeconds: number;
|
|
6
|
-
durationSeconds: number;
|
|
7
|
-
/** Silence played before the audio. */
|
|
8
|
-
delaySeconds?: number;
|
|
9
|
-
}
|
|
10
|
-
interface FfmpegVideoWriterConfig {
|
|
11
|
-
audioFilename: string;
|
|
12
|
-
subtitleFilename?: string;
|
|
13
|
-
/** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
|
|
14
|
-
subtitleAlignmentAss?: number;
|
|
15
|
-
videoFileName: string;
|
|
16
|
-
fps: number;
|
|
17
|
-
crf?: string;
|
|
18
|
-
preset?: string;
|
|
19
|
-
/** Denoise, sharpen and boost contrast/saturation of the output video. */
|
|
20
|
-
enhanceFilters?: boolean;
|
|
21
|
-
onStderr?: (data: any) => any;
|
|
22
|
-
/** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
|
|
23
|
-
audioSeekSeconds?: number;
|
|
24
|
-
audioDurationSeconds?: number;
|
|
25
|
-
/** One contiguous trim of the same audio file (muxed highlight). */
|
|
26
|
-
audioSegment?: AudioMuxSegment;
|
|
27
|
-
/**
|
|
28
|
-
* Audio mixed over the start of the track (e.g. the hook video's sound), from its beginning.
|
|
29
|
-
* The track fades in from silence to full volume while it plays, along an easeInQuint curve.
|
|
30
|
-
*/
|
|
31
|
-
overlayAudio?: {
|
|
32
|
-
filename: string;
|
|
33
|
-
durationSeconds: number;
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
|
|
37
|
-
export interface VideoInfo {
|
|
38
|
-
width: number;
|
|
39
|
-
height: number;
|
|
40
|
-
duration: number;
|
|
41
|
-
hasAudio: boolean;
|
|
42
|
-
}
|
|
43
|
-
export interface SceneChange {
|
|
44
|
-
frameNumber: number;
|
|
45
|
-
pts: number;
|
|
46
|
-
ptsTime: number;
|
|
47
|
-
}
|
|
48
|
-
export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
|
|
49
|
-
/**
|
|
50
|
-
* Number of whole frames the video stream yields at `fps` (partial last frames dropped).
|
|
51
|
-
* Unlike the container duration, this never runs past the last video frame (e.g. when the
|
|
52
|
-
* audio stream is longer), so a clip read for this many frames never wraps back to its start.
|
|
53
|
-
*/
|
|
54
|
-
export declare const getVideoFrameCount: (videoPath: string, fps: number) => Promise<number>;
|
|
55
|
-
export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
|
|
56
|
-
export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
|
|
57
|
-
export declare const spawnVideoFrameReader: (config: {
|
|
58
|
-
videoPath: string;
|
|
59
|
-
fps: number;
|
|
60
|
-
totalFrames: number;
|
|
61
|
-
width?: number | undefined;
|
|
62
|
-
height?: number | undefined;
|
|
63
|
-
sourceWidth?: number | undefined;
|
|
64
|
-
sourceHeight?: number | undefined;
|
|
65
|
-
}) => import("child_process").ChildProcessWithoutNullStreams;
|
|
66
|
-
export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
|
|
67
|
-
export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
|
|
68
|
-
export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
|
|
69
|
-
export declare const waitDrain: (stream: Writable, processStream?: {
|
|
70
|
-
once: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
71
|
-
removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
72
|
-
} | undefined, timeoutMs?: number) => Promise<boolean>;
|
|
73
|
-
export interface ProcessExitResult {
|
|
74
|
-
exitCode: number;
|
|
75
|
-
reason?: string;
|
|
76
|
-
}
|
|
77
|
-
export declare const waitForProcessExit: (processStream: {
|
|
78
|
-
once: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
79
|
-
removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
80
|
-
}, timeoutMs?: number) => Promise<ProcessExitResult>;
|
|
81
|
-
export interface VideoSegment {
|
|
82
|
-
outputStartFrame: number;
|
|
83
|
-
videoSeekSeconds: number;
|
|
84
|
-
frameCount: number;
|
|
85
|
-
/** Index into the background video sources array; defaults to 0 when omitted. */
|
|
86
|
-
videoIndex?: number;
|
|
87
|
-
}
|
|
88
|
-
/** Minimum time between auto-edit cuts; cuts still land on beats. */
|
|
89
|
-
export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
|
|
90
|
-
/** Window after the minimum gap in which the strongest beat is chosen. */
|
|
91
|
-
export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
|
|
92
|
-
/** Half a bar of 4/4, used as the minimum gap when tempo is known. */
|
|
93
|
-
export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
|
|
94
|
-
/** One bar of 4/4, used as the maximum gap when tempo is known. */
|
|
95
|
-
export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
|
|
96
|
-
/** Snap an onset to the tempo grid when it is within this fraction of a beat. */
|
|
97
|
-
export declare const BEAT_SNAP_TOLERANCE = 0.25;
|
|
98
|
-
export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
|
|
99
|
-
minCutIntervalSeconds: number;
|
|
100
|
-
maxCutIntervalSeconds: number;
|
|
101
|
-
};
|
|
102
|
-
export declare const snapBeatsToTempoGrid: (beats: {
|
|
103
|
-
frameIndex: number;
|
|
104
|
-
intensity?: number | undefined;
|
|
105
|
-
}[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
|
|
106
|
-
frameIndex: number;
|
|
107
|
-
intensity?: number | undefined;
|
|
108
|
-
}[];
|
|
109
|
-
/** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
|
|
110
|
-
export declare const projectBeatsOntoTempoGrid: (beats: {
|
|
111
|
-
frameIndex: number;
|
|
112
|
-
intensity?: number | undefined;
|
|
113
|
-
}[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
|
|
114
|
-
frameIndex: number;
|
|
115
|
-
intensity?: number | undefined;
|
|
116
|
-
}[];
|
|
117
|
-
export declare const selectAutoEditCutFrames: (beats: {
|
|
118
|
-
frameIndex: number;
|
|
119
|
-
intensity?: number | undefined;
|
|
120
|
-
}[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
|
|
121
|
-
/**
|
|
122
|
-
* Splits `totalFrames` into segments that cycle through `videoDurations` in order, each
|
|
123
|
-
* segment playing one source video from the start. Used for `video.path` arrays with
|
|
124
|
-
* `autoEdit` disabled, so the given videos play one after another (looping the sequence).
|
|
125
|
-
* `startVideoIndex` rotates which video plays first (e.g. so separate auto-highlight outputs
|
|
126
|
-
* each open with a different video).
|
|
127
|
-
*/
|
|
128
|
-
export declare const buildSequentialVideoSegments: (totalFrames: number, videoDurations: number[], fps: number, startVideoIndex?: number) => VideoSegment[];
|
|
129
|
-
/**
|
|
130
|
-
* Builds auto-edit cut segments like `buildBeatSyncedSegments`, but instead of switching
|
|
131
|
-
* between detected scenes within a single video, each segment is assigned a video from
|
|
132
|
-
* `videoCount` sources. Videos are picked by shuffling the full set into a "bag" and cycling
|
|
133
|
-
* through it (reshuffling once exhausted), rather than picking uniformly at random each time,
|
|
134
|
-
* so every video plays about as often as the others instead of some clumping together while
|
|
135
|
-
* others go unpicked for long stretches. The same video never plays twice in a row, including
|
|
136
|
-
* across a reshuffle.
|
|
137
|
-
*/
|
|
138
|
-
export declare const buildShuffledVideoSegments: (beatFrameIndices: number[], totalFrames: number, videoCount: number, fps: number, options?: {
|
|
139
|
-
beatIntensities?: number[] | undefined;
|
|
140
|
-
minCutIntervalSeconds?: number | undefined;
|
|
141
|
-
maxCutIntervalSeconds?: number | undefined;
|
|
142
|
-
tempo?: TempoEstimate | undefined;
|
|
143
|
-
randomFn?: (() => number) | undefined;
|
|
144
|
-
} | undefined) => VideoSegment[];
|
|
145
|
-
export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
|
|
146
|
-
beatIntensities?: number[] | undefined;
|
|
147
|
-
minCutIntervalSeconds?: number | undefined;
|
|
148
|
-
maxCutIntervalSeconds?: number | undefined;
|
|
149
|
-
tempo?: TempoEstimate | undefined;
|
|
150
|
-
} | undefined) => VideoSegment[];
|
|
151
|
-
/** Output frames given to the hook video: it plays in full, but never exceeds `totalFrames`. */
|
|
152
|
-
export declare const computeHookFrameCount: (hookDurationSeconds: number, fps: number, totalFrames: number) => number;
|
|
153
|
-
export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
|
|
154
|
-
export interface VideoSourceInfo {
|
|
155
|
-
path: string;
|
|
156
|
-
duration: number;
|
|
157
|
-
}
|
|
158
|
-
export declare const writeConcatFile: (segments: VideoSegment[], videoSources: VideoSourceInfo[], fps: number) => string;
|
|
159
|
-
export declare const writeSubtitlesFile: (subtitles: string) => string;
|
|
160
|
-
export declare const spawnConcatVideoFrameReader: (config: {
|
|
161
|
-
concatFilePath: string;
|
|
162
|
-
fps: number;
|
|
163
|
-
totalFrames: number;
|
|
164
|
-
width?: number | undefined;
|
|
165
|
-
height?: number | undefined;
|
|
166
|
-
sourceWidth?: number | undefined;
|
|
167
|
-
sourceHeight?: number | undefined;
|
|
168
|
-
}) => import("child_process").ChildProcessWithoutNullStreams;
|
|
169
|
-
export declare const cleanupTempFile: (filePath: string) => void;
|
|
170
|
-
export declare const cleanupConcatFile: (filePath: string) => void;
|
|
171
|
-
export {};
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Readable, Writable } from 'stream';
|
|
3
|
+
import { TempoEstimate } from './beats';
|
|
4
|
+
export interface AudioMuxSegment {
|
|
5
|
+
seekSeconds: number;
|
|
6
|
+
durationSeconds: number;
|
|
7
|
+
/** Silence played before the audio. */
|
|
8
|
+
delaySeconds?: number;
|
|
9
|
+
}
|
|
10
|
+
interface FfmpegVideoWriterConfig {
|
|
11
|
+
audioFilename: string;
|
|
12
|
+
subtitleFilename?: string;
|
|
13
|
+
/** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
|
|
14
|
+
subtitleAlignmentAss?: number;
|
|
15
|
+
videoFileName: string;
|
|
16
|
+
fps: number;
|
|
17
|
+
crf?: string;
|
|
18
|
+
preset?: string;
|
|
19
|
+
/** Denoise, sharpen and boost contrast/saturation of the output video. */
|
|
20
|
+
enhanceFilters?: boolean;
|
|
21
|
+
onStderr?: (data: any) => any;
|
|
22
|
+
/** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
|
|
23
|
+
audioSeekSeconds?: number;
|
|
24
|
+
audioDurationSeconds?: number;
|
|
25
|
+
/** One contiguous trim of the same audio file (muxed highlight). */
|
|
26
|
+
audioSegment?: AudioMuxSegment;
|
|
27
|
+
/**
|
|
28
|
+
* Audio mixed over the start of the track (e.g. the hook video's sound), from its beginning.
|
|
29
|
+
* The track fades in from silence to full volume while it plays, along an easeInQuint curve.
|
|
30
|
+
*/
|
|
31
|
+
overlayAudio?: {
|
|
32
|
+
filename: string;
|
|
33
|
+
durationSeconds: number;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
|
|
37
|
+
export interface VideoInfo {
|
|
38
|
+
width: number;
|
|
39
|
+
height: number;
|
|
40
|
+
duration: number;
|
|
41
|
+
hasAudio: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface SceneChange {
|
|
44
|
+
frameNumber: number;
|
|
45
|
+
pts: number;
|
|
46
|
+
ptsTime: number;
|
|
47
|
+
}
|
|
48
|
+
export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Number of whole frames the video stream yields at `fps` (partial last frames dropped).
|
|
51
|
+
* Unlike the container duration, this never runs past the last video frame (e.g. when the
|
|
52
|
+
* audio stream is longer), so a clip read for this many frames never wraps back to its start.
|
|
53
|
+
*/
|
|
54
|
+
export declare const getVideoFrameCount: (videoPath: string, fps: number) => Promise<number>;
|
|
55
|
+
export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
|
|
56
|
+
export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
|
|
57
|
+
export declare const spawnVideoFrameReader: (config: {
|
|
58
|
+
videoPath: string;
|
|
59
|
+
fps: number;
|
|
60
|
+
totalFrames: number;
|
|
61
|
+
width?: number | undefined;
|
|
62
|
+
height?: number | undefined;
|
|
63
|
+
sourceWidth?: number | undefined;
|
|
64
|
+
sourceHeight?: number | undefined;
|
|
65
|
+
}) => import("child_process").ChildProcessWithoutNullStreams;
|
|
66
|
+
export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
|
|
67
|
+
export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
|
|
68
|
+
export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
|
|
69
|
+
export declare const waitDrain: (stream: Writable, processStream?: {
|
|
70
|
+
once: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
71
|
+
removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
72
|
+
} | undefined, timeoutMs?: number) => Promise<boolean>;
|
|
73
|
+
export interface ProcessExitResult {
|
|
74
|
+
exitCode: number;
|
|
75
|
+
reason?: string;
|
|
76
|
+
}
|
|
77
|
+
export declare const waitForProcessExit: (processStream: {
|
|
78
|
+
once: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
79
|
+
removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
|
|
80
|
+
}, timeoutMs?: number) => Promise<ProcessExitResult>;
|
|
81
|
+
export interface VideoSegment {
|
|
82
|
+
outputStartFrame: number;
|
|
83
|
+
videoSeekSeconds: number;
|
|
84
|
+
frameCount: number;
|
|
85
|
+
/** Index into the background video sources array; defaults to 0 when omitted. */
|
|
86
|
+
videoIndex?: number;
|
|
87
|
+
}
|
|
88
|
+
/** Minimum time between auto-edit cuts; cuts still land on beats. */
|
|
89
|
+
export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
|
|
90
|
+
/** Window after the minimum gap in which the strongest beat is chosen. */
|
|
91
|
+
export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
|
|
92
|
+
/** Half a bar of 4/4, used as the minimum gap when tempo is known. */
|
|
93
|
+
export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
|
|
94
|
+
/** One bar of 4/4, used as the maximum gap when tempo is known. */
|
|
95
|
+
export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
|
|
96
|
+
/** Snap an onset to the tempo grid when it is within this fraction of a beat. */
|
|
97
|
+
export declare const BEAT_SNAP_TOLERANCE = 0.25;
|
|
98
|
+
export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
|
|
99
|
+
minCutIntervalSeconds: number;
|
|
100
|
+
maxCutIntervalSeconds: number;
|
|
101
|
+
};
|
|
102
|
+
export declare const snapBeatsToTempoGrid: (beats: {
|
|
103
|
+
frameIndex: number;
|
|
104
|
+
intensity?: number | undefined;
|
|
105
|
+
}[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
|
|
106
|
+
frameIndex: number;
|
|
107
|
+
intensity?: number | undefined;
|
|
108
|
+
}[];
|
|
109
|
+
/** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
|
|
110
|
+
export declare const projectBeatsOntoTempoGrid: (beats: {
|
|
111
|
+
frameIndex: number;
|
|
112
|
+
intensity?: number | undefined;
|
|
113
|
+
}[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
|
|
114
|
+
frameIndex: number;
|
|
115
|
+
intensity?: number | undefined;
|
|
116
|
+
}[];
|
|
117
|
+
export declare const selectAutoEditCutFrames: (beats: {
|
|
118
|
+
frameIndex: number;
|
|
119
|
+
intensity?: number | undefined;
|
|
120
|
+
}[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
|
|
121
|
+
/**
|
|
122
|
+
* Splits `totalFrames` into segments that cycle through `videoDurations` in order, each
|
|
123
|
+
* segment playing one source video from the start. Used for `video.path` arrays with
|
|
124
|
+
* `autoEdit` disabled, so the given videos play one after another (looping the sequence).
|
|
125
|
+
* `startVideoIndex` rotates which video plays first (e.g. so separate auto-highlight outputs
|
|
126
|
+
* each open with a different video).
|
|
127
|
+
*/
|
|
128
|
+
export declare const buildSequentialVideoSegments: (totalFrames: number, videoDurations: number[], fps: number, startVideoIndex?: number) => VideoSegment[];
|
|
129
|
+
/**
|
|
130
|
+
* Builds auto-edit cut segments like `buildBeatSyncedSegments`, but instead of switching
|
|
131
|
+
* between detected scenes within a single video, each segment is assigned a video from
|
|
132
|
+
* `videoCount` sources. Videos are picked by shuffling the full set into a "bag" and cycling
|
|
133
|
+
* through it (reshuffling once exhausted), rather than picking uniformly at random each time,
|
|
134
|
+
* so every video plays about as often as the others instead of some clumping together while
|
|
135
|
+
* others go unpicked for long stretches. The same video never plays twice in a row, including
|
|
136
|
+
* across a reshuffle.
|
|
137
|
+
*/
|
|
138
|
+
export declare const buildShuffledVideoSegments: (beatFrameIndices: number[], totalFrames: number, videoCount: number, fps: number, options?: {
|
|
139
|
+
beatIntensities?: number[] | undefined;
|
|
140
|
+
minCutIntervalSeconds?: number | undefined;
|
|
141
|
+
maxCutIntervalSeconds?: number | undefined;
|
|
142
|
+
tempo?: TempoEstimate | undefined;
|
|
143
|
+
randomFn?: (() => number) | undefined;
|
|
144
|
+
} | undefined) => VideoSegment[];
|
|
145
|
+
export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
|
|
146
|
+
beatIntensities?: number[] | undefined;
|
|
147
|
+
minCutIntervalSeconds?: number | undefined;
|
|
148
|
+
maxCutIntervalSeconds?: number | undefined;
|
|
149
|
+
tempo?: TempoEstimate | undefined;
|
|
150
|
+
} | undefined) => VideoSegment[];
|
|
151
|
+
/** Output frames given to the hook video: it plays in full, but never exceeds `totalFrames`. */
|
|
152
|
+
export declare const computeHookFrameCount: (hookDurationSeconds: number, fps: number, totalFrames: number) => number;
|
|
153
|
+
export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
|
|
154
|
+
export interface VideoSourceInfo {
|
|
155
|
+
path: string;
|
|
156
|
+
duration: number;
|
|
157
|
+
}
|
|
158
|
+
export declare const writeConcatFile: (segments: VideoSegment[], videoSources: VideoSourceInfo[], fps: number) => string;
|
|
159
|
+
export declare const writeSubtitlesFile: (subtitles: string) => string;
|
|
160
|
+
export declare const spawnConcatVideoFrameReader: (config: {
|
|
161
|
+
concatFilePath: string;
|
|
162
|
+
fps: number;
|
|
163
|
+
totalFrames: number;
|
|
164
|
+
width?: number | undefined;
|
|
165
|
+
height?: number | undefined;
|
|
166
|
+
sourceWidth?: number | undefined;
|
|
167
|
+
sourceHeight?: number | undefined;
|
|
168
|
+
}) => import("child_process").ChildProcessWithoutNullStreams;
|
|
169
|
+
export declare const cleanupTempFile: (filePath: string) => void;
|
|
170
|
+
export declare const cleanupConcatFile: (filePath: string) => void;
|
|
171
|
+
export {};
|