@remotion/webcodecs 4.0.306 → 4.0.308
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/audio-decoder.d.ts +3 -3
- package/dist/audio-encoder.js +1 -1
- package/dist/can-copy-audio-track.d.ts +3 -1
- package/dist/can-copy-audio-track.js +10 -1
- package/dist/can-copy-video-track.d.ts +3 -1
- package/dist/can-copy-video-track.js +10 -1
- package/dist/create/matroska/matroska-utils.d.ts +1 -1
- package/dist/create-audio-decoder.d.ts +24 -0
- package/dist/create-audio-decoder.js +112 -0
- package/dist/create-video-decoder.d.ts +23 -0
- package/dist/create-video-decoder.js +89 -0
- package/dist/esm/index.mjs +336 -263
- package/dist/get-wave-audio-decoder.d.ts +1 -1
- package/dist/get-wave-audio-decoder.js +13 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +5 -5
- package/dist/io-manager/io-synchronizer.d.ts +0 -1
- package/dist/io-manager/io-synchronizer.js +0 -4
- package/dist/is-different-video-codec.d.ts +11 -0
- package/dist/is-different-video-codec.js +36 -0
- package/dist/on-audio-track.js +1 -0
- package/dist/on-video-track.js +1 -0
- package/dist/processing-queue.d.ts +0 -1
- package/dist/reencode-audio-track.js +4 -4
- package/dist/reencode-video-track.js +4 -4
- package/dist/video-encoder.js +1 -1
- package/package.json +5 -5
- package/dist/select-container-creator.d.ts +0 -2
- package/dist/select-container-creator.js +0 -19
|
@@ -28,14 +28,23 @@ const getBytesPerSample = (sampleFormat) => {
|
|
|
28
28
|
}
|
|
29
29
|
throw new Error(`Unsupported sample format: ${sampleFormat}`);
|
|
30
30
|
};
|
|
31
|
+
const getAudioData = (audioSample) => {
|
|
32
|
+
if (audioSample instanceof EncodedAudioChunk) {
|
|
33
|
+
const data = new Uint8Array(audioSample.byteLength);
|
|
34
|
+
audioSample.copyTo(data);
|
|
35
|
+
return data;
|
|
36
|
+
}
|
|
37
|
+
return audioSample.data;
|
|
38
|
+
};
|
|
31
39
|
const getWaveAudioDecoder = ({ onFrame, config, sampleFormat, ioSynchronizer, onError, }) => {
|
|
32
40
|
const processSample = async (audioSample) => {
|
|
33
41
|
const bytesPerSample = getBytesPerSample(sampleFormat);
|
|
42
|
+
const data = getAudioData(audioSample);
|
|
34
43
|
const audioData = new AudioData({
|
|
35
|
-
data
|
|
44
|
+
data,
|
|
36
45
|
format: sampleFormat,
|
|
37
46
|
numberOfChannels: config.numberOfChannels,
|
|
38
|
-
numberOfFrames:
|
|
47
|
+
numberOfFrames: data.byteLength / bytesPerSample / config.numberOfChannels,
|
|
39
48
|
sampleRate: config.sampleRate,
|
|
40
49
|
timestamp: audioSample.timestamp,
|
|
41
50
|
});
|
|
@@ -52,11 +61,11 @@ const getWaveAudioDecoder = ({ onFrame, config, sampleFormat, ioSynchronizer, on
|
|
|
52
61
|
return Promise.resolve();
|
|
53
62
|
},
|
|
54
63
|
decode(audioSample) {
|
|
55
|
-
processSample(audioSample);
|
|
64
|
+
return processSample(audioSample);
|
|
56
65
|
},
|
|
57
66
|
flush: () => Promise.resolve(),
|
|
58
|
-
waitForFinish: () => Promise.resolve(),
|
|
59
67
|
waitForQueueToBeLessThan: ioSynchronizer.waitForQueueSize,
|
|
68
|
+
reset: () => { },
|
|
60
69
|
};
|
|
61
70
|
};
|
|
62
71
|
exports.getWaveAudioDecoder = getWaveAudioDecoder;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export { createAudioDecoder } from './audio-decoder';
|
|
2
|
-
export type { WebCodecsAudioDecoder } from './audio-decoder';
|
|
3
1
|
export { createAudioEncoder } from './audio-encoder';
|
|
4
2
|
export type { WebCodecsAudioEncoder } from './audio-encoder';
|
|
5
3
|
export { canCopyAudioTrack } from './can-copy-audio-track';
|
|
@@ -9,6 +7,10 @@ export { canReencodeVideoTrack } from './can-reencode-video-track';
|
|
|
9
7
|
export { convertAudioData, ConvertAudioDataOptions } from './convert-audiodata';
|
|
10
8
|
export { convertMedia } from './convert-media';
|
|
11
9
|
export type { ConvertMediaOnAudioData, ConvertMediaOnProgress, ConvertMediaOnVideoFrame, ConvertMediaProgress, ConvertMediaResult, } from './convert-media';
|
|
10
|
+
export { createAudioDecoder } from './create-audio-decoder';
|
|
11
|
+
export type { WebCodecsAudioDecoder } from './create-audio-decoder';
|
|
12
|
+
export { createVideoDecoder } from './create-video-decoder';
|
|
13
|
+
export type { WebCodecsVideoDecoder } from './create-video-decoder';
|
|
12
14
|
export { defaultOnAudioTrackHandler } from './default-on-audio-track-handler';
|
|
13
15
|
export { defaultOnVideoTrackHandler } from './default-on-video-track-handler';
|
|
14
16
|
export { getAvailableAudioCodecs } from './get-available-audio-codecs';
|
|
@@ -22,8 +24,6 @@ export { getDefaultVideoCodec } from './get-default-video-codec';
|
|
|
22
24
|
export type { AudioOperation, ConvertMediaOnAudioTrackHandler, } from './on-audio-track-handler';
|
|
23
25
|
export type { ConvertMediaOnVideoTrackHandler, VideoOperation, } from './on-video-track-handler';
|
|
24
26
|
export type { ResizeOperation } from './resizing/mode';
|
|
25
|
-
export { createVideoDecoder } from './video-decoder';
|
|
26
|
-
export type { WebCodecsVideoDecoder } from './video-decoder';
|
|
27
27
|
export { createVideoEncoder } from './video-encoder';
|
|
28
28
|
export type { WebCodecsVideoEncoder } from './video-encoder';
|
|
29
29
|
export { webcodecsController } from './webcodecs-controller';
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WebCodecsInternals = exports.webcodecsController = exports.createVideoEncoder = exports.
|
|
3
|
+
exports.WebCodecsInternals = exports.webcodecsController = exports.createVideoEncoder = exports.getDefaultVideoCodec = exports.getDefaultAudioCodec = exports.getAvailableVideoCodecs = exports.getAvailableContainers = exports.getAvailableAudioCodecs = exports.defaultOnVideoTrackHandler = exports.defaultOnAudioTrackHandler = exports.createVideoDecoder = exports.createAudioDecoder = exports.convertMedia = exports.convertAudioData = exports.canReencodeVideoTrack = exports.canReencodeAudioTrack = exports.canCopyVideoTrack = exports.canCopyAudioTrack = exports.createAudioEncoder = void 0;
|
|
4
4
|
const rotate_and_resize_video_frame_1 = require("./rotate-and-resize-video-frame");
|
|
5
5
|
const rotation_1 = require("./rotation");
|
|
6
6
|
const set_remotion_imported_1 = require("./set-remotion-imported");
|
|
7
|
-
var audio_decoder_1 = require("./audio-decoder");
|
|
8
|
-
Object.defineProperty(exports, "createAudioDecoder", { enumerable: true, get: function () { return audio_decoder_1.createAudioDecoder; } });
|
|
9
7
|
var audio_encoder_1 = require("./audio-encoder");
|
|
10
8
|
Object.defineProperty(exports, "createAudioEncoder", { enumerable: true, get: function () { return audio_encoder_1.createAudioEncoder; } });
|
|
11
9
|
var can_copy_audio_track_1 = require("./can-copy-audio-track");
|
|
@@ -20,6 +18,10 @@ var convert_audiodata_1 = require("./convert-audiodata");
|
|
|
20
18
|
Object.defineProperty(exports, "convertAudioData", { enumerable: true, get: function () { return convert_audiodata_1.convertAudioData; } });
|
|
21
19
|
var convert_media_1 = require("./convert-media");
|
|
22
20
|
Object.defineProperty(exports, "convertMedia", { enumerable: true, get: function () { return convert_media_1.convertMedia; } });
|
|
21
|
+
var create_audio_decoder_1 = require("./create-audio-decoder");
|
|
22
|
+
Object.defineProperty(exports, "createAudioDecoder", { enumerable: true, get: function () { return create_audio_decoder_1.createAudioDecoder; } });
|
|
23
|
+
var create_video_decoder_1 = require("./create-video-decoder");
|
|
24
|
+
Object.defineProperty(exports, "createVideoDecoder", { enumerable: true, get: function () { return create_video_decoder_1.createVideoDecoder; } });
|
|
23
25
|
var default_on_audio_track_handler_1 = require("./default-on-audio-track-handler");
|
|
24
26
|
Object.defineProperty(exports, "defaultOnAudioTrackHandler", { enumerable: true, get: function () { return default_on_audio_track_handler_1.defaultOnAudioTrackHandler; } });
|
|
25
27
|
var default_on_video_track_handler_1 = require("./default-on-video-track-handler");
|
|
@@ -34,8 +36,6 @@ var get_default_audio_codec_1 = require("./get-default-audio-codec");
|
|
|
34
36
|
Object.defineProperty(exports, "getDefaultAudioCodec", { enumerable: true, get: function () { return get_default_audio_codec_1.getDefaultAudioCodec; } });
|
|
35
37
|
var get_default_video_codec_1 = require("./get-default-video-codec");
|
|
36
38
|
Object.defineProperty(exports, "getDefaultVideoCodec", { enumerable: true, get: function () { return get_default_video_codec_1.getDefaultVideoCodec; } });
|
|
37
|
-
var video_decoder_1 = require("./video-decoder");
|
|
38
|
-
Object.defineProperty(exports, "createVideoDecoder", { enumerable: true, get: function () { return video_decoder_1.createVideoDecoder; } });
|
|
39
39
|
var video_encoder_1 = require("./video-encoder");
|
|
40
40
|
Object.defineProperty(exports, "createVideoEncoder", { enumerable: true, get: function () { return video_encoder_1.createVideoEncoder; } });
|
|
41
41
|
var webcodecs_controller_1 = require("./webcodecs-controller");
|
|
@@ -7,7 +7,6 @@ export declare const makeIoSynchronizer: ({ logLevel, label, controller, }: {
|
|
|
7
7
|
}) => {
|
|
8
8
|
inputItem: (timestamp: number) => void;
|
|
9
9
|
onOutput: (timestamp: number) => void;
|
|
10
|
-
waitForFinish: () => Promise<void>;
|
|
11
10
|
waitForQueueSize: (queueSize: number) => Promise<void>;
|
|
12
11
|
};
|
|
13
12
|
export type IoSynchronizer = ReturnType<typeof makeIoSynchronizer>;
|
|
@@ -80,13 +80,9 @@ const makeIoSynchronizer = ({ logLevel, label, controller, }) => {
|
|
|
80
80
|
controller._internals._mediaParserController._internals.signal.removeEventListener('abort', clear);
|
|
81
81
|
}
|
|
82
82
|
};
|
|
83
|
-
const waitForFinish = async () => {
|
|
84
|
-
await waitForQueueSize(0);
|
|
85
|
-
};
|
|
86
83
|
return {
|
|
87
84
|
inputItem,
|
|
88
85
|
onOutput,
|
|
89
|
-
waitForFinish,
|
|
90
86
|
waitForQueueSize,
|
|
91
87
|
};
|
|
92
88
|
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { MediaParserAudioCodec, MediaParserVideoCodec } from '@remotion/media-parser';
|
|
2
|
+
import type { ConvertMediaAudioCodec } from './get-available-audio-codecs';
|
|
3
|
+
import type { ConvertMediaVideoCodec } from './get-available-video-codecs';
|
|
4
|
+
export declare const isSameVideoCodec: ({ inputVideoCodec, outputCodec, }: {
|
|
5
|
+
inputVideoCodec: MediaParserVideoCodec;
|
|
6
|
+
outputCodec: ConvertMediaVideoCodec;
|
|
7
|
+
}) => boolean;
|
|
8
|
+
export declare const isSameAudioCodec: ({ inputAudioCodec, outputCodec, }: {
|
|
9
|
+
inputAudioCodec: MediaParserAudioCodec;
|
|
10
|
+
outputCodec: ConvertMediaAudioCodec;
|
|
11
|
+
}) => boolean;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isSameAudioCodec = exports.isSameVideoCodec = void 0;
|
|
4
|
+
const isSameVideoCodec = ({ inputVideoCodec, outputCodec, }) => {
|
|
5
|
+
if (outputCodec === 'h264') {
|
|
6
|
+
return inputVideoCodec === 'h264';
|
|
7
|
+
}
|
|
8
|
+
if (outputCodec === 'h265') {
|
|
9
|
+
return inputVideoCodec === 'h265';
|
|
10
|
+
}
|
|
11
|
+
if (outputCodec === 'vp8') {
|
|
12
|
+
return inputVideoCodec === 'vp8';
|
|
13
|
+
}
|
|
14
|
+
if (outputCodec === 'vp9') {
|
|
15
|
+
return inputVideoCodec === 'vp9';
|
|
16
|
+
}
|
|
17
|
+
throw new Error(`Unsupported output codec: ${outputCodec}`);
|
|
18
|
+
};
|
|
19
|
+
exports.isSameVideoCodec = isSameVideoCodec;
|
|
20
|
+
const isSameAudioCodec = ({ inputAudioCodec, outputCodec, }) => {
|
|
21
|
+
if (outputCodec === 'aac') {
|
|
22
|
+
return inputAudioCodec === 'aac';
|
|
23
|
+
}
|
|
24
|
+
if (outputCodec === 'opus') {
|
|
25
|
+
return inputAudioCodec === 'opus';
|
|
26
|
+
}
|
|
27
|
+
if (outputCodec === 'wav') {
|
|
28
|
+
return (inputAudioCodec === 'pcm-f32' ||
|
|
29
|
+
inputAudioCodec === 'pcm-s16' ||
|
|
30
|
+
inputAudioCodec === 'pcm-s24' ||
|
|
31
|
+
inputAudioCodec === 'pcm-s32' ||
|
|
32
|
+
inputAudioCodec === 'pcm-u8');
|
|
33
|
+
}
|
|
34
|
+
throw new Error(`Unsupported output codec: ${outputCodec}`);
|
|
35
|
+
};
|
|
36
|
+
exports.isSameAudioCodec = isSameAudioCodec;
|
package/dist/on-audio-track.js
CHANGED
|
@@ -11,6 +11,7 @@ const makeAudioTrackHandler = ({ state, defaultAudioCodec: audioCodec, controlle
|
|
|
11
11
|
inputCodec: track.codecEnum,
|
|
12
12
|
outputContainer,
|
|
13
13
|
inputContainer,
|
|
14
|
+
outputAudioCodec: audioCodec,
|
|
14
15
|
});
|
|
15
16
|
const audioOperation = await (onAudioTrack ?? default_on_audio_track_handler_1.defaultOnAudioTrackHandler)({
|
|
16
17
|
defaultAudioCodec: audioCodec ?? (0, get_default_audio_codec_1.getDefaultAudioCodec)({ container: outputContainer }),
|
package/dist/on-video-track.js
CHANGED
|
@@ -16,6 +16,7 @@ const makeVideoTrackHandler = ({ state, onVideoFrame, onMediaStateUpdate, abortC
|
|
|
16
16
|
rotationToApply: rotate,
|
|
17
17
|
inputTrack: track,
|
|
18
18
|
resizeOperation,
|
|
19
|
+
outputVideoCodec: defaultVideoCodec,
|
|
19
20
|
});
|
|
20
21
|
const videoOperation = await (onVideoTrack ?? default_on_video_track_handler_1.defaultOnVideoTrackHandler)({
|
|
21
22
|
track,
|
|
@@ -12,7 +12,6 @@ export declare function processingQueue<T extends Processable>({ onOutput, logLe
|
|
|
12
12
|
ioSynchronizer: {
|
|
13
13
|
inputItem: (timestamp: number) => void;
|
|
14
14
|
onOutput: (timestamp: number) => void;
|
|
15
|
-
waitForFinish: () => Promise<void>;
|
|
16
15
|
waitForQueueSize: (queueSize: number) => Promise<void>;
|
|
17
16
|
};
|
|
18
17
|
};
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.reencodeAudioTrack = void 0;
|
|
4
4
|
const media_parser_1 = require("@remotion/media-parser");
|
|
5
|
-
const audio_decoder_1 = require("./audio-decoder");
|
|
6
5
|
const audio_decoder_config_1 = require("./audio-decoder-config");
|
|
7
6
|
const audio_encoder_1 = require("./audio-encoder");
|
|
8
7
|
const audio_encoder_config_1 = require("./audio-encoder-config");
|
|
9
8
|
const convert_encoded_chunk_1 = require("./convert-encoded-chunk");
|
|
9
|
+
const create_audio_decoder_1 = require("./create-audio-decoder");
|
|
10
10
|
const log_1 = require("./log");
|
|
11
11
|
const processing_queue_1 = require("./processing-queue");
|
|
12
12
|
const reencodeAudioTrack = async ({ audioOperation, track, logLevel, abortConversion, state, controller, onMediaStateUpdate, onAudioData, progressTracker, }) => {
|
|
@@ -129,7 +129,7 @@ const reencodeAudioTrack = async ({ audioOperation, track, logLevel, abortConver
|
|
|
129
129
|
newAudioData.close();
|
|
130
130
|
},
|
|
131
131
|
});
|
|
132
|
-
const audioDecoder = (0,
|
|
132
|
+
const audioDecoder = (0, create_audio_decoder_1.internalCreateAudioDecoder)({
|
|
133
133
|
onFrame: async (audioData) => {
|
|
134
134
|
await controller._internals._mediaParserController._internals.checkForAbortAndPause();
|
|
135
135
|
await audioProcessingQueue.ioSynchronizer.waitForQueueSize(10);
|
|
@@ -145,10 +145,10 @@ const reencodeAudioTrack = async ({ audioOperation, track, logLevel, abortConver
|
|
|
145
145
|
logLevel,
|
|
146
146
|
});
|
|
147
147
|
state.addWaitForFinishPromise(async () => {
|
|
148
|
-
await audioDecoder.
|
|
148
|
+
await audioDecoder.waitForQueueToBeLessThan(0);
|
|
149
149
|
log_1.Log.verbose(logLevel, 'Audio decoder finished');
|
|
150
150
|
audioDecoder.close();
|
|
151
|
-
await audioProcessingQueue.ioSynchronizer.
|
|
151
|
+
await audioProcessingQueue.ioSynchronizer.waitForQueueSize(0);
|
|
152
152
|
log_1.Log.verbose(logLevel, 'Audio processing queue finished');
|
|
153
153
|
await audioEncoder.waitForFinish();
|
|
154
154
|
log_1.Log.verbose(logLevel, 'Audio encoder finished');
|
|
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.reencodeVideoTrack = void 0;
|
|
4
4
|
const arraybuffer_to_uint8_array_1 = require("./arraybuffer-to-uint8-array");
|
|
5
5
|
const convert_encoded_chunk_1 = require("./convert-encoded-chunk");
|
|
6
|
+
const create_video_decoder_1 = require("./create-video-decoder");
|
|
6
7
|
const log_1 = require("./log");
|
|
7
8
|
const on_frame_1 = require("./on-frame");
|
|
8
9
|
const processing_queue_1 = require("./processing-queue");
|
|
9
10
|
const rotation_1 = require("./rotation");
|
|
10
11
|
const sort_video_frames_1 = require("./sort-video-frames");
|
|
11
|
-
const video_decoder_1 = require("./video-decoder");
|
|
12
12
|
const video_decoder_config_1 = require("./video-decoder-config");
|
|
13
13
|
const video_encoder_1 = require("./video-encoder");
|
|
14
14
|
const video_encoder_config_1 = require("./video-encoder-config");
|
|
@@ -111,7 +111,7 @@ const reencodeVideoTrack = async ({ videoOperation, rotate, track, logLevel, abo
|
|
|
111
111
|
videoProcessingQueue.input(frame);
|
|
112
112
|
},
|
|
113
113
|
});
|
|
114
|
-
const videoDecoder = (0,
|
|
114
|
+
const videoDecoder = (0, create_video_decoder_1.createVideoDecoder)({
|
|
115
115
|
track: videoDecoderConfig,
|
|
116
116
|
onFrame: async (frame) => {
|
|
117
117
|
await frameSorter.waitUntilProcessed();
|
|
@@ -127,12 +127,12 @@ const reencodeVideoTrack = async ({ videoOperation, rotate, track, logLevel, abo
|
|
|
127
127
|
});
|
|
128
128
|
state.addWaitForFinishPromise(async () => {
|
|
129
129
|
log_1.Log.verbose(logLevel, 'Waiting for video decoder to finish');
|
|
130
|
-
await videoDecoder.
|
|
130
|
+
await videoDecoder.waitForQueueToBeLessThan(0);
|
|
131
131
|
videoDecoder.close();
|
|
132
132
|
log_1.Log.verbose(logLevel, 'Video decoder finished. Waiting for encoder to finish');
|
|
133
133
|
await frameSorter.flush();
|
|
134
134
|
log_1.Log.verbose(logLevel, 'Frame sorter flushed');
|
|
135
|
-
await videoProcessingQueue.ioSynchronizer.
|
|
135
|
+
await videoProcessingQueue.ioSynchronizer.waitForQueueSize(0);
|
|
136
136
|
log_1.Log.verbose(logLevel, 'Video processing queue finished');
|
|
137
137
|
await videoEncoder.waitForFinish();
|
|
138
138
|
videoEncoder.close();
|
package/dist/video-encoder.js
CHANGED
|
@@ -66,7 +66,7 @@ const createVideoEncoder = ({ onChunk, onError, controller, config, logLevel, ou
|
|
|
66
66
|
},
|
|
67
67
|
waitForFinish: async () => {
|
|
68
68
|
await encoder.flush();
|
|
69
|
-
await ioSynchronizer.
|
|
69
|
+
await ioSynchronizer.waitForQueueSize(0);
|
|
70
70
|
},
|
|
71
71
|
close,
|
|
72
72
|
flush: async () => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remotion/webcodecs",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.308",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"module": "dist/esm/index.mjs",
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
"author": "Jonny Burger <jonny@remotion.dev>",
|
|
20
20
|
"license": "Remotion License (See https://remotion.dev/docs/webcodecs#license)",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@remotion/media-parser": "4.0.
|
|
23
|
-
"@remotion/licensing": "4.0.
|
|
22
|
+
"@remotion/media-parser": "4.0.308",
|
|
23
|
+
"@remotion/licensing": "4.0.308"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {},
|
|
26
26
|
"devDependencies": {
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"playwright": "1.51.1",
|
|
29
29
|
"@playwright/test": "1.51.1",
|
|
30
30
|
"eslint": "9.19.0",
|
|
31
|
-
"@remotion/example-videos": "4.0.
|
|
32
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
31
|
+
"@remotion/example-videos": "4.0.308",
|
|
32
|
+
"@remotion/eslint-config-internal": "4.0.308"
|
|
33
33
|
},
|
|
34
34
|
"keywords": [],
|
|
35
35
|
"publishConfig": {
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import type { ConvertMediaContainer } from './get-available-containers';
|
|
2
|
-
export declare const createMedia: (container: ConvertMediaContainer) => ({ writer, onBytesProgress, onMillisecondsProgress, logLevel, filename, progressTracker, expectedDurationInSeconds, expectedFrameRate, }: import("./create/media-fn").MediaFnGeneratorInput) => Promise<import("./create/media-fn").MediaFn>;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createMedia = void 0;
|
|
4
|
-
const create_iso_base_media_1 = require("./create/iso-base-media/create-iso-base-media");
|
|
5
|
-
const create_matroska_media_1 = require("./create/matroska/create-matroska-media");
|
|
6
|
-
const create_wav_1 = require("./create/wav/create-wav");
|
|
7
|
-
const createMedia = (container) => {
|
|
8
|
-
if (container === 'mp4') {
|
|
9
|
-
return create_iso_base_media_1.createIsoBaseMedia;
|
|
10
|
-
}
|
|
11
|
-
if (container === 'wav') {
|
|
12
|
-
return create_wav_1.createWav;
|
|
13
|
-
}
|
|
14
|
-
if (container === 'webm') {
|
|
15
|
-
return create_matroska_media_1.createMatroskaMedia;
|
|
16
|
-
}
|
|
17
|
-
throw new Error(`Unsupported container: ${container}`);
|
|
18
|
-
};
|
|
19
|
-
exports.createMedia = createMedia;
|