nodejs-audio-visualizer 5.1.0 → 5.3.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.
Files changed (51) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +81 -80
  3. package/dist/audio.d.ts +13 -13
  4. package/dist/audio.js +128 -128
  5. package/dist/beats.d.ts +39 -39
  6. package/dist/beats.js +220 -220
  7. package/dist/bpmEncoder.d.ts +14 -14
  8. package/dist/bpmEncoder.js +97 -97
  9. package/dist/config.d.ts +78 -77
  10. package/dist/config.js +377 -369
  11. package/dist/config.js.map +1 -1
  12. package/dist/dsp.d.ts +16 -16
  13. package/dist/dsp.js +76 -76
  14. package/dist/highlight.d.ts +66 -34
  15. package/dist/highlight.js +471 -334
  16. package/dist/highlight.js.map +1 -1
  17. package/dist/image.d.ts +97 -92
  18. package/dist/image.js +545 -538
  19. package/dist/image.js.map +1 -1
  20. package/dist/index.d.ts +87 -79
  21. package/dist/index.js +598 -566
  22. package/dist/index.js.map +1 -1
  23. package/dist/subtitleConvert.d.ts +3 -3
  24. package/dist/subtitleConvert.js +61 -61
  25. package/dist/video.d.ts +150 -120
  26. package/dist/video.js +677 -582
  27. package/dist/video.js.map +1 -1
  28. package/dist/waitForEventLoop.d.ts +1 -1
  29. package/dist/waitForEventLoop.js +5 -5
  30. package/package.json +62 -62
  31. package/src/audio.ts +129 -129
  32. package/src/beats.ts +279 -279
  33. package/src/bpmEncoder.ts +97 -97
  34. package/src/config.ts +487 -476
  35. package/src/dsp.ts +95 -95
  36. package/src/highlight.ts +451 -291
  37. package/src/image.ts +707 -700
  38. package/src/index.ts +813 -769
  39. package/src/subtitleConvert.ts +63 -63
  40. package/src/tests/audio.test.ts +102 -102
  41. package/src/tests/beats.test.ts +134 -134
  42. package/src/tests/config.test.ts +534 -496
  43. package/src/tests/dsp.test.ts +24 -24
  44. package/src/tests/highlight.test.ts +261 -178
  45. package/src/tests/image.test.ts +319 -308
  46. package/src/tests/index.test.ts +180 -180
  47. package/src/tests/subtitleConvert.test.ts +23 -23
  48. package/src/tests/video.test.ts +535 -447
  49. package/src/typings.d.ts +28 -28
  50. package/src/video.ts +856 -722
  51. 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;
@@ -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,120 +1,150 @@
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
- }
8
- interface FfmpegVideoWriterConfig {
9
- audioFilename: string;
10
- subtitleFilename?: string;
11
- /** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
12
- subtitleAlignmentAss?: number;
13
- videoFileName: string;
14
- fps: number;
15
- crf?: string;
16
- preset?: string;
17
- onStderr?: (data: any) => any;
18
- /** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
19
- audioSeekSeconds?: number;
20
- audioDurationSeconds?: number;
21
- /** One contiguous trim of the same audio file (muxed highlight). */
22
- audioSegment?: AudioMuxSegment;
23
- }
24
- export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
25
- export interface VideoInfo {
26
- width: number;
27
- height: number;
28
- duration: number;
29
- }
30
- export interface SceneChange {
31
- frameNumber: number;
32
- pts: number;
33
- ptsTime: number;
34
- }
35
- export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
36
- export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
37
- export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
38
- export declare const spawnVideoFrameReader: (config: {
39
- videoPath: string;
40
- fps: number;
41
- totalFrames: number;
42
- width?: number | undefined;
43
- height?: number | undefined;
44
- sourceWidth?: number | undefined;
45
- sourceHeight?: number | undefined;
46
- }) => import("child_process").ChildProcessWithoutNullStreams;
47
- export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
48
- export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
49
- export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
50
- export declare const waitDrain: (stream: Writable, processStream?: {
51
- once: (eventName: string, listener: (...args: any[]) => void) => any;
52
- removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
53
- } | undefined, timeoutMs?: number) => Promise<boolean>;
54
- export interface ProcessExitResult {
55
- exitCode: number;
56
- reason?: string;
57
- }
58
- export declare const waitForProcessExit: (processStream: {
59
- once: (eventName: string, listener: (...args: any[]) => void) => any;
60
- removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
61
- }, timeoutMs?: number) => Promise<ProcessExitResult>;
62
- export interface VideoSegment {
63
- outputStartFrame: number;
64
- videoSeekSeconds: number;
65
- frameCount: number;
66
- }
67
- /** Minimum time between auto-edit cuts; cuts still land on beats. */
68
- export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
69
- /** Window after the minimum gap in which the strongest beat is chosen. */
70
- export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
71
- /** Half a bar of 4/4, used as the minimum gap when tempo is known. */
72
- export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
73
- /** One bar of 4/4, used as the maximum gap when tempo is known. */
74
- export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
75
- /** Snap an onset to the tempo grid when it is within this fraction of a beat. */
76
- export declare const BEAT_SNAP_TOLERANCE = 0.25;
77
- export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
78
- minCutIntervalSeconds: number;
79
- maxCutIntervalSeconds: number;
80
- };
81
- export declare const snapBeatsToTempoGrid: (beats: {
82
- frameIndex: number;
83
- intensity?: number | undefined;
84
- }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
85
- frameIndex: number;
86
- intensity?: number | undefined;
87
- }[];
88
- /** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
89
- export declare const projectBeatsOntoTempoGrid: (beats: {
90
- frameIndex: number;
91
- intensity?: number | undefined;
92
- }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
93
- frameIndex: number;
94
- intensity?: number | undefined;
95
- }[];
96
- export declare const selectAutoEditCutFrames: (beats: {
97
- frameIndex: number;
98
- intensity?: number | undefined;
99
- }[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
100
- export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
101
- beatIntensities?: number[] | undefined;
102
- minCutIntervalSeconds?: number | undefined;
103
- maxCutIntervalSeconds?: number | undefined;
104
- tempo?: TempoEstimate | undefined;
105
- } | undefined) => VideoSegment[];
106
- export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
107
- export declare const writeConcatFile: (segments: VideoSegment[], videoPath: string, videoDuration: number, fps: number) => string;
108
- export declare const writeSubtitlesFile: (subtitles: string) => string;
109
- export declare const spawnConcatVideoFrameReader: (config: {
110
- concatFilePath: string;
111
- fps: number;
112
- totalFrames: number;
113
- width?: number | undefined;
114
- height?: number | undefined;
115
- sourceWidth?: number | undefined;
116
- sourceHeight?: number | undefined;
117
- }) => import("child_process").ChildProcessWithoutNullStreams;
118
- export declare const cleanupTempFile: (filePath: string) => void;
119
- export declare const cleanupConcatFile: (filePath: string) => void;
120
- 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
+ }
8
+ interface FfmpegVideoWriterConfig {
9
+ audioFilename: string;
10
+ subtitleFilename?: string;
11
+ /** ASS `Alignment` in FFmpeg `subtitles` `force_style` (e.g. 2 bottom, 5 middle, 8 top). Default 2. */
12
+ subtitleAlignmentAss?: number;
13
+ videoFileName: string;
14
+ fps: number;
15
+ crf?: string;
16
+ preset?: string;
17
+ onStderr?: (data: any) => any;
18
+ /** When set with `audioDurationSeconds`, passed to ffmpeg before `-i` for muxed highlight. */
19
+ audioSeekSeconds?: number;
20
+ audioDurationSeconds?: number;
21
+ /** One contiguous trim of the same audio file (muxed highlight). */
22
+ audioSegment?: AudioMuxSegment;
23
+ }
24
+ export declare const spawnFfmpegVideoWriter: (config: FfmpegVideoWriterConfig) => import("child_process").ChildProcessWithoutNullStreams;
25
+ export interface VideoInfo {
26
+ width: number;
27
+ height: number;
28
+ duration: number;
29
+ }
30
+ export interface SceneChange {
31
+ frameNumber: number;
32
+ pts: number;
33
+ ptsTime: number;
34
+ }
35
+ export declare const detectSceneChanges: (videoPath: string, threshold?: number) => Promise<SceneChange[]>;
36
+ export declare const getVideoInfo: (videoPath: string) => Promise<VideoInfo>;
37
+ export declare const buildVideoFilter: (sourceWidth: number, sourceHeight: number, targetWidth: number, targetHeight: number) => string;
38
+ export declare const spawnVideoFrameReader: (config: {
39
+ videoPath: string;
40
+ fps: number;
41
+ totalFrames: number;
42
+ width?: number | undefined;
43
+ height?: number | undefined;
44
+ sourceWidth?: number | undefined;
45
+ sourceHeight?: number | undefined;
46
+ }) => import("child_process").ChildProcessWithoutNullStreams;
47
+ export declare const readVideoFrame: (stream: Readable, frameSize: number, timeoutMs?: number) => Promise<Buffer | null>;
48
+ export declare const getProgress: (onProgress: (currentFrame: number) => any) => (stderrOutput: Buffer) => void;
49
+ export declare const calculateProgress: (framesCount: number, callback: (progress: number) => any) => (currentFrame: number) => any;
50
+ export declare const waitDrain: (stream: Writable, processStream?: {
51
+ once: (eventName: string, listener: (...args: any[]) => void) => any;
52
+ removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
53
+ } | undefined, timeoutMs?: number) => Promise<boolean>;
54
+ export interface ProcessExitResult {
55
+ exitCode: number;
56
+ reason?: string;
57
+ }
58
+ export declare const waitForProcessExit: (processStream: {
59
+ once: (eventName: string, listener: (...args: any[]) => void) => any;
60
+ removeListener: (eventName: string, listener: (...args: any[]) => void) => any;
61
+ }, timeoutMs?: number) => Promise<ProcessExitResult>;
62
+ export interface VideoSegment {
63
+ outputStartFrame: number;
64
+ videoSeekSeconds: number;
65
+ frameCount: number;
66
+ /** Index into the background video sources array; defaults to 0 when omitted. */
67
+ videoIndex?: number;
68
+ }
69
+ /** Minimum time between auto-edit cuts; cuts still land on beats. */
70
+ export declare const DEFAULT_AUTO_EDIT_MIN_CUT_INTERVAL_SECONDS = 2;
71
+ /** Window after the minimum gap in which the strongest beat is chosen. */
72
+ export declare const DEFAULT_AUTO_EDIT_MAX_CUT_INTERVAL_SECONDS = 4;
73
+ /** Half a bar of 4/4, used as the minimum gap when tempo is known. */
74
+ export declare const AUTO_EDIT_MIN_CUT_BEATS = 2;
75
+ /** One bar of 4/4, used as the maximum gap when tempo is known. */
76
+ export declare const AUTO_EDIT_MAX_CUT_BEATS = 4;
77
+ /** Snap an onset to the tempo grid when it is within this fraction of a beat. */
78
+ export declare const BEAT_SNAP_TOLERANCE = 0.25;
79
+ export declare const cutIntervalSecondsFromTempo: (bpm: number) => {
80
+ minCutIntervalSeconds: number;
81
+ maxCutIntervalSeconds: number;
82
+ };
83
+ export declare const snapBeatsToTempoGrid: (beats: {
84
+ frameIndex: number;
85
+ intensity?: number | undefined;
86
+ }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
87
+ frameIndex: number;
88
+ intensity?: number | undefined;
89
+ }[];
90
+ /** Every BPM-grid beat, with onset intensity copied onto the nearest grid frame. */
91
+ export declare const projectBeatsOntoTempoGrid: (beats: {
92
+ frameIndex: number;
93
+ intensity?: number | undefined;
94
+ }[], tempo: Pick<TempoEstimate, "periodFrames" | "phaseFrame">, totalFrames: number) => {
95
+ frameIndex: number;
96
+ intensity?: number | undefined;
97
+ }[];
98
+ export declare const selectAutoEditCutFrames: (beats: {
99
+ frameIndex: number;
100
+ intensity?: number | undefined;
101
+ }[], fps: number, totalFrames: number, minIntervalSeconds?: number, maxIntervalSeconds?: number) => number[];
102
+ /**
103
+ * Splits `totalFrames` into segments that cycle through `videoDurations` in order, each
104
+ * segment playing one source video from the start. Used for `video.path` arrays with
105
+ * `autoEdit` disabled, so the given videos play one after another (looping the sequence).
106
+ * `startVideoIndex` rotates which video plays first (e.g. so separate auto-highlight outputs
107
+ * each open with a different video).
108
+ */
109
+ export declare const buildSequentialVideoSegments: (totalFrames: number, videoDurations: number[], fps: number, startVideoIndex?: number) => VideoSegment[];
110
+ /**
111
+ * Builds auto-edit cut segments like `buildBeatSyncedSegments`, but instead of switching
112
+ * between detected scenes within a single video, each segment is assigned a video from
113
+ * `videoCount` sources. Videos are picked by shuffling the full set into a "bag" and cycling
114
+ * through it (reshuffling once exhausted), rather than picking uniformly at random each time,
115
+ * so every video plays about as often as the others instead of some clumping together while
116
+ * others go unpicked for long stretches. The same video never plays twice in a row, including
117
+ * across a reshuffle.
118
+ */
119
+ export declare const buildShuffledVideoSegments: (beatFrameIndices: number[], totalFrames: number, videoCount: number, fps: number, options?: {
120
+ beatIntensities?: number[] | undefined;
121
+ minCutIntervalSeconds?: number | undefined;
122
+ maxCutIntervalSeconds?: number | undefined;
123
+ tempo?: TempoEstimate | undefined;
124
+ randomFn?: (() => number) | undefined;
125
+ } | undefined) => VideoSegment[];
126
+ export declare const buildBeatSyncedSegments: (beatFrameIndices: number[], totalFrames: number, sceneChanges: SceneChange[], videoDuration: number, fps: number, options?: {
127
+ beatIntensities?: number[] | undefined;
128
+ minCutIntervalSeconds?: number | undefined;
129
+ maxCutIntervalSeconds?: number | undefined;
130
+ tempo?: TempoEstimate | undefined;
131
+ } | undefined) => VideoSegment[];
132
+ export declare const getCutFrameIndices: (segments: VideoSegment[]) => number[];
133
+ export interface VideoSourceInfo {
134
+ path: string;
135
+ duration: number;
136
+ }
137
+ export declare const writeConcatFile: (segments: VideoSegment[], videoSources: VideoSourceInfo[], fps: number) => string;
138
+ export declare const writeSubtitlesFile: (subtitles: string) => string;
139
+ export declare const spawnConcatVideoFrameReader: (config: {
140
+ concatFilePath: string;
141
+ fps: number;
142
+ totalFrames: number;
143
+ width?: number | undefined;
144
+ height?: number | undefined;
145
+ sourceWidth?: number | undefined;
146
+ sourceHeight?: number | undefined;
147
+ }) => import("child_process").ChildProcessWithoutNullStreams;
148
+ export declare const cleanupTempFile: (filePath: string) => void;
149
+ export declare const cleanupConcatFile: (filePath: string) => void;
150
+ export {};