@rendley/sdk 1.13.0 → 1.14.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.
- package/dist/Engine.d.ts +61 -55
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/libs/ffmpeg/classes.d.ts +1 -0
- package/dist/libs/ffmpeg/const.d.ts +1 -0
- package/dist/libs/ffmpeg/types.d.ts +6 -2
- package/dist/modules/clip/clips/adjustment/AdjustmentClip.d.ts +1 -0
- package/dist/modules/clip/clips/audio/AudioClip.d.ts +1 -1
- package/dist/modules/clip/clips/gif/GifClip.d.ts +1 -0
- package/dist/modules/clip/clips/htmlText/HtmlTextClip.d.ts +1 -1
- package/dist/modules/clip/clips/lottie/LottieClip.d.ts +1 -1
- package/dist/modules/clip/clips/shape/ShapeStyle.d.ts +4 -4
- package/dist/modules/clip/clips/text/TextClip.d.ts +1 -1
- package/dist/modules/clip/clips/text/TextStyle.d.ts +4 -4
- package/dist/modules/clip/clips/video/VideoClip.d.ts +5 -1
- package/dist/modules/ffmpeg/FFmpeg.d.ts +1 -0
- package/dist/modules/filmstrip-extractor/FilmstripExtractor.d.ts +1 -1
- package/dist/modules/filmstrip-extractor/FilmstripExtractor.types.d.ts +2 -1
- package/dist/modules/library/Library.d.ts +33 -33
- package/dist/modules/library/MediaData.d.ts +19 -8
- package/dist/modules/renderer/Renderer.d.ts +2 -0
- package/dist/modules/settings/Settings.d.ts +8 -0
- package/dist/modules/storage/StorageProviderBase.d.ts +1 -1
- package/dist/modules/timeline/Timeline.d.ts +1 -0
- package/dist/utils/browser/checkVideoCompatibilityOrTranscode.d.ts +18 -0
- package/dist/utils/file/urlToBlobChunks.d.ts +1 -0
- package/dist/utils/transcode/transcodeMedia.d.ts +25 -0
- package/dist/utils/transcode/transcodeOutputPath.d.ts +1 -0
- package/package.json +1 -1
|
@@ -131,6 +131,7 @@ export declare class FFmpeg {
|
|
|
131
131
|
* @defaultValue binary
|
|
132
132
|
*/
|
|
133
133
|
encoding?: string, { signal }?: FFMessageOptions) => Promise<FileData>;
|
|
134
|
+
readFilesAsBlob: (paths: string[], mimeType?: string, { signal }?: FFMessageOptions) => Promise<Blob>;
|
|
134
135
|
/**
|
|
135
136
|
* Delete a file.
|
|
136
137
|
*
|
|
@@ -105,6 +105,10 @@ export interface FFMessageReadFileData {
|
|
|
105
105
|
path: FFFSPath;
|
|
106
106
|
encoding: string;
|
|
107
107
|
}
|
|
108
|
+
export interface FFMessageReadFilesAsBlobData {
|
|
109
|
+
paths: FFFSPath[];
|
|
110
|
+
mimeType?: string;
|
|
111
|
+
}
|
|
108
112
|
export interface FFMessageDeleteFileData {
|
|
109
113
|
path: FFFSPath;
|
|
110
114
|
}
|
|
@@ -211,7 +215,7 @@ export interface FFMessageMountData {
|
|
|
211
215
|
export interface FFMessageUnmountData {
|
|
212
216
|
mountPoint: FFFSPath;
|
|
213
217
|
}
|
|
214
|
-
export type FFMessageData = FFMessageLoadConfig | FFMessageExecData | FFMessageWriteFileData | FFMessageReadFileData | FFMessageDeleteFileData | FFMessageRenameData | FFMessageCreateDirData | FFMessageListDirData | FFMessageDeleteDirData | FFMessageMountData | FFMessageUnmountData | FFMessageGetInfoData | FFMessageGetSubtitlesData | FFMessageFrameData | FFMessageFrame | FFMessageRenderSettings | FFMessageChunkedMuxData | FFMessageInitDemuxerData | FFMessageSeekDemuxerData | FFMessageIdDemuxerData | FFMessageMuxerData | FFMessageAuthentificateData | FFMessageFetchTSChunksData | FFMessageTranscodeData | FFMessageCreateArchiveData | FFMessageOpenArchiveData | FFMessageSaveArchiveData | FFMessageCloseArchiveData | FFMessageAddDataToArchiveData | FFMessageReadFileFromArchiveData | FFMessageExtractAllFromArchiveData | FFMessageAddFileToArchiveData | FFMessageAddFilesToArchiveData | FFMessageListFilesFromArchiveData | FFMessageExtractFileFromArchiveData | FFMessagePathExistsData;
|
|
218
|
+
export type FFMessageData = FFMessageLoadConfig | FFMessageExecData | FFMessageWriteFileData | FFMessageReadFileData | FFMessageReadFilesAsBlobData | FFMessageDeleteFileData | FFMessageRenameData | FFMessageCreateDirData | FFMessageListDirData | FFMessageDeleteDirData | FFMessageMountData | FFMessageUnmountData | FFMessageGetInfoData | FFMessageGetSubtitlesData | FFMessageFrameData | FFMessageFrame | FFMessageRenderSettings | FFMessageChunkedMuxData | FFMessageInitDemuxerData | FFMessageSeekDemuxerData | FFMessageIdDemuxerData | FFMessageMuxerData | FFMessageAuthentificateData | FFMessageFetchTSChunksData | FFMessageTranscodeData | FFMessageCreateArchiveData | FFMessageOpenArchiveData | FFMessageSaveArchiveData | FFMessageCloseArchiveData | FFMessageAddDataToArchiveData | FFMessageReadFileFromArchiveData | FFMessageExtractAllFromArchiveData | FFMessageAddFileToArchiveData | FFMessageAddFilesToArchiveData | FFMessageListFilesFromArchiveData | FFMessageExtractFileFromArchiveData | FFMessagePathExistsData;
|
|
215
219
|
export interface Message {
|
|
216
220
|
type: string;
|
|
217
221
|
data?: FFMessageData;
|
|
@@ -245,7 +249,7 @@ export interface FSNode {
|
|
|
245
249
|
name: string;
|
|
246
250
|
isDir: boolean;
|
|
247
251
|
}
|
|
248
|
-
export type CallbackData = FileData | ExitCode | ErrorMessage | LogEvent | ProgressEvent | IsFirst | OK | Error | FSNode[] | undefined | object | null;
|
|
252
|
+
export type CallbackData = FileData | Blob | ExitCode | ErrorMessage | LogEvent | ProgressEvent | IsFirst | OK | Error | FSNode[] | undefined | object | null;
|
|
249
253
|
export interface Callbacks {
|
|
250
254
|
[id: number | string]: (data: CallbackData) => void;
|
|
251
255
|
}
|
|
@@ -17,6 +17,7 @@ export declare class AdjustmentClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Spr
|
|
|
17
17
|
updateVisibility(currentTime: number): void;
|
|
18
18
|
getLeftRenderBound(): number;
|
|
19
19
|
getRightRenderBound(): number;
|
|
20
|
+
update(currentTime: number): void;
|
|
20
21
|
render(currentTime: number): void;
|
|
21
22
|
postRender(currentTime: number): void;
|
|
22
23
|
getIsProcessing(): boolean;
|
|
@@ -116,8 +116,8 @@ export declare class AudioClip extends Clip {
|
|
|
116
116
|
name?: string | undefined;
|
|
117
117
|
wrapMode?: import('../../../../types').WrapModeEnum | undefined;
|
|
118
118
|
blendMode?: import('../../../../types').BlendModeEnum | undefined;
|
|
119
|
-
customData?: [string, unknown][] | undefined;
|
|
120
119
|
style?: unknown;
|
|
120
|
+
customData?: [string, unknown][] | undefined;
|
|
121
121
|
subtitlesId?: string | undefined;
|
|
122
122
|
animationController?: {
|
|
123
123
|
animationInDuration: number;
|
|
@@ -12,6 +12,7 @@ export declare class GifClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Sprite>> {
|
|
|
12
12
|
private lastRightTrim;
|
|
13
13
|
private gifAnimator;
|
|
14
14
|
constructor(options: GifClipOptions);
|
|
15
|
+
private createGifAnimatorFromMediaBlob;
|
|
15
16
|
init(layerId: string): Promise<void>;
|
|
16
17
|
private getGlobalTimeToClipTime;
|
|
17
18
|
updateMediaData(newMediaId?: string, options?: ReplaceMediaOptions): Promise<boolean>;
|
|
@@ -164,8 +164,8 @@ export declare class HtmlTextClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Sprit
|
|
|
164
164
|
wrapMode?: import('../../../../types').WrapModeEnum | undefined;
|
|
165
165
|
blendMode?: import('../../../../types').BlendModeEnum | undefined;
|
|
166
166
|
mediaDataId?: string | undefined;
|
|
167
|
-
customData?: [string, unknown][] | undefined;
|
|
168
167
|
style?: unknown;
|
|
168
|
+
customData?: [string, unknown][] | undefined;
|
|
169
169
|
subtitlesId?: string | undefined;
|
|
170
170
|
animationController?: {
|
|
171
171
|
animationInDuration: number;
|
|
@@ -208,8 +208,8 @@ export declare class LottieClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Sprite>
|
|
|
208
208
|
wrapMode?: WrapModeEnum | undefined;
|
|
209
209
|
blendMode?: import('../../../../types').BlendModeEnum | undefined;
|
|
210
210
|
mediaDataId?: string | undefined;
|
|
211
|
-
customData?: [string, unknown][] | undefined;
|
|
212
211
|
style?: unknown;
|
|
212
|
+
customData?: [string, unknown][] | undefined;
|
|
213
213
|
subtitlesId?: string | undefined;
|
|
214
214
|
animationController?: {
|
|
215
215
|
animationInDuration: number;
|
|
@@ -99,8 +99,8 @@ export declare const ShapeStyleSchema: z.ZodObject<{
|
|
|
99
99
|
width: z.ZodOptional<z.ZodNumber>;
|
|
100
100
|
alpha: z.ZodNumber;
|
|
101
101
|
rotation: z.ZodNumber;
|
|
102
|
-
height: z.ZodOptional<z.ZodNumber>;
|
|
103
102
|
mediaDataId: z.ZodOptional<z.ZodString>;
|
|
103
|
+
height: z.ZodOptional<z.ZodNumber>;
|
|
104
104
|
clipId: z.ZodString;
|
|
105
105
|
position: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
|
|
106
106
|
crop: z.ZodDefault<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>>;
|
|
@@ -202,8 +202,8 @@ export declare const ShapeStyleSchema: z.ZodObject<{
|
|
|
202
202
|
relativeCornerRadius: boolean;
|
|
203
203
|
hasFill: boolean;
|
|
204
204
|
width?: number | undefined;
|
|
205
|
-
height?: number | undefined;
|
|
206
205
|
mediaDataId?: string | undefined;
|
|
206
|
+
height?: number | undefined;
|
|
207
207
|
cornerRadius?: [number, number, number, number] | undefined;
|
|
208
208
|
fillColor?: string | undefined;
|
|
209
209
|
strokeColor?: string | undefined;
|
|
@@ -240,8 +240,8 @@ export declare const ShapeStyleSchema: z.ZodObject<{
|
|
|
240
240
|
position: [number, number];
|
|
241
241
|
zIndex: number;
|
|
242
242
|
width?: number | undefined;
|
|
243
|
-
height?: number | undefined;
|
|
244
243
|
mediaDataId?: string | undefined;
|
|
244
|
+
height?: number | undefined;
|
|
245
245
|
crop?: [number, number, number, number] | undefined;
|
|
246
246
|
cropOffset?: [number, number] | undefined;
|
|
247
247
|
zoom?: [number, number] | undefined;
|
|
@@ -333,8 +333,8 @@ export declare class ShapeStyle extends ClipStyle<ShapeSprite> {
|
|
|
333
333
|
relativeCornerRadius: boolean;
|
|
334
334
|
hasFill: boolean;
|
|
335
335
|
width?: number | undefined;
|
|
336
|
-
height?: number | undefined;
|
|
337
336
|
mediaDataId?: string | undefined;
|
|
337
|
+
height?: number | undefined;
|
|
338
338
|
cornerRadius?: [number, number, number, number] | undefined;
|
|
339
339
|
fillColor?: string | undefined;
|
|
340
340
|
strokeColor?: string | undefined;
|
|
@@ -41,8 +41,8 @@ export declare class TextClip extends Clip<TextSprite, TextStyle> {
|
|
|
41
41
|
wrapMode?: import('../../../../index').WrapModeEnum | undefined;
|
|
42
42
|
blendMode?: import('../../../../index').BlendModeEnum | undefined;
|
|
43
43
|
mediaDataId?: string | undefined;
|
|
44
|
-
customData?: [string, unknown][] | undefined;
|
|
45
44
|
style?: unknown;
|
|
45
|
+
customData?: [string, unknown][] | undefined;
|
|
46
46
|
subtitlesId?: string | undefined;
|
|
47
47
|
animationController?: {
|
|
48
48
|
animationInDuration: number;
|
|
@@ -28,8 +28,8 @@ export declare const TextStyleSchema: z.ZodObject<{
|
|
|
28
28
|
width: z.ZodOptional<z.ZodNumber>;
|
|
29
29
|
alpha: z.ZodNumber;
|
|
30
30
|
rotation: z.ZodNumber;
|
|
31
|
-
height: z.ZodOptional<z.ZodNumber>;
|
|
32
31
|
mediaDataId: z.ZodOptional<z.ZodString>;
|
|
32
|
+
height: z.ZodOptional<z.ZodNumber>;
|
|
33
33
|
clipId: z.ZodString;
|
|
34
34
|
position: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
|
|
35
35
|
crop: z.ZodDefault<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>>;
|
|
@@ -88,8 +88,8 @@ export declare const TextStyleSchema: z.ZodObject<{
|
|
|
88
88
|
dropShadowColor: string;
|
|
89
89
|
dropShadowDistance: number;
|
|
90
90
|
width?: number | undefined;
|
|
91
|
-
height?: number | undefined;
|
|
92
91
|
mediaDataId?: string | undefined;
|
|
92
|
+
height?: number | undefined;
|
|
93
93
|
cornerRadius?: [number, number, number, number] | undefined;
|
|
94
94
|
}, {
|
|
95
95
|
scale: [number, number];
|
|
@@ -106,8 +106,8 @@ export declare const TextStyleSchema: z.ZodObject<{
|
|
|
106
106
|
fontStyle: "normal" | "italic" | "oblique";
|
|
107
107
|
backgroundColor: string | null;
|
|
108
108
|
width?: number | undefined;
|
|
109
|
-
height?: number | undefined;
|
|
110
109
|
mediaDataId?: string | undefined;
|
|
110
|
+
height?: number | undefined;
|
|
111
111
|
crop?: [number, number, number, number] | undefined;
|
|
112
112
|
cropOffset?: [number, number] | undefined;
|
|
113
113
|
zoom?: [number, number] | undefined;
|
|
@@ -222,8 +222,8 @@ export declare class TextStyle extends ClipStyle<TextSprite> {
|
|
|
222
222
|
dropShadowColor: string;
|
|
223
223
|
dropShadowDistance: number;
|
|
224
224
|
width?: number | undefined;
|
|
225
|
-
height?: number | undefined;
|
|
226
225
|
mediaDataId?: string | undefined;
|
|
226
|
+
height?: number | undefined;
|
|
227
227
|
cornerRadius?: [number, number, number, number] | undefined;
|
|
228
228
|
};
|
|
229
229
|
static deserialize(payload: object): TextStyle;
|
|
@@ -46,6 +46,10 @@ export declare class VideoClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Sprite>>
|
|
|
46
46
|
private forceSoftwareDecoder;
|
|
47
47
|
private ffmpeg;
|
|
48
48
|
private callbacks;
|
|
49
|
+
private isDestroying;
|
|
50
|
+
private restoreVideoSourceIfMissing;
|
|
51
|
+
private ensureWorkerDir;
|
|
52
|
+
private mountMediaInWorker;
|
|
49
53
|
private createUncachedVideoTexture;
|
|
50
54
|
constructor(options: VideoClipOptions);
|
|
51
55
|
init(layerId: string): Promise<void>;
|
|
@@ -188,8 +192,8 @@ export declare class VideoClip extends Clip<PIXI.Sprite, ClipStyle<PIXI.Sprite>>
|
|
|
188
192
|
name?: string | undefined;
|
|
189
193
|
wrapMode?: import('../../../../types').WrapModeEnum | undefined;
|
|
190
194
|
blendMode?: import('../../../../types').BlendModeEnum | undefined;
|
|
191
|
-
customData?: [string, unknown][] | undefined;
|
|
192
195
|
style?: unknown;
|
|
196
|
+
customData?: [string, unknown][] | undefined;
|
|
193
197
|
subtitlesId?: string | undefined;
|
|
194
198
|
animationController?: {
|
|
195
199
|
animationInDuration: number;
|
|
@@ -20,7 +20,7 @@ export declare class FilmstripExtractor {
|
|
|
20
20
|
constructor();
|
|
21
21
|
private createWorker;
|
|
22
22
|
private destroyWorker;
|
|
23
|
-
init(blobUrl: string, metadata: MediaInfo): Promise<void>;
|
|
23
|
+
init(blobUrl: string | undefined, metadata: MediaInfo, source?: Blob | File): Promise<void>;
|
|
24
24
|
process(): void;
|
|
25
25
|
isDone(): boolean;
|
|
26
26
|
addEventListener<K extends FilmstripExtractorEventTypeEnum>(type: K, callback: EventMap[K]): void;
|
|
@@ -19,7 +19,8 @@ export interface IFilmstripExtractorPayloadOutput {
|
|
|
19
19
|
timestamp: number;
|
|
20
20
|
}
|
|
21
21
|
export interface IFilmstripExtractorPayloadInit {
|
|
22
|
-
blobUrl
|
|
22
|
+
blobUrl?: string;
|
|
23
|
+
source?: Blob | File;
|
|
23
24
|
codec: string;
|
|
24
25
|
displayWidth: number;
|
|
25
26
|
displayHeight: number;
|
|
@@ -343,6 +343,17 @@ export declare const LibrarySchema: z.ZodObject<{
|
|
|
343
343
|
wordTimings?: number[] | undefined;
|
|
344
344
|
}[];
|
|
345
345
|
}[];
|
|
346
|
+
media: {
|
|
347
|
+
type: string;
|
|
348
|
+
id: string;
|
|
349
|
+
filename: string;
|
|
350
|
+
name?: string | undefined;
|
|
351
|
+
permanentUrl?: string | undefined;
|
|
352
|
+
hash?: string | undefined;
|
|
353
|
+
mimeType?: string | undefined;
|
|
354
|
+
customData?: [string, unknown][] | undefined;
|
|
355
|
+
placeholderClipIds?: string[] | undefined;
|
|
356
|
+
}[];
|
|
346
357
|
transitions: {
|
|
347
358
|
name: string;
|
|
348
359
|
properties: {
|
|
@@ -401,17 +412,6 @@ export declare const LibrarySchema: z.ZodObject<{
|
|
|
401
412
|
blendMode?: import('../../index').BlendModeEnum | undefined;
|
|
402
413
|
padding?: number | undefined;
|
|
403
414
|
}[];
|
|
404
|
-
media: {
|
|
405
|
-
type: string;
|
|
406
|
-
id: string;
|
|
407
|
-
filename: string;
|
|
408
|
-
name?: string | undefined;
|
|
409
|
-
permanentUrl?: string | undefined;
|
|
410
|
-
hash?: string | undefined;
|
|
411
|
-
mimeType?: string | undefined;
|
|
412
|
-
customData?: [string, unknown][] | undefined;
|
|
413
|
-
placeholderClipIds?: string[] | undefined;
|
|
414
|
-
}[];
|
|
415
415
|
customData?: [string, unknown][] | undefined;
|
|
416
416
|
}, {
|
|
417
417
|
subtitles: {
|
|
@@ -425,6 +425,17 @@ export declare const LibrarySchema: z.ZodObject<{
|
|
|
425
425
|
wordTimings?: number[] | undefined;
|
|
426
426
|
}[];
|
|
427
427
|
}[];
|
|
428
|
+
media: {
|
|
429
|
+
type: string;
|
|
430
|
+
id: string;
|
|
431
|
+
filename: string;
|
|
432
|
+
name?: string | undefined;
|
|
433
|
+
permanentUrl?: string | undefined;
|
|
434
|
+
hash?: string | undefined;
|
|
435
|
+
mimeType?: string | undefined;
|
|
436
|
+
customData?: [string, unknown][] | undefined;
|
|
437
|
+
placeholderClipIds?: string[] | undefined;
|
|
438
|
+
}[];
|
|
428
439
|
transitions: {
|
|
429
440
|
name: string;
|
|
430
441
|
properties: {
|
|
@@ -483,17 +494,6 @@ export declare const LibrarySchema: z.ZodObject<{
|
|
|
483
494
|
blendMode?: import('../../index').BlendModeEnum | undefined;
|
|
484
495
|
padding?: number | undefined;
|
|
485
496
|
}[];
|
|
486
|
-
media: {
|
|
487
|
-
type: string;
|
|
488
|
-
id: string;
|
|
489
|
-
filename: string;
|
|
490
|
-
name?: string | undefined;
|
|
491
|
-
permanentUrl?: string | undefined;
|
|
492
|
-
hash?: string | undefined;
|
|
493
|
-
mimeType?: string | undefined;
|
|
494
|
-
customData?: [string, unknown][] | undefined;
|
|
495
|
-
placeholderClipIds?: string[] | undefined;
|
|
496
|
-
}[];
|
|
497
497
|
customData?: [string, unknown][] | undefined;
|
|
498
498
|
}>;
|
|
499
499
|
export declare class Library {
|
|
@@ -582,6 +582,17 @@ export declare class Library {
|
|
|
582
582
|
wordTimings?: number[] | undefined;
|
|
583
583
|
}[];
|
|
584
584
|
}[];
|
|
585
|
+
media: {
|
|
586
|
+
type: string;
|
|
587
|
+
id: string;
|
|
588
|
+
filename: string;
|
|
589
|
+
name?: string | undefined;
|
|
590
|
+
permanentUrl?: string | undefined;
|
|
591
|
+
hash?: string | undefined;
|
|
592
|
+
mimeType?: string | undefined;
|
|
593
|
+
customData?: [string, unknown][] | undefined;
|
|
594
|
+
placeholderClipIds?: string[] | undefined;
|
|
595
|
+
}[];
|
|
585
596
|
transitions: {
|
|
586
597
|
name: string;
|
|
587
598
|
properties: {
|
|
@@ -640,17 +651,6 @@ export declare class Library {
|
|
|
640
651
|
blendMode?: import('../../index').BlendModeEnum | undefined;
|
|
641
652
|
padding?: number | undefined;
|
|
642
653
|
}[];
|
|
643
|
-
media: {
|
|
644
|
-
type: string;
|
|
645
|
-
id: string;
|
|
646
|
-
filename: string;
|
|
647
|
-
name?: string | undefined;
|
|
648
|
-
permanentUrl?: string | undefined;
|
|
649
|
-
hash?: string | undefined;
|
|
650
|
-
mimeType?: string | undefined;
|
|
651
|
-
customData?: [string, unknown][] | undefined;
|
|
652
|
-
placeholderClipIds?: string[] | undefined;
|
|
653
|
-
}[];
|
|
654
654
|
customData?: [string, unknown][] | undefined;
|
|
655
655
|
};
|
|
656
656
|
static deserialize(data: object): Library;
|
|
@@ -65,8 +65,9 @@ export declare class MediaData {
|
|
|
65
65
|
height?: number;
|
|
66
66
|
duration?: number;
|
|
67
67
|
blobUrl?: string;
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
/** Media payload used by previews, playback, object URLs, and FFmpeg mounts. Preserves File instances when available. */
|
|
69
|
+
mediaSource?: Blob | File;
|
|
70
|
+
size: number;
|
|
70
71
|
metadata?: MediaInfo;
|
|
71
72
|
storePath?: string;
|
|
72
73
|
permanentUrl?: string;
|
|
@@ -77,6 +78,9 @@ export declare class MediaData {
|
|
|
77
78
|
private sampleData;
|
|
78
79
|
private filmstripData;
|
|
79
80
|
private filmstripState;
|
|
81
|
+
private workerFSMountPoint?;
|
|
82
|
+
private workerFSFilePath?;
|
|
83
|
+
private fetchAbortController;
|
|
80
84
|
audioSplit?: string;
|
|
81
85
|
private static lockMediaInfo;
|
|
82
86
|
private waitForMediaInfoUnlock;
|
|
@@ -84,8 +88,12 @@ export declare class MediaData {
|
|
|
84
88
|
constructor(id?: string);
|
|
85
89
|
init(): Promise<void>;
|
|
86
90
|
destroy(): Promise<void>;
|
|
91
|
+
private getFetchSignal;
|
|
92
|
+
private isAbortError;
|
|
87
93
|
getId(): string;
|
|
88
94
|
getName(): string;
|
|
95
|
+
/** Returns the media payload, preserving File identity when available. */
|
|
96
|
+
getMediaSource(): File | Blob | undefined;
|
|
89
97
|
hasName(): boolean;
|
|
90
98
|
setName(name: string): void;
|
|
91
99
|
getStorageMediaData(): Promise<StorageMediaData | null>;
|
|
@@ -102,7 +110,15 @@ export declare class MediaData {
|
|
|
102
110
|
getFilmstripState(): MediaProcessStatusEnum;
|
|
103
111
|
getFilmstripData(): IFilmstripData[];
|
|
104
112
|
getFilmstripDataRange(start: number, end: number): IFilmstripData[];
|
|
105
|
-
private
|
|
113
|
+
private hasSvgXmlSignature;
|
|
114
|
+
private normalizeSvgMetadata;
|
|
115
|
+
private isWorkerFSMountedPath;
|
|
116
|
+
private buildWritableStorePath;
|
|
117
|
+
private ensureWorkerFSRoot;
|
|
118
|
+
private cleanupWorkerFSMount;
|
|
119
|
+
private mountInputToWorkerFS;
|
|
120
|
+
private deinterleaveAudioSamples;
|
|
121
|
+
private mixToMono;
|
|
106
122
|
private extractAudioSamples;
|
|
107
123
|
getAudioSamples(startTime: number, duration?: number): Float32Array[] | null;
|
|
108
124
|
private checkPlaceholderClips;
|
|
@@ -113,11 +129,6 @@ export declare class MediaData {
|
|
|
113
129
|
clearAllCustomData(): void;
|
|
114
130
|
setAllCustomData(data: Map<string, unknown>): void;
|
|
115
131
|
getAllCustomData(): Map<string, unknown> | undefined;
|
|
116
|
-
readFileIntoBlob(file: File, mimeType?: string): Promise<Blob>;
|
|
117
|
-
private internalFFmpegTranscode;
|
|
118
|
-
private transcode;
|
|
119
|
-
private safariTestAndTranscode;
|
|
120
|
-
private checkCompatibilityOrTranscode;
|
|
121
132
|
hookM3U8(file: File | string | Uint8Array, mimeType: string | undefined): Promise<{
|
|
122
133
|
status: boolean;
|
|
123
134
|
data?: undefined;
|
|
@@ -34,6 +34,7 @@ export declare enum MonoMixType {
|
|
|
34
34
|
}
|
|
35
35
|
export declare const SettingsSchema: z.ZodObject<{
|
|
36
36
|
m3u8MaxResolution: z.ZodDefault<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
37
|
+
useInternalTranscoder: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
37
38
|
clipAudioStoreSamples: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
38
39
|
clipAudioSampleRate: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
39
40
|
clipAudioSampleForceMono: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -78,6 +79,7 @@ export declare const SettingsSchema: z.ZodObject<{
|
|
|
78
79
|
mediaHashAlgorithm: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof HashAlgorithmEnum>>>;
|
|
79
80
|
}, "strip", z.ZodTypeAny, {
|
|
80
81
|
m3u8MaxResolution: [number, number];
|
|
82
|
+
useInternalTranscoder: boolean;
|
|
81
83
|
clipAudioStoreSamples: boolean;
|
|
82
84
|
clipAudioSampleRate: number;
|
|
83
85
|
clipAudioSampleForceMono: boolean;
|
|
@@ -122,6 +124,7 @@ export declare const SettingsSchema: z.ZodObject<{
|
|
|
122
124
|
mediaHashAlgorithm: HashAlgorithmEnum;
|
|
123
125
|
}, {
|
|
124
126
|
m3u8MaxResolution?: [number, number] | undefined;
|
|
127
|
+
useInternalTranscoder?: boolean | undefined;
|
|
125
128
|
clipAudioStoreSamples?: boolean | undefined;
|
|
126
129
|
clipAudioSampleRate?: number | undefined;
|
|
127
130
|
clipAudioSampleForceMono?: boolean | undefined;
|
|
@@ -167,6 +170,7 @@ export declare const SettingsSchema: z.ZodObject<{
|
|
|
167
170
|
}>;
|
|
168
171
|
export declare class Settings {
|
|
169
172
|
private m3u8MaxResolution;
|
|
173
|
+
private useInternalTranscoder;
|
|
170
174
|
private clipAudioStoreSamples;
|
|
171
175
|
private clipAudioSampleRate;
|
|
172
176
|
private clipAudioSampleForceMono;
|
|
@@ -213,6 +217,7 @@ export declare class Settings {
|
|
|
213
217
|
constructor();
|
|
214
218
|
getDefaultSettings(): {
|
|
215
219
|
m3u8MaxResolution: [number, number];
|
|
220
|
+
useInternalTranscoder: boolean;
|
|
216
221
|
clipAudioStoreSamples: boolean;
|
|
217
222
|
clipAudioSampleRate: number;
|
|
218
223
|
clipAudioSampleForceMono: boolean;
|
|
@@ -346,6 +351,8 @@ export declare class Settings {
|
|
|
346
351
|
getEncoderPreferredAcceleration(): PreferredAcceleration;
|
|
347
352
|
setM3u8MaxResolution(width: number, height: number): void;
|
|
348
353
|
getM3u8MaxResolution(): number[];
|
|
354
|
+
setUseInternalTranscoder(use: boolean): void;
|
|
355
|
+
getUseInternalTranscoder(): boolean;
|
|
349
356
|
setSubtitlesScaleOnResize(scale: boolean): void;
|
|
350
357
|
getSubtitlesScaleOnResize(): boolean;
|
|
351
358
|
setSubtitlesAutoWrapOnResize(autoWrap: boolean): void;
|
|
@@ -356,6 +363,7 @@ export declare class Settings {
|
|
|
356
363
|
getMediaHashAlgorithm(): HashAlgorithmEnum;
|
|
357
364
|
serialize(): {
|
|
358
365
|
m3u8MaxResolution: [number, number];
|
|
366
|
+
useInternalTranscoder: boolean;
|
|
359
367
|
clipAudioStoreSamples: boolean;
|
|
360
368
|
clipAudioSampleRate: number;
|
|
361
369
|
clipAudioSampleForceMono: boolean;
|
|
@@ -197,6 +197,7 @@ export declare class Timeline {
|
|
|
197
197
|
getAllCustomData(): Map<string, unknown> | undefined;
|
|
198
198
|
render(options?: TimelineRenderOptions): Promise<void>;
|
|
199
199
|
postRender(): void;
|
|
200
|
+
stopRenderingLoop(): void;
|
|
200
201
|
loadSerializedData(data: object): Promise<void>;
|
|
201
202
|
serialize(): {
|
|
202
203
|
startTime: number;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { MediaInfo } from '../../modules/ffmpeg/types/FFmpeg.types';
|
|
2
|
+
interface CheckVideoCompatibilityOrTranscodeOptions {
|
|
3
|
+
blobUrl: string;
|
|
4
|
+
filePath: string;
|
|
5
|
+
outputPath?: string;
|
|
6
|
+
getData: () => Promise<Uint8Array>;
|
|
7
|
+
info: MediaInfo;
|
|
8
|
+
fileName: string;
|
|
9
|
+
permanentUrl?: string;
|
|
10
|
+
mimeType?: string;
|
|
11
|
+
mediaDataId: string;
|
|
12
|
+
waitForMediaInfoUnlock: () => Promise<void>;
|
|
13
|
+
lockMediaInfo: () => void;
|
|
14
|
+
unlockMediaInfo: () => void;
|
|
15
|
+
timeoutMs?: number;
|
|
16
|
+
}
|
|
17
|
+
export declare function checkVideoCompatibilityOrTranscode({ blobUrl, filePath, mediaDataId, getData, info, fileName, outputPath, permanentUrl, mimeType, waitForMediaInfoUnlock, lockMediaInfo, unlockMediaInfo, timeoutMs, }: CheckVideoCompatibilityOrTranscodeOptions): Promise<boolean>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function urlToBlobChunks(url: string, signal?: AbortSignal): Promise<Blob>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { TranscodeMediaDetails } from '../../modules/transcode';
|
|
2
|
+
interface InternalFFmpegTranscodeOptions {
|
|
3
|
+
filePath: string;
|
|
4
|
+
outputPath?: string;
|
|
5
|
+
mediaDataId: string;
|
|
6
|
+
waitForMediaInfoUnlock: () => Promise<void>;
|
|
7
|
+
lockMediaInfo: () => void;
|
|
8
|
+
unlockMediaInfo: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function internalFFmpegTranscode({ filePath, mediaDataId, outputPath, waitForMediaInfoUnlock, lockMediaInfo, unlockMediaInfo, }: InternalFFmpegTranscodeOptions): Promise<boolean>;
|
|
11
|
+
interface TranscodeMediaOptions {
|
|
12
|
+
filePath: string;
|
|
13
|
+
outputPath?: string;
|
|
14
|
+
getData: () => Promise<Uint8Array>;
|
|
15
|
+
info: TranscodeMediaDetails["mediaInfo"];
|
|
16
|
+
fileName: string;
|
|
17
|
+
permanentUrl?: string;
|
|
18
|
+
mimeType?: string;
|
|
19
|
+
mediaDataId: string;
|
|
20
|
+
waitForMediaInfoUnlock: () => Promise<void>;
|
|
21
|
+
lockMediaInfo: () => void;
|
|
22
|
+
unlockMediaInfo: () => void;
|
|
23
|
+
}
|
|
24
|
+
export declare function transcodeMedia({ filePath, mediaDataId, getData, info, fileName, outputPath, permanentUrl, mimeType, waitForMediaInfoUnlock, lockMediaInfo, unlockMediaInfo, }: TranscodeMediaOptions): Promise<boolean>;
|
|
25
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getDefaultTranscodeOutputPath(filePath: string, mediaDataId: string): string;
|