@remotion/webcodecs 4.0.302 → 4.0.303

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.
@@ -9,6 +9,7 @@ const media_parser_1 = require("@remotion/media-parser");
9
9
  const web_1 = require("@remotion/media-parser/web");
10
10
  const auto_select_writer_1 = require("./auto-select-writer");
11
11
  const calculate_progress_1 = require("./calculate-progress");
12
+ const create_media_1 = require("./create-media");
12
13
  const progress_tracker_1 = require("./create/progress-tracker");
13
14
  const with_resolvers_1 = require("./create/with-resolvers");
14
15
  const generate_output_filename_1 = require("./generate-output-filename");
@@ -17,7 +18,6 @@ const get_available_video_codecs_1 = require("./get-available-video-codecs");
17
18
  const log_1 = require("./log");
18
19
  const on_audio_track_1 = require("./on-audio-track");
19
20
  const on_video_track_1 = require("./on-video-track");
20
- const select_container_creator_1 = require("./select-container-creator");
21
21
  const send_telemetry_event_1 = require("./send-telemetry-event");
22
22
  const throttled_state_update_1 = require("./throttled-state-update");
23
23
  const webcodecs_controller_1 = require("./webcodecs-controller");
@@ -42,14 +42,14 @@ const convertMedia = async function ({ src, onVideoFrame, onAudioData, onProgres
42
42
  abortConversion(new media_parser_1.MediaParserAbortError('Conversion aborted by user'));
43
43
  };
44
44
  controller._internals._mediaParserController._internals.signal.addEventListener('abort', onUserAbort);
45
- const creator = (0, select_container_creator_1.selectContainerCreator)(container);
46
45
  const throttledState = (0, throttled_state_update_1.throttledStateUpdate)({
47
46
  updateFn: onProgressDoNotCallDirectly ?? null,
48
47
  everyMilliseconds: progressIntervalInMs ?? 100,
49
48
  signal: controller._internals._mediaParserController._internals.signal,
50
49
  });
51
50
  const progressTracker = (0, progress_tracker_1.makeProgressTracker)();
52
- const state = await creator({
51
+ const state = await (0, create_media_1.createMedia)({
52
+ container,
53
53
  filename: (0, generate_output_filename_1.generateOutputFilename)(src, container),
54
54
  writer: await (0, auto_select_writer_1.autoSelectWriter)(writer, logLevel),
55
55
  onBytesProgress: (bytesWritten) => {
@@ -22,7 +22,7 @@ export type EbmlParsedOrUint8Array<T extends MediaParserInternalTypes['Ebml']> =
22
22
  value: EbmlValueOrUint8Array<T>;
23
23
  minVintWidth: number | null;
24
24
  };
25
- export declare const measureEBMLVarInt: (value: number) => 2 | 4 | 1 | 5 | 3 | 6;
25
+ export declare const measureEBMLVarInt: (value: number) => 2 | 4 | 1 | 3 | 5 | 6;
26
26
  export declare const getVariableInt: (value: number, minWidth: number | null) => Uint8Array<ArrayBuffer>;
27
27
  export declare const makeMatroskaBytes: (fields: PossibleEbmlOrUint8Array) => BytesAndOffset;
28
28
  export type PossibleEbmlOrUint8Array = Prettify<{
@@ -1,4 +1,5 @@
1
1
  import type { MediaParserAudioSample, MediaParserInternalTypes, MediaParserLogLevel, MediaParserVideoSample } from '@remotion/media-parser';
2
+ import type { ConvertMediaContainer } from '../get-available-containers';
2
3
  import type { MakeTrackAudio, MakeTrackVideo } from './make-track-info';
3
4
  import type { ProgressTracker } from './progress-tracker';
4
5
  export type MediaFn = {
@@ -29,4 +30,5 @@ export type MediaFnGeneratorInput = {
29
30
  progressTracker: ProgressTracker;
30
31
  expectedDurationInSeconds: number | null;
31
32
  expectedFrameRate: number | null;
33
+ container: ConvertMediaContainer;
32
34
  };
@@ -0,0 +1,2 @@
1
+ import type { MediaFnGeneratorInput } from './create/media-fn';
2
+ export declare const createMedia: (params: MediaFnGeneratorInput) => Promise<import("./create/media-fn").MediaFn>;
@@ -0,0 +1,19 @@
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 = (params) => {
8
+ if (params.container === 'mp4') {
9
+ return (0, create_iso_base_media_1.createIsoBaseMedia)(params);
10
+ }
11
+ if (params.container === 'wav') {
12
+ return (0, create_wav_1.createWav)(params);
13
+ }
14
+ if (params.container === 'webm') {
15
+ return (0, create_matroska_media_1.createMatroskaMedia)(params);
16
+ }
17
+ throw new Error(`Unsupported container: ${params.container}`);
18
+ };
19
+ exports.createMedia = createMedia;