@remotion/media-parser 4.0.231 → 4.0.233

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 (115) hide show
  1. package/dist/add-avc-profile-to-track.d.ts +3 -0
  2. package/dist/add-avc-profile-to-track.js +35 -0
  3. package/dist/add-new-matroska-tracks.d.ts +6 -1
  4. package/dist/add-new-matroska-tracks.js +16 -1
  5. package/dist/boxes/avc/parse-avc.d.ts +18 -0
  6. package/dist/boxes/avc/parse-avc.js +96 -0
  7. package/dist/boxes/iso-base-media/esds/decoder-specific-config.d.ts +1 -2
  8. package/dist/boxes/iso-base-media/esds/decoder-specific-config.js +1 -5
  9. package/dist/boxes/iso-base-media/esds/esds-descriptors.d.ts +2 -4
  10. package/dist/boxes/iso-base-media/esds/esds-descriptors.js +3 -4
  11. package/dist/boxes/iso-base-media/esds/esds.d.ts +1 -3
  12. package/dist/boxes/iso-base-media/esds/esds.js +2 -2
  13. package/dist/boxes/iso-base-media/get-sample-positions-from-track.js +7 -1
  14. package/dist/boxes/iso-base-media/make-track.js +3 -3
  15. package/dist/boxes/iso-base-media/mdat/mdat.d.ts +2 -2
  16. package/dist/boxes/iso-base-media/mdat/mdat.js +5 -2
  17. package/dist/boxes/iso-base-media/moov/moov.js +2 -2
  18. package/dist/boxes/iso-base-media/process-box.d.ts +5 -5
  19. package/dist/boxes/iso-base-media/process-box.js +38 -38
  20. package/dist/boxes/iso-base-media/stsd/mebx.js +2 -2
  21. package/dist/boxes/iso-base-media/stsd/samples.d.ts +2 -2
  22. package/dist/boxes/iso-base-media/stsd/samples.js +15 -14
  23. package/dist/boxes/iso-base-media/trak/trak.js +2 -2
  24. package/dist/boxes/iso-base-media/traversal.d.ts +1 -1
  25. package/dist/boxes/riff/expect-riff-box.d.ts +16 -0
  26. package/dist/boxes/riff/expect-riff-box.js +49 -0
  27. package/dist/boxes/riff/get-tracks-from-avi.d.ts +21 -0
  28. package/dist/boxes/riff/get-tracks-from-avi.js +108 -0
  29. package/dist/boxes/riff/is-movi.d.ts +2 -0
  30. package/dist/boxes/riff/is-movi.js +12 -0
  31. package/dist/boxes/riff/parse-avih.d.ts +6 -0
  32. package/dist/boxes/riff/parse-avih.js +32 -0
  33. package/dist/boxes/riff/parse-box.d.ts +13 -0
  34. package/dist/boxes/riff/parse-box.js +113 -0
  35. package/dist/boxes/riff/parse-fmt-box.d.ts +7 -0
  36. package/dist/boxes/riff/parse-fmt-box.js +33 -0
  37. package/dist/boxes/riff/parse-list-box.d.ts +8 -0
  38. package/dist/boxes/riff/parse-list-box.js +30 -0
  39. package/dist/boxes/riff/parse-movi.d.ts +17 -0
  40. package/dist/boxes/riff/parse-movi.js +122 -0
  41. package/dist/boxes/riff/parse-riff-box.d.ts +10 -0
  42. package/dist/boxes/riff/parse-riff-box.js +33 -0
  43. package/dist/boxes/riff/parse-strf.d.ts +7 -0
  44. package/dist/boxes/riff/parse-strf.js +67 -0
  45. package/dist/boxes/riff/parse-strh.d.ts +6 -0
  46. package/dist/boxes/riff/parse-strh.js +46 -0
  47. package/dist/boxes/riff/riff-box.d.ts +81 -0
  48. package/dist/boxes/riff/riff-box.js +2 -0
  49. package/dist/boxes/riff/strf.d.ts +7 -0
  50. package/dist/boxes/riff/strf.js +67 -0
  51. package/dist/boxes/riff/timescale.d.ts +1 -0
  52. package/dist/boxes/riff/timescale.js +4 -0
  53. package/dist/boxes/riff/traversal.d.ts +8 -0
  54. package/dist/boxes/riff/traversal.js +36 -0
  55. package/dist/boxes/webm/parse-ebml.js +2 -2
  56. package/dist/boxes/webm/parse-webm-header.d.ts +2 -2
  57. package/dist/boxes/webm/parse-webm-header.js +7 -7
  58. package/dist/boxes/webm/traversal.d.ts +2 -2
  59. package/dist/buffer-iterator.d.ts +6 -1
  60. package/dist/buffer-iterator.js +24 -5
  61. package/dist/create/event-emitter.d.ts +31 -0
  62. package/dist/create/event-emitter.js +25 -0
  63. package/dist/create/iso-base-media/create-iso-base-media.d.ts +1 -1
  64. package/dist/create/iso-base-media/create-iso-base-media.js +3 -5
  65. package/dist/create/matroska/cluster.js +1 -1
  66. package/dist/create/matroska/create-matroska-media.d.ts +1 -1
  67. package/dist/create/matroska/create-matroska-media.js +7 -14
  68. package/dist/create/media-fn.d.ts +2 -1
  69. package/dist/create/mp3/create-mp3.d.ts +2 -0
  70. package/dist/create/mp3/create-mp3.js +49 -0
  71. package/dist/create/progress-tracker.d.ts +7 -0
  72. package/dist/create/progress-tracker.js +43 -0
  73. package/dist/create/wav/create-wav.d.ts +2 -0
  74. package/dist/create/wav/create-wav.js +110 -0
  75. package/dist/create/with-resolvers.d.ts +10 -0
  76. package/dist/create/with-resolvers.js +28 -0
  77. package/dist/emit-available-info.d.ts +2 -2
  78. package/dist/emit-available-info.js +17 -6
  79. package/dist/esm/from-node.mjs +2 -1
  80. package/dist/esm/index.mjs +1828 -605
  81. package/dist/get-audio-codec.d.ts +4 -3
  82. package/dist/get-audio-codec.js +17 -3
  83. package/dist/get-container.d.ts +3 -3
  84. package/dist/get-container.js +9 -7
  85. package/dist/get-dimensions.d.ts +3 -3
  86. package/dist/get-duration.d.ts +3 -3
  87. package/dist/get-duration.js +32 -14
  88. package/dist/get-fps.d.ts +3 -3
  89. package/dist/get-fps.js +31 -4
  90. package/dist/get-is-hdr.d.ts +4 -0
  91. package/dist/get-is-hdr.js +18 -0
  92. package/dist/get-sample-positions-from-lpcm.d.ts +3 -0
  93. package/dist/get-sample-positions-from-lpcm.js +46 -0
  94. package/dist/get-tracks.d.ts +7 -10
  95. package/dist/get-tracks.js +55 -27
  96. package/dist/get-video-codec.d.ts +5 -4
  97. package/dist/get-video-codec.js +47 -13
  98. package/dist/has-all-info.d.ts +2 -2
  99. package/dist/has-all-info.js +10 -5
  100. package/dist/index.d.ts +23 -3
  101. package/dist/index.js +9 -0
  102. package/dist/options.d.ts +16 -9
  103. package/dist/parse-media.js +3 -1
  104. package/dist/parse-result.d.ts +20 -6
  105. package/dist/parse-video.d.ts +2 -2
  106. package/dist/parse-video.js +5 -16
  107. package/dist/parser-context.d.ts +1 -0
  108. package/dist/parser-state.d.ts +11 -0
  109. package/dist/parser-state.js +30 -0
  110. package/dist/readers/from-node.js +2 -1
  111. package/dist/register-track.d.ts +13 -0
  112. package/dist/register-track.js +25 -0
  113. package/dist/version.d.ts +1 -1
  114. package/dist/version.js +1 -1
  115. package/package.json +3 -3
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.withResolversAndWaitForReturn = exports.withResolvers = void 0;
4
+ const withResolvers = function () {
5
+ let resolve;
6
+ let reject;
7
+ const promise = new Promise((res, rej) => {
8
+ resolve = res;
9
+ reject = rej;
10
+ });
11
+ return { promise, resolve: resolve, reject: reject };
12
+ };
13
+ exports.withResolvers = withResolvers;
14
+ const withResolversAndWaitForReturn = () => {
15
+ const { promise, reject, resolve } = (0, exports.withResolvers)();
16
+ const { promise: returnPromise, resolve: resolveReturn } = (0, exports.withResolvers)();
17
+ return {
18
+ getPromiseToImmediatelyReturn: () => {
19
+ resolveReturn(undefined);
20
+ return promise;
21
+ },
22
+ reject: (reason) => {
23
+ returnPromise.then(() => reject(reason));
24
+ },
25
+ resolve,
26
+ };
27
+ };
28
+ exports.withResolversAndWaitForReturn = withResolversAndWaitForReturn;
@@ -1,9 +1,9 @@
1
1
  import type { AllParseMediaFields, Options, ParseMediaCallbacks, ParseMediaFields, ParseMediaResult } from './options';
2
- import type { ParseResult } from './parse-result';
2
+ import type { ParseResult, Structure } from './parse-result';
3
3
  import type { ParserState } from './parser-state';
4
4
  export declare const emitAvailableInfo: ({ hasInfo, parseResult, moreFields, state, returnValue, contentLength, name, }: {
5
5
  hasInfo: Record<keyof Options<ParseMediaFields>, boolean>;
6
- parseResult: ParseResult | null;
6
+ parseResult: ParseResult<Structure> | null;
7
7
  moreFields: ParseMediaCallbacks<AllParseMediaFields>;
8
8
  state: ParserState;
9
9
  returnValue: ParseMediaResult<AllParseMediaFields>;
@@ -6,16 +6,19 @@ const get_container_1 = require("./get-container");
6
6
  const get_dimensions_1 = require("./get-dimensions");
7
7
  const get_duration_1 = require("./get-duration");
8
8
  const get_fps_1 = require("./get-fps");
9
+ const get_is_hdr_1 = require("./get-is-hdr");
9
10
  const get_tracks_1 = require("./get-tracks");
10
11
  const get_video_codec_1 = require("./get-video-codec");
11
12
  const emitAvailableInfo = ({ hasInfo, parseResult, moreFields, state, returnValue, contentLength, name, }) => {
12
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
13
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
13
14
  const keys = Object.keys(hasInfo);
14
15
  for (const key of keys) {
15
- if (key === 'boxes') {
16
- if (parseResult && hasInfo.boxes && returnValue.boxes === undefined) {
17
- (_a = moreFields.onBoxes) === null || _a === void 0 ? void 0 : _a.call(moreFields, parseResult.segments);
18
- returnValue.boxes = parseResult.segments;
16
+ if (key === 'structure') {
17
+ if (parseResult &&
18
+ hasInfo.structure &&
19
+ returnValue.structure === undefined) {
20
+ (_a = moreFields.onStructure) === null || _a === void 0 ? void 0 : _a.call(moreFields, parseResult.segments);
21
+ returnValue.structure = parseResult.segments;
19
22
  }
20
23
  continue;
21
24
  }
@@ -130,12 +133,20 @@ const emitAvailableInfo = ({ hasInfo, parseResult, moreFields, state, returnValu
130
133
  }
131
134
  continue;
132
135
  }
136
+ if (key === 'isHdr') {
137
+ if (returnValue.isHdr === undefined && hasInfo.isHdr && parseResult) {
138
+ const isHdr = (0, get_is_hdr_1.getIsHdr)(parseResult.segments, state);
139
+ (_o = moreFields.onIsHdr) === null || _o === void 0 ? void 0 : _o.call(moreFields, isHdr);
140
+ returnValue.isHdr = isHdr;
141
+ }
142
+ continue;
143
+ }
133
144
  if (key === 'container') {
134
145
  if (returnValue.container === undefined &&
135
146
  hasInfo.container &&
136
147
  parseResult) {
137
148
  const container = (0, get_container_1.getContainer)(parseResult.segments);
138
- (_o = moreFields.onContainer) === null || _o === void 0 ? void 0 : _o.call(moreFields, container);
149
+ (_p = moreFields.onContainer) === null || _p === void 0 ? void 0 : _p.call(moreFields, container);
139
150
  returnValue.container = container;
140
151
  }
141
152
  continue;
@@ -1,6 +1,7 @@
1
1
  // src/readers/from-node.ts
2
2
  import { createReadStream } from "fs";
3
3
  import { stat } from "node:fs/promises";
4
+ import { sep } from "path";
4
5
  import { Readable } from "stream";
5
6
  var nodeReader = {
6
7
  read: async (src, range, signal) => {
@@ -32,7 +33,7 @@ var nodeReader = {
32
33
  }
33
34
  },
34
35
  contentLength: stats.size,
35
- name: src.split("/").pop(),
36
+ name: src.split(sep).pop(),
36
37
  supportsContentRange: true
37
38
  };
38
39
  },