@remotion/media-parser 4.0.290 → 4.0.291

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 (160) hide show
  1. package/dist/containers/iso-base-media/base-media-box.d.ts +0 -1
  2. package/dist/containers/iso-base-media/collect-sample-positions-from-moof-boxes.d.ts +4 -1
  3. package/dist/containers/iso-base-media/collect-sample-positions-from-moof-boxes.js +9 -5
  4. package/dist/containers/iso-base-media/find-keyframe-before-time.js +16 -11
  5. package/dist/containers/iso-base-media/find-track-to-seek.d.ts +14 -0
  6. package/dist/containers/iso-base-media/find-track-to-seek.js +39 -0
  7. package/dist/containers/iso-base-media/get-children.js +2 -2
  8. package/dist/containers/iso-base-media/get-keyframes.js +6 -1
  9. package/dist/containers/iso-base-media/get-mfra-seeking-box.d.ts +3 -1
  10. package/dist/containers/iso-base-media/get-mfra-seeking-box.js +5 -1
  11. package/dist/containers/iso-base-media/get-moov-atom.js +6 -3
  12. package/dist/containers/iso-base-media/get-sample-position-bounds.js +3 -1
  13. package/dist/containers/iso-base-media/get-sample-positions-from-track.js +1 -1
  14. package/dist/containers/iso-base-media/get-seeking-byte-from-fragmented-mp4.d.ts +14 -0
  15. package/dist/containers/iso-base-media/get-seeking-byte-from-fragmented-mp4.js +89 -0
  16. package/dist/containers/iso-base-media/get-seeking-byte.d.ts +3 -3
  17. package/dist/containers/iso-base-media/get-seeking-byte.js +32 -96
  18. package/dist/containers/iso-base-media/mdat/calculate-jump-marks.d.ts +6 -0
  19. package/dist/containers/iso-base-media/mdat/calculate-jump-marks.js +131 -0
  20. package/dist/containers/iso-base-media/mdat/mdat.d.ts +2 -2
  21. package/dist/containers/iso-base-media/mdat/mdat.js +18 -2
  22. package/dist/containers/iso-base-media/mfra/find-best-segment-from-tfra.d.ts +3 -3
  23. package/dist/containers/iso-base-media/mfra/find-best-segment-from-tfra.js +2 -2
  24. package/dist/containers/iso-base-media/mfra/get-mfra-atom.d.ts +5 -1
  25. package/dist/containers/iso-base-media/mfra/get-mfra-atom.js +3 -1
  26. package/dist/containers/iso-base-media/mfra/get-mfro-atom.d.ts +5 -1
  27. package/dist/containers/iso-base-media/mfra/get-mfro-atom.js +3 -1
  28. package/dist/containers/iso-base-media/parse-boxes.js +5 -2
  29. package/dist/containers/iso-base-media/process-box.d.ts +16 -5
  30. package/dist/containers/iso-base-media/process-box.js +206 -118
  31. package/dist/containers/iso-base-media/sample-positions.d.ts +25 -0
  32. package/dist/containers/iso-base-media/sample-positions.js +37 -0
  33. package/dist/containers/iso-base-media/stsd/samples.js +1 -0
  34. package/dist/containers/iso-base-media/stsd/stsc.d.ts +1 -6
  35. package/dist/containers/iso-base-media/stsd/stsc.js +2 -5
  36. package/dist/containers/iso-base-media/stsd/stss.d.ts +1 -1
  37. package/dist/containers/iso-base-media/stsd/stss.js +2 -2
  38. package/dist/containers/iso-base-media/turn-sample-positions-into-array.d.ts +19 -0
  39. package/dist/containers/iso-base-media/turn-sample-positions-into-array.js +73 -0
  40. package/dist/containers/m3u/after-manifest-fetch.d.ts +5 -1
  41. package/dist/containers/m3u/after-manifest-fetch.js +3 -1
  42. package/dist/containers/m3u/first-sample-in-m3u-chunk.d.ts +13 -0
  43. package/dist/containers/m3u/first-sample-in-m3u-chunk.js +31 -0
  44. package/dist/containers/m3u/get-seeking-byte.d.ts +13 -0
  45. package/dist/containers/m3u/get-seeking-byte.js +32 -0
  46. package/dist/containers/m3u/get-streams.d.ts +1 -0
  47. package/dist/containers/m3u/get-streams.js +1 -0
  48. package/dist/containers/m3u/iterate-over-segment-files.d.ts +5 -3
  49. package/dist/containers/m3u/iterate-over-segment-files.js +11 -1
  50. package/dist/containers/m3u/parse-m3u-media-directive.js +1 -0
  51. package/dist/containers/m3u/parse-m3u.js +8 -0
  52. package/dist/containers/m3u/process-m3u-chunk.d.ts +12 -0
  53. package/dist/containers/m3u/process-m3u-chunk.js +274 -0
  54. package/dist/containers/m3u/run-over-m3u.js +7 -80
  55. package/dist/containers/m3u/sample-sorter.d.ts +1 -0
  56. package/dist/containers/m3u/sample-sorter.js +4 -1
  57. package/dist/containers/m3u/seek/get-chunk-to-seek-to.d.ts +5 -0
  58. package/dist/containers/m3u/seek/get-chunk-to-seek-to.js +14 -0
  59. package/dist/containers/m3u/seeking-hints.d.ts +2 -0
  60. package/dist/containers/m3u/seeking-hints.js +9 -0
  61. package/dist/containers/m3u/select-stream.d.ts +2 -1
  62. package/dist/containers/m3u/select-stream.js +7 -2
  63. package/dist/containers/m3u/types.d.ts +1 -0
  64. package/dist/containers/riff/seek/fetch-idx1.d.ts +3 -1
  65. package/dist/containers/riff/seek/fetch-idx1.js +3 -1
  66. package/dist/containers/transport-stream/handle-aac-packet.d.ts +2 -2
  67. package/dist/containers/transport-stream/handle-avc-packet.d.ts +2 -2
  68. package/dist/containers/transport-stream/process-audio.d.ts +2 -2
  69. package/dist/containers/transport-stream/process-stream-buffers.d.ts +3 -3
  70. package/dist/containers/transport-stream/process-video.d.ts +2 -2
  71. package/dist/containers/webm/get-sample-from-block.d.ts +12 -2
  72. package/dist/containers/webm/get-sample-from-block.js +40 -9
  73. package/dist/containers/webm/parse-ebml.js +28 -10
  74. package/dist/containers/webm/seek/fetch-web-cues.d.ts +3 -1
  75. package/dist/containers/webm/seek/fetch-web-cues.js +3 -1
  76. package/dist/containers/webm/state-for-processing.d.ts +2 -2
  77. package/dist/controller/media-parser-controller.d.ts +1 -1
  78. package/dist/controller/media-parser-controller.js +6 -2
  79. package/dist/controller/seek-signal.d.ts +1 -5
  80. package/dist/download-and-parse-media.js +1 -1
  81. package/dist/esm/index.mjs +1400 -611
  82. package/dist/esm/node.mjs +23 -3
  83. package/dist/esm/server-worker.mjs +8 -1
  84. package/dist/esm/universal.mjs +168 -15
  85. package/dist/esm/web.mjs +145 -13
  86. package/dist/esm/worker-server-entry.mjs +1467 -635
  87. package/dist/esm/worker-web-entry.mjs +1439 -634
  88. package/dist/esm/worker.mjs +8 -1
  89. package/dist/get-audio-codec.js +3 -0
  90. package/dist/get-duration.js +2 -1
  91. package/dist/get-fps.js +2 -1
  92. package/dist/get-sample-positions-from-mp4.js +10 -5
  93. package/dist/get-sample-positions.js +4 -4
  94. package/dist/get-seeking-byte.d.ts +5 -3
  95. package/dist/get-seeking-byte.js +19 -10
  96. package/dist/get-seeking-hints.d.ts +3 -3
  97. package/dist/get-seeking-hints.js +18 -13
  98. package/dist/get-tracks.d.ts +9 -1
  99. package/dist/get-tracks.js +13 -6
  100. package/dist/index.d.ts +21 -5
  101. package/dist/init-video.js +3 -2
  102. package/dist/internal-parse-media.js +13 -4
  103. package/dist/iterator/buffer-iterator.js +5 -3
  104. package/dist/metadata/metadata-from-iso.js +2 -1
  105. package/dist/options.d.ts +6 -1
  106. package/dist/parse-loop.js +22 -6
  107. package/dist/parse-media-on-worker-entry.js +1 -0
  108. package/dist/parse-media.js +1 -1
  109. package/dist/parse-result.d.ts +2 -2
  110. package/dist/perform-seek.d.ts +3 -1
  111. package/dist/perform-seek.js +3 -1
  112. package/dist/readers/fetch/get-body-and-reader.js +17 -2
  113. package/dist/readers/from-fetch.d.ts +17 -1
  114. package/dist/readers/from-fetch.js +68 -13
  115. package/dist/readers/from-node.js +24 -2
  116. package/dist/readers/from-web-file.js +3 -0
  117. package/dist/readers/reader.d.ts +19 -2
  118. package/dist/readers/universal.js +9 -0
  119. package/dist/readers/web.js +6 -0
  120. package/dist/register-track.d.ts +3 -3
  121. package/dist/seek-backwards.d.ts +3 -1
  122. package/dist/seek-backwards.js +4 -1
  123. package/dist/seek-forwards.d.ts +3 -1
  124. package/dist/seek-forwards.js +3 -1
  125. package/dist/seeking-hints.d.ts +4 -1
  126. package/dist/set-seeking-hints.js +4 -0
  127. package/dist/skip.d.ts +5 -0
  128. package/dist/skip.js +6 -1
  129. package/dist/state/can-skip-tracks.d.ts +1 -0
  130. package/dist/state/can-skip-tracks.js +10 -6
  131. package/dist/state/iso-base-media/cached-sample-positions.d.ts +15 -1
  132. package/dist/state/iso-base-media/cached-sample-positions.js +9 -4
  133. package/dist/state/iso-base-media/iso-state.d.ts +5 -1
  134. package/dist/state/iso-base-media/iso-state.js +2 -1
  135. package/dist/state/iso-base-media/lazy-mfra-load.d.ts +3 -1
  136. package/dist/state/iso-base-media/lazy-mfra-load.js +2 -1
  137. package/dist/state/keyframes.js +1 -0
  138. package/dist/state/m3u-state.d.ts +15 -4
  139. package/dist/state/m3u-state.js +20 -0
  140. package/dist/state/matroska/lazy-cues-fetch.d.ts +3 -1
  141. package/dist/state/matroska/lazy-cues-fetch.js +2 -1
  142. package/dist/state/matroska/webm.d.ts +3 -1
  143. package/dist/state/matroska/webm.js +2 -1
  144. package/dist/state/parser-state.d.ts +29 -13
  145. package/dist/state/parser-state.js +19 -5
  146. package/dist/state/riff/lazy-idx1-fetch.d.ts +3 -1
  147. package/dist/state/riff/lazy-idx1-fetch.js +2 -1
  148. package/dist/state/riff.d.ts +3 -1
  149. package/dist/state/riff.js +2 -1
  150. package/dist/state/sample-callbacks.d.ts +3 -2
  151. package/dist/state/sample-callbacks.js +3 -3
  152. package/dist/version.d.ts +1 -1
  153. package/dist/version.js +1 -1
  154. package/dist/work-on-seek-request.d.ts +6 -3
  155. package/dist/work-on-seek-request.js +13 -13
  156. package/dist/worker/forward-controller-to-worker.js +1 -1
  157. package/dist/worker/serialize-error.js +26 -3
  158. package/dist/worker/worker-types.d.ts +7 -1
  159. package/dist/worker-server.js +2 -2
  160. package/package.json +3 -3
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "4.0.290";
1
+ export declare const VERSION = "4.0.291";
package/dist/version.js CHANGED
@@ -2,4 +2,4 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
4
  // Automatically generated on publish
5
- exports.VERSION = '4.0.290';
5
+ exports.VERSION = '4.0.291';
@@ -1,9 +1,9 @@
1
1
  import type { MediaParserController } from './controller/media-parser-controller';
2
+ import type { PrefetchCache } from './fetch';
2
3
  import type { AllOptions, ParseMediaFields } from './fields';
3
4
  import type { BufferIterator } from './iterator/buffer-iterator';
4
5
  import type { LogLevel } from './log';
5
- import type { ParseMediaMode, ParseMediaSrc } from './options';
6
- import type { IsoBaseMediaStructure } from './parse-result';
6
+ import type { M3uPlaylistContext, ParseMediaMode, ParseMediaSrc } from './options';
7
7
  import type { ReaderInterface } from './readers/reader';
8
8
  import type { AacState } from './state/aac-state';
9
9
  import type { CurrentReader } from './state/current-reader';
@@ -11,6 +11,7 @@ import type { FlacState } from './state/flac-state';
11
11
  import type { TracksState } from './state/has-tracks-section';
12
12
  import type { IsoBaseMediaState } from './state/iso-base-media/iso-state';
13
13
  import type { KeyframesState } from './state/keyframes';
14
+ import type { M3uState } from './state/m3u-state';
14
15
  import type { WebmState } from './state/matroska/webm';
15
16
  import type { Mp3State } from './state/mp3';
16
17
  import type { ParserState } from './state/parser-state';
@@ -30,7 +31,7 @@ export type WorkOnSeekRequestOptions = {
30
31
  contentLength: number;
31
32
  readerInterface: ReaderInterface;
32
33
  mediaSection: MediaSectionState;
33
- mp4HeaderSegment: IsoBaseMediaStructure | null;
34
+ m3uPlaylistContext: M3uPlaylistContext | null;
34
35
  transportStream: TransportStreamState;
35
36
  mode: ParseMediaMode;
36
37
  seekInfiniteLoop: SeekInfiniteLoop;
@@ -45,6 +46,8 @@ export type WorkOnSeekRequestOptions = {
45
46
  riffState: RiffState;
46
47
  mp3State: Mp3State;
47
48
  aacState: AacState;
49
+ m3uState: M3uState;
50
+ prefetchCache: PrefetchCache;
48
51
  };
49
52
  export declare const getWorkOnSeekRequestOptions: (state: ParserState) => WorkOnSeekRequestOptions;
50
53
  export declare const workOnSeekRequest: (options: WorkOnSeekRequestOptions) => Promise<void>;
@@ -5,7 +5,7 @@ const get_seeking_byte_1 = require("./get-seeking-byte");
5
5
  const get_seeking_hints_1 = require("./get-seeking-hints");
6
6
  const log_1 = require("./log");
7
7
  const perform_seek_1 = require("./perform-seek");
8
- const turnSeekIntoByte = async ({ seek, mediaSectionState, logLevel, iterator, structureState, mp4HeaderSegment, isoState, transportStream, tracksState, webmState, keyframes, flacState, samplesObserved, riffState, mp3State, contentLength, aacState, }) => {
8
+ const turnSeekIntoByte = async ({ seek, mediaSectionState, logLevel, iterator, structureState, m3uPlaylistContext, isoState, transportStream, tracksState, webmState, keyframes, flacState, samplesObserved, riffState, mp3State, contentLength, aacState, m3uState, }) => {
9
9
  const mediaSections = mediaSectionState.getMediaSections();
10
10
  if (mediaSections.length === 0) {
11
11
  log_1.Log.trace(logLevel, 'No media sections defined, cannot seek yet');
@@ -21,7 +21,6 @@ const turnSeekIntoByte = async ({ seek, mediaSectionState, logLevel, iterator, s
21
21
  riffState,
22
22
  samplesObserved,
23
23
  structureState,
24
- mp4HeaderSegment,
25
24
  mediaSectionState,
26
25
  isoState,
27
26
  transportStream,
@@ -32,6 +31,7 @@ const turnSeekIntoByte = async ({ seek, mediaSectionState, logLevel, iterator, s
32
31
  mp3State,
33
32
  contentLength,
34
33
  aacState,
34
+ m3uPlaylistContext,
35
35
  });
36
36
  if (!seekingHints) {
37
37
  log_1.Log.trace(logLevel, 'No seeking info, cannot seek yet');
@@ -48,18 +48,13 @@ const turnSeekIntoByte = async ({ seek, mediaSectionState, logLevel, iterator, s
48
48
  transportStream,
49
49
  webmState,
50
50
  mediaSection: mediaSectionState,
51
- mp4HeaderSegment,
51
+ m3uPlaylistContext,
52
52
  structure: structureState,
53
53
  riffState,
54
+ m3uState,
54
55
  });
55
56
  return seekingByte;
56
57
  }
57
- if (seek.type === 'byte') {
58
- return {
59
- type: 'do-seek',
60
- byte: seek.byte,
61
- };
62
- }
63
58
  throw new Error(`Cannot process seek request for ${seek}: ${JSON.stringify(seek)}`);
64
59
  };
65
60
  const getWorkOnSeekRequestOptions = (state) => {
@@ -73,7 +68,7 @@ const getWorkOnSeekRequestOptions = (state) => {
73
68
  contentLength: state.contentLength,
74
69
  readerInterface: state.readerInterface,
75
70
  mediaSection: state.mediaSection,
76
- mp4HeaderSegment: state.mp4HeaderSegment,
71
+ m3uPlaylistContext: state.m3uPlaylistContext,
77
72
  mode: state.mode,
78
73
  seekInfiniteLoop: state.seekInfiniteLoop,
79
74
  currentReader: state.currentReader,
@@ -88,23 +83,25 @@ const getWorkOnSeekRequestOptions = (state) => {
88
83
  riffState: state.riff,
89
84
  mp3State: state.mp3,
90
85
  aacState: state.aac,
86
+ m3uState: state.m3u,
87
+ prefetchCache: state.prefetchCache,
91
88
  };
92
89
  };
93
90
  exports.getWorkOnSeekRequestOptions = getWorkOnSeekRequestOptions;
94
91
  const workOnSeekRequest = async (options) => {
95
- const { logLevel, controller, mediaSection, mp4HeaderSegment, isoState, iterator, structureState, src, contentLength, readerInterface, mode, seekInfiniteLoop, currentReader, discardReadBytes, fields, transportStream, tracksState, webmState, keyframes, flacState, samplesObserved, riffState, mp3State, aacState, } = options;
92
+ const { logLevel, controller, mediaSection, m3uPlaylistContext, isoState, iterator, structureState, src, contentLength, readerInterface, mode, seekInfiniteLoop, currentReader, discardReadBytes, fields, transportStream, tracksState, webmState, keyframes, flacState, samplesObserved, riffState, mp3State, aacState, prefetchCache, m3uState, } = options;
96
93
  const seek = controller._internals.seekSignal.getSeek();
97
94
  if (!seek) {
98
95
  return;
99
96
  }
100
- log_1.Log.trace(logLevel, `Has seek request: ${JSON.stringify(seek)}`);
97
+ log_1.Log.trace(logLevel, `Has seek request for ${src}: ${JSON.stringify(seek)}`);
101
98
  const resolution = await turnSeekIntoByte({
102
99
  seek,
103
100
  mediaSectionState: mediaSection,
104
101
  logLevel,
105
102
  iterator,
106
103
  structureState,
107
- mp4HeaderSegment,
104
+ m3uPlaylistContext,
108
105
  isoState,
109
106
  transportStream,
110
107
  tracksState,
@@ -116,6 +113,7 @@ const workOnSeekRequest = async (options) => {
116
113
  mp3State,
117
114
  contentLength,
118
115
  aacState,
116
+ m3uState,
119
117
  });
120
118
  log_1.Log.trace(logLevel, `Seek action: ${JSON.stringify(resolution)}`);
121
119
  if (resolution.type === 'intermediary-seek') {
@@ -134,6 +132,7 @@ const workOnSeekRequest = async (options) => {
134
132
  src,
135
133
  discardReadBytes,
136
134
  fields,
135
+ prefetchCache,
137
136
  });
138
137
  return;
139
138
  }
@@ -153,6 +152,7 @@ const workOnSeekRequest = async (options) => {
153
152
  src,
154
153
  discardReadBytes,
155
154
  fields,
155
+ prefetchCache,
156
156
  });
157
157
  const { hasChanged } = controller._internals.seekSignal.clearSeekIfStillSame(seek);
158
158
  if (hasChanged) {
@@ -9,7 +9,7 @@ const forwardMediaParserControllerToWorker = (controller) => {
9
9
  return;
10
10
  }
11
11
  if (message.type === 'request-seek') {
12
- controller._experimentalSeek(message.payload);
12
+ controller.seek(message.payload);
13
13
  return;
14
14
  }
15
15
  if (message.type === 'request-get-seeking-hints') {
@@ -4,7 +4,7 @@ exports.deserializeError = exports.serializeError = void 0;
4
4
  const errors_1 = require("../errors");
5
5
  const log_1 = require("../log");
6
6
  const serializeError = ({ error, logLevel, seekingHints, }) => {
7
- var _a, _b, _c, _d, _e;
7
+ var _a, _b, _c, _d, _e, _f, _g;
8
8
  if (error instanceof errors_1.IsAGifError) {
9
9
  return {
10
10
  type: 'response-error',
@@ -49,6 +49,22 @@ const serializeError = ({ error, logLevel, seekingHints, }) => {
49
49
  seekingHints,
50
50
  };
51
51
  }
52
+ if (error.name === 'AbortError') {
53
+ return {
54
+ type: 'response-error',
55
+ errorName: 'AbortError',
56
+ errorMessage: error.message,
57
+ errorStack: (_e = error.stack) !== null && _e !== void 0 ? _e : '',
58
+ };
59
+ }
60
+ if (error.name === 'NotReadableError') {
61
+ return {
62
+ type: 'response-error',
63
+ errorName: 'NotReadableError',
64
+ errorMessage: error.message,
65
+ errorStack: (_f = error.stack) !== null && _f !== void 0 ? _f : '',
66
+ };
67
+ }
52
68
  if (error.name !== 'Error') {
53
69
  log_1.Log.warn(logLevel, `Original error was of type ${error.name} did not properly propagate`);
54
70
  }
@@ -56,7 +72,7 @@ const serializeError = ({ error, logLevel, seekingHints, }) => {
56
72
  type: 'response-error',
57
73
  errorName: 'Error',
58
74
  errorMessage: error.message,
59
- errorStack: (_e = error.stack) !== null && _e !== void 0 ? _e : '',
75
+ errorStack: (_g = error.stack) !== null && _g !== void 0 ? _g : '',
60
76
  };
61
77
  };
62
78
  exports.serializeError = serializeError;
@@ -94,8 +110,15 @@ const deserializeError = (error) => {
94
110
  });
95
111
  case 'MediaParserAbortError':
96
112
  return new errors_1.MediaParserAbortError(error.errorMessage);
97
- default:
113
+ case 'Error':
98
114
  return new Error(error.errorMessage);
115
+ case 'AbortError':
116
+ return new Error(error.errorMessage);
117
+ // TODO: Document 2GB limit
118
+ case 'NotReadableError':
119
+ return new Error(error.errorMessage);
120
+ default:
121
+ throw new Error(`Unknown error name: ${error}`);
99
122
  }
100
123
  };
101
124
  exports.deserializeError = deserializeError;
@@ -79,9 +79,15 @@ type BaseError = {
79
79
  errorStack: string;
80
80
  errorMessage: string;
81
81
  };
82
+ type AbortError = BaseError & {
83
+ errorName: 'AbortError';
84
+ };
82
85
  type GenericError = BaseError & {
83
86
  errorName: 'Error';
84
87
  };
88
+ type NotReadableError = BaseError & {
89
+ errorName: 'NotReadableError';
90
+ };
85
91
  type IsAGifError = BaseError & {
86
92
  errorName: 'IsAGifError';
87
93
  mimeType: string | null;
@@ -112,7 +118,7 @@ type MediaParserAbortError = BaseError & {
112
118
  errorName: 'MediaParserAbortError';
113
119
  seekingHints: SeekingHints | null;
114
120
  };
115
- type AnyError = GenericError | IsAGifError | IsAnImageError | IsAPdfError | IsAnUnsupportedFileTypeError | MediaParserAbortError;
121
+ type AnyError = GenericError | IsAGifError | IsAnImageError | IsAPdfError | IsAnUnsupportedFileTypeError | MediaParserAbortError | AbortError | NotReadableError;
116
122
  export type ResponseError = {
117
123
  type: 'response-error';
118
124
  } & AnyError;
@@ -42,7 +42,7 @@ const executeCallback = (payload) => {
42
42
  };
43
43
  const startParsing = async (message, reader) => {
44
44
  const { payload, src } = message;
45
- const { fields, acknowledgeRemotionLicense, logLevel: userLogLevel, progressIntervalInMs, mp4HeaderSegment, seekingHints, makeSamplesStartAtZero, } = payload;
45
+ const { fields, acknowledgeRemotionLicense, logLevel: userLogLevel, progressIntervalInMs, m3uPlaylistContext, seekingHints, makeSamplesStartAtZero, } = payload;
46
46
  const { postAudioCodec, postContainer, postDimensions, postFps, postImages, postInternalStats, postIsHdr, postKeyframes, postLocation, postM3uStreams, postMetadata, postMimeType, postName, postNumberOfAudioChannels, postRotation, postSampleRate, postSlowAudioBitrate, postSlowNumberOfFrames, postSlowFps, postSlowDurationInSeconds, postSlowVideoBitrate, postStructure, postTracks, postUnrotatedDimensions, postVideoCodec, postSize, postSlowKeyframes, postDurationInSeconds, postParseProgress, postM3uStreamSelection, postM3uAssociatedPlaylistsSelection, postOnAudioTrack, postOnVideoTrack, } = message;
47
47
  const logLevel = userLogLevel !== null && userLogLevel !== void 0 ? userLogLevel : 'info';
48
48
  try {
@@ -301,7 +301,7 @@ const startParsing = async (message, reader) => {
301
301
  return res.value;
302
302
  }
303
303
  : select_stream_1.defaultSelectM3uStreamFn,
304
- mp4HeaderSegment: mp4HeaderSegment !== null && mp4HeaderSegment !== void 0 ? mp4HeaderSegment : null,
304
+ m3uPlaylistContext: m3uPlaylistContext !== null && m3uPlaylistContext !== void 0 ? m3uPlaylistContext : null,
305
305
  selectM3uAssociatedPlaylists: postM3uAssociatedPlaylistsSelection
306
306
  ? async (playlists) => {
307
307
  const res = await executeCallback({
package/package.json CHANGED
@@ -3,15 +3,15 @@
3
3
  "url": "https://github.com/remotion-dev/remotion/tree/main/packages/media-parser"
4
4
  },
5
5
  "name": "@remotion/media-parser",
6
- "version": "4.0.290",
6
+ "version": "4.0.291",
7
7
  "main": "dist/index.js",
8
8
  "sideEffects": false,
9
9
  "devDependencies": {
10
10
  "@types/wicg-file-system-access": "2023.10.5",
11
11
  "eslint": "9.19.0",
12
12
  "@types/bun": "1.2.8",
13
- "@remotion/example-videos": "4.0.290",
14
- "@remotion/eslint-config-internal": "4.0.290"
13
+ "@remotion/example-videos": "4.0.291",
14
+ "@remotion/eslint-config-internal": "4.0.291"
15
15
  },
16
16
  "publishConfig": {
17
17
  "access": "public"