@remotion/media-parser 4.0.270 → 4.0.272

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 (338) hide show
  1. package/dist/aac-codecprivate.js +6 -13
  2. package/dist/add-avc-profile-to-track.js +5 -9
  3. package/dist/buffer-iterator.js +8 -13
  4. package/dist/combine-uint8-arrays.js +1 -5
  5. package/dist/containers/aac/parse-aac.js +9 -13
  6. package/dist/containers/aac/types.js +1 -2
  7. package/dist/containers/avc/codec-string.js +1 -5
  8. package/dist/containers/avc/color.js +3 -9
  9. package/dist/containers/avc/create-sps-pps-data.js +5 -9
  10. package/dist/containers/avc/interpret-sps.js +7 -13
  11. package/dist/containers/avc/key.js +1 -5
  12. package/dist/containers/avc/parse-avc.js +3 -7
  13. package/dist/containers/avc/sps-and-pps.js +1 -5
  14. package/dist/containers/flac/get-block-size.js +1 -5
  15. package/dist/containers/flac/get-channel-count.d.ts +1 -1
  16. package/dist/containers/flac/get-channel-count.js +1 -5
  17. package/dist/containers/flac/get-duration-from-flac.js +1 -5
  18. package/dist/containers/flac/get-metadata-from-flac.d.ts +1 -1
  19. package/dist/containers/flac/get-metadata-from-flac.js +1 -5
  20. package/dist/containers/flac/get-sample-rate.js +1 -5
  21. package/dist/containers/flac/parse-flac-frame.js +14 -19
  22. package/dist/containers/flac/parse-flac.js +15 -19
  23. package/dist/containers/flac/parse-header.js +1 -5
  24. package/dist/containers/flac/parse-metadata.js +1 -5
  25. package/dist/containers/flac/parse-streaminfo.js +3 -7
  26. package/dist/containers/flac/parse-unknown-block.js +1 -5
  27. package/dist/containers/flac/types.d.ts +2 -2
  28. package/dist/containers/flac/types.js +1 -2
  29. package/dist/containers/iso-base-media/base-media-box.js +1 -2
  30. package/dist/containers/iso-base-media/base-type.js +1 -2
  31. package/dist/containers/iso-base-media/esds/decoder-specific-config.js +1 -5
  32. package/dist/containers/iso-base-media/esds/esds-descriptors.js +5 -10
  33. package/dist/containers/iso-base-media/esds/esds.js +3 -7
  34. package/dist/containers/iso-base-media/ftyp.js +1 -5
  35. package/dist/containers/iso-base-media/get-actual-number-of-channels.js +4 -8
  36. package/dist/containers/iso-base-media/get-children.js +3 -7
  37. package/dist/containers/iso-base-media/get-keyframes.js +7 -11
  38. package/dist/containers/iso-base-media/get-moov-atom.js +21 -15
  39. package/dist/containers/iso-base-media/get-sample-positions-from-track.js +20 -24
  40. package/dist/containers/iso-base-media/get-video-codec-from-iso-track.d.ts +1 -1
  41. package/dist/containers/iso-base-media/get-video-codec-from-iso-track.js +3 -7
  42. package/dist/containers/iso-base-media/make-track.js +30 -34
  43. package/dist/containers/iso-base-media/mdat/mdat.js +16 -20
  44. package/dist/containers/iso-base-media/mdhd.js +1 -5
  45. package/dist/containers/iso-base-media/meta/hdlr.js +1 -5
  46. package/dist/containers/iso-base-media/meta/ilst.js +1 -5
  47. package/dist/containers/iso-base-media/moov/moov.js +3 -7
  48. package/dist/containers/iso-base-media/mvhd.js +7 -11
  49. package/dist/containers/iso-base-media/parse-boxes.js +5 -9
  50. package/dist/containers/iso-base-media/parse-icc-profile.js +4 -8
  51. package/dist/containers/iso-base-media/process-box.js +63 -67
  52. package/dist/containers/iso-base-media/stsd/av1c.js +1 -5
  53. package/dist/containers/iso-base-media/stsd/avcc.js +1 -5
  54. package/dist/containers/iso-base-media/stsd/colr.js +3 -7
  55. package/dist/containers/iso-base-media/stsd/ctts.js +1 -5
  56. package/dist/containers/iso-base-media/stsd/hvcc.js +3 -7
  57. package/dist/containers/iso-base-media/stsd/keys.js +1 -5
  58. package/dist/containers/iso-base-media/stsd/mebx.js +3 -7
  59. package/dist/containers/iso-base-media/stsd/pasp.js +1 -5
  60. package/dist/containers/iso-base-media/stsd/samples.js +8 -13
  61. package/dist/containers/iso-base-media/stsd/stco.js +1 -5
  62. package/dist/containers/iso-base-media/stsd/stsc.js +1 -5
  63. package/dist/containers/iso-base-media/stsd/stsd.js +3 -7
  64. package/dist/containers/iso-base-media/stsd/stss.js +1 -5
  65. package/dist/containers/iso-base-media/stsd/stsz.js +1 -5
  66. package/dist/containers/iso-base-media/stsd/stts.js +1 -5
  67. package/dist/containers/iso-base-media/tfdt.js +1 -5
  68. package/dist/containers/iso-base-media/tfhd.js +1 -5
  69. package/dist/containers/iso-base-media/tkhd.js +4 -8
  70. package/dist/containers/iso-base-media/to-date.js +1 -5
  71. package/dist/containers/iso-base-media/trak/trak.js +3 -7
  72. package/dist/containers/iso-base-media/traversal.d.ts +3 -2
  73. package/dist/containers/iso-base-media/traversal.js +42 -57
  74. package/dist/containers/iso-base-media/trun.js +2 -6
  75. package/dist/containers/iso-base-media/void-box.js +1 -2
  76. package/dist/containers/m3u/after-manifest-fetch.d.ts +5 -3
  77. package/dist/containers/m3u/after-manifest-fetch.js +13 -17
  78. package/dist/containers/m3u/fetch-m3u8-stream.d.ts +5 -1
  79. package/dist/containers/m3u/fetch-m3u8-stream.js +4 -12
  80. package/dist/containers/m3u/get-chunks.d.ts +1 -0
  81. package/dist/containers/m3u/get-chunks.js +6 -6
  82. package/dist/containers/m3u/get-duration-from-m3u.js +4 -8
  83. package/dist/containers/m3u/get-playlist.js +6 -12
  84. package/dist/containers/m3u/get-streams.d.ts +11 -5
  85. package/dist/containers/m3u/get-streams.js +5 -15
  86. package/dist/containers/m3u/iterate-over-segment-files.d.ts +19 -0
  87. package/dist/containers/m3u/iterate-over-segment-files.js +110 -0
  88. package/dist/containers/m3u/parse-directive.js +24 -10
  89. package/dist/containers/m3u/parse-m3u-manifest.js +3 -7
  90. package/dist/containers/m3u/parse-m3u-media-directive.d.ts +1 -0
  91. package/dist/containers/m3u/parse-m3u-media-directive.js +7 -7
  92. package/dist/containers/m3u/parse-m3u.js +13 -13
  93. package/dist/containers/m3u/parse-m3u8-text.js +3 -7
  94. package/dist/containers/m3u/parse-stream-inf.js +2 -7
  95. package/dist/containers/m3u/return-packets.d.ts +1 -1
  96. package/dist/containers/m3u/return-packets.js +14 -5
  97. package/dist/containers/m3u/run-over-m3u.js +68 -57
  98. package/dist/containers/m3u/sample-sorter.d.ts +2 -0
  99. package/dist/containers/m3u/sample-sorter.js +17 -9
  100. package/dist/containers/m3u/select-stream.d.ts +3 -2
  101. package/dist/containers/m3u/select-stream.js +9 -13
  102. package/dist/containers/m3u/types.d.ts +9 -2
  103. package/dist/containers/m3u/types.js +1 -2
  104. package/dist/containers/mp3/get-duration.js +5 -9
  105. package/dist/containers/mp3/get-frame-length.js +2 -7
  106. package/dist/containers/mp3/get-metadata-from-mp3.d.ts +2 -2
  107. package/dist/containers/mp3/get-metadata-from-mp3.js +1 -5
  108. package/dist/containers/mp3/id3-v1.js +1 -5
  109. package/dist/containers/mp3/id3.js +1 -5
  110. package/dist/containers/mp3/parse-mp3.js +7 -11
  111. package/dist/containers/mp3/parse-mpeg-header.js +10 -14
  112. package/dist/containers/mp3/samples-per-mpeg-file.js +1 -5
  113. package/dist/containers/riff/expect-riff-box.js +11 -15
  114. package/dist/containers/riff/get-duration.js +7 -12
  115. package/dist/containers/riff/get-tracks-from-avi.js +20 -28
  116. package/dist/containers/riff/is-movi.js +1 -5
  117. package/dist/containers/riff/parse-avih.js +1 -5
  118. package/dist/containers/riff/parse-isft.js +1 -5
  119. package/dist/containers/riff/parse-list-box.js +3 -7
  120. package/dist/containers/riff/parse-movi.js +13 -18
  121. package/dist/containers/riff/parse-riff-body.js +9 -13
  122. package/dist/containers/riff/parse-riff-box.js +9 -13
  123. package/dist/containers/riff/parse-riff-header.js +1 -5
  124. package/dist/containers/riff/parse-riff.js +5 -9
  125. package/dist/containers/riff/parse-strf.js +1 -5
  126. package/dist/containers/riff/parse-strh.js +3 -7
  127. package/dist/containers/riff/parse-video-section.js +7 -11
  128. package/dist/containers/riff/riff-box.js +1 -2
  129. package/dist/containers/riff/timescale.js +1 -4
  130. package/dist/containers/riff/traversal.js +7 -15
  131. package/dist/containers/transport-stream/adts-header.js +6 -10
  132. package/dist/containers/transport-stream/boxes.js +1 -2
  133. package/dist/containers/transport-stream/discard-rest-of-packet.js +2 -7
  134. package/dist/containers/transport-stream/find-separator.js +1 -4
  135. package/dist/containers/transport-stream/get-tracks.d.ts +2 -0
  136. package/dist/containers/transport-stream/get-tracks.js +13 -14
  137. package/dist/containers/transport-stream/handle-aac-packet.js +12 -16
  138. package/dist/containers/transport-stream/handle-avc-packet.js +22 -26
  139. package/dist/containers/transport-stream/next-pes-header-store.js +1 -5
  140. package/dist/containers/transport-stream/parse-packet.js +13 -17
  141. package/dist/containers/transport-stream/parse-pat.js +5 -10
  142. package/dist/containers/transport-stream/parse-pes.js +1 -5
  143. package/dist/containers/transport-stream/parse-pmt.js +8 -12
  144. package/dist/containers/transport-stream/parse-stream-packet.js +13 -17
  145. package/dist/containers/transport-stream/parse-transport-stream.js +5 -9
  146. package/dist/containers/transport-stream/process-stream-buffers.js +12 -16
  147. package/dist/containers/transport-stream/traversal.js +4 -10
  148. package/dist/containers/wav/get-duration-from-wav.js +3 -8
  149. package/dist/containers/wav/get-metadata-from-wav.d.ts +2 -2
  150. package/dist/containers/wav/get-metadata-from-wav.js +1 -5
  151. package/dist/containers/wav/parse-data.js +5 -9
  152. package/dist/containers/wav/parse-fmt.js +3 -7
  153. package/dist/containers/wav/parse-header.js +1 -5
  154. package/dist/containers/wav/parse-id3.js +1 -5
  155. package/dist/containers/wav/parse-list.js +1 -5
  156. package/dist/containers/wav/parse-video-section.js +3 -7
  157. package/dist/containers/wav/parse-wav.js +15 -19
  158. package/dist/containers/wav/types.d.ts +2 -2
  159. package/dist/containers/wav/types.js +1 -2
  160. package/dist/containers/webm/allowed-partial-segments.js +1 -4
  161. package/dist/containers/webm/av1-codec-private.js +3 -7
  162. package/dist/containers/webm/color.js +6 -10
  163. package/dist/containers/webm/description.js +6 -10
  164. package/dist/containers/webm/get-ready-tracks.js +13 -18
  165. package/dist/containers/webm/get-sample-from-block.js +12 -16
  166. package/dist/containers/webm/make-track.js +43 -48
  167. package/dist/containers/webm/parse-ebml.js +14 -19
  168. package/dist/containers/webm/parse-webm-header.js +3 -7
  169. package/dist/containers/webm/segments/all-segments.js +168 -173
  170. package/dist/containers/webm/segments/block-simple-block-flags.js +4 -8
  171. package/dist/containers/webm/segments/track-entry.js +1 -5
  172. package/dist/containers/webm/segments.js +9 -13
  173. package/dist/containers/webm/traversal.js +37 -67
  174. package/dist/convert-audio-or-video-sample.js +1 -5
  175. package/dist/download-and-parse-media.js +44 -47
  176. package/dist/emit-available-info.js +38 -38
  177. package/dist/emitter.js +1 -5
  178. package/dist/errors.d.ts +2 -17
  179. package/dist/errors.js +10 -30
  180. package/dist/esm/fetch.mjs +93 -67
  181. package/dist/esm/index.mjs +742 -194
  182. package/dist/esm/node.mjs +59 -36
  183. package/dist/esm/universal.mjs +323 -0
  184. package/dist/esm/web-file.mjs +55 -43
  185. package/dist/esm/web.mjs +257 -0
  186. package/dist/esm/worker-server-entry.mjs +13100 -0
  187. package/dist/esm/worker-server.mjs +12914 -0
  188. package/dist/esm/worker-web-entry.mjs +13013 -0
  189. package/dist/esm/worker.mjs +439 -0
  190. package/dist/fetch.js +1 -17
  191. package/dist/file-types/bmp.js +3 -7
  192. package/dist/file-types/detect-file-type.js +24 -38
  193. package/dist/file-types/index.js +22 -26
  194. package/dist/file-types/jpeg.js +4 -9
  195. package/dist/file-types/pdf.js +3 -7
  196. package/dist/file-types/png.js +4 -9
  197. package/dist/file-types/webp.js +3 -7
  198. package/dist/forward-controller.js +1 -5
  199. package/dist/get-audio-codec.js +25 -38
  200. package/dist/get-container.d.ts +3 -3
  201. package/dist/get-container.js +5 -10
  202. package/dist/get-dimensions.js +8 -13
  203. package/dist/get-duration.js +27 -34
  204. package/dist/get-fields-from-callbacks.js +1 -5
  205. package/dist/get-fps.js +24 -34
  206. package/dist/get-is-hdr.js +5 -10
  207. package/dist/get-keyframes.js +6 -11
  208. package/dist/get-location.js +4 -9
  209. package/dist/get-number-of-audio-channels.js +2 -7
  210. package/dist/get-sample-aspect-ratio.js +17 -30
  211. package/dist/get-sample-positions-from-lpcm.js +5 -9
  212. package/dist/get-sample-positions.js +1 -5
  213. package/dist/get-sample-rate.js +2 -7
  214. package/dist/get-tracks.d.ts +5 -0
  215. package/dist/get-tracks.js +37 -44
  216. package/dist/get-video-codec.js +26 -34
  217. package/dist/has-all-info.js +33 -38
  218. package/dist/index.d.ts +18 -11
  219. package/dist/index.js +34 -48
  220. package/dist/init-video.d.ts +1 -1
  221. package/dist/init-video.js +47 -20
  222. package/dist/internal-parse-media.js +36 -40
  223. package/dist/is-audio-structure.d.ts +2 -2
  224. package/dist/is-audio-structure.js +1 -5
  225. package/dist/log.js +8 -12
  226. package/dist/make-hvc1-codec-strings.js +1 -5
  227. package/dist/media-parser-controller.js +7 -11
  228. package/dist/metadata/get-metadata.d.ts +4 -4
  229. package/dist/metadata/get-metadata.js +17 -22
  230. package/dist/metadata/metadata-from-iso.d.ts +3 -3
  231. package/dist/metadata/metadata-from-iso.js +12 -17
  232. package/dist/metadata/metadata-from-matroska.d.ts +2 -2
  233. package/dist/metadata/metadata-from-matroska.js +3 -7
  234. package/dist/metadata/metadata-from-riff.d.ts +2 -2
  235. package/dist/metadata/metadata-from-riff.js +3 -7
  236. package/dist/node-writer.js +1 -17
  237. package/dist/node.js +1 -17
  238. package/dist/options.d.ts +30 -24
  239. package/dist/options.js +1 -2
  240. package/dist/parse-media-on-browser-worker.d.ts +2 -0
  241. package/dist/parse-media-on-browser-worker.js +4 -0
  242. package/dist/parse-media-on-server-worker.d.ts +2 -0
  243. package/dist/parse-media-on-server-worker.js +4 -0
  244. package/dist/parse-media-on-web-worker.d.ts +2 -0
  245. package/dist/parse-media-on-web-worker.js +4 -0
  246. package/dist/parse-media-on-worker-entry.d.ts +2 -0
  247. package/dist/parse-media-on-worker-entry.js +269 -0
  248. package/dist/parse-media-on-worker.d.ts +2 -0
  249. package/dist/parse-media-on-worker.js +4 -0
  250. package/dist/parse-media.js +10 -13
  251. package/dist/parse-result.d.ts +3 -3
  252. package/dist/parse-result.js +1 -2
  253. package/dist/pause-signal.js +1 -5
  254. package/dist/perform-seek.js +6 -10
  255. package/dist/readers/fetch/get-body-and-reader.js +1 -5
  256. package/dist/readers/fetch/resolve-url.d.ts +1 -1
  257. package/dist/readers/fetch/resolve-url.js +1 -5
  258. package/dist/readers/from-fetch.d.ts +4 -1
  259. package/dist/readers/from-fetch.js +109 -94
  260. package/dist/readers/from-node.d.ts +4 -1
  261. package/dist/readers/from-node.js +58 -41
  262. package/dist/readers/from-web-file.d.ts +4 -1
  263. package/dist/readers/from-web-file.js +55 -49
  264. package/dist/readers/reader.d.ts +5 -1
  265. package/dist/readers/reader.js +1 -2
  266. package/dist/readers/universal.d.ts +2 -0
  267. package/dist/readers/universal.js +35 -0
  268. package/dist/readers/web.d.ts +2 -0
  269. package/dist/readers/web.js +22 -0
  270. package/dist/register-track.js +9 -15
  271. package/dist/remotion-license-acknowledge.js +4 -8
  272. package/dist/run-parse-iteration.js +26 -25
  273. package/dist/samples-from-moof.js +8 -12
  274. package/dist/skip.js +1 -5
  275. package/dist/state/aac-state.js +1 -5
  276. package/dist/state/can-skip-tracks.d.ts +2 -2
  277. package/dist/state/can-skip-tracks.js +3 -8
  278. package/dist/state/emitted-fields.js +1 -5
  279. package/dist/state/flac-state.js +1 -5
  280. package/dist/state/has-tracks-section.d.ts +2 -2
  281. package/dist/state/has-tracks-section.js +6 -8
  282. package/dist/state/images.js +1 -5
  283. package/dist/state/iso-base-media/cached-sample-positions.js +8 -13
  284. package/dist/state/iso-base-media/iso-state.js +5 -9
  285. package/dist/state/iso-base-media/moov-box.js +1 -5
  286. package/dist/state/keyframes.js +1 -5
  287. package/dist/state/last-eventloop-break.js +3 -7
  288. package/dist/state/m3u-state.d.ts +6 -0
  289. package/dist/state/m3u-state.js +20 -12
  290. package/dist/state/may-skip-video-data.js +3 -7
  291. package/dist/state/mp3.js +1 -5
  292. package/dist/state/need-samples-for-fields.js +1 -5
  293. package/dist/state/parser-state.d.ts +15 -10
  294. package/dist/state/parser-state.js +37 -41
  295. package/dist/state/riff.js +1 -5
  296. package/dist/state/sample-callbacks.d.ts +3 -2
  297. package/dist/state/sample-callbacks.js +8 -12
  298. package/dist/state/slow-duration-fps.js +1 -5
  299. package/dist/state/structure.d.ts +4 -4
  300. package/dist/state/structure.js +1 -5
  301. package/dist/state/transport-stream.js +3 -7
  302. package/dist/state/video-section.js +1 -5
  303. package/dist/state/webm.js +5 -9
  304. package/dist/throttled-progress.js +1 -5
  305. package/dist/truthy.js +1 -4
  306. package/dist/universal.d.ts +1 -0
  307. package/dist/universal.js +1 -0
  308. package/dist/version.d.ts +1 -1
  309. package/dist/version.js +1 -4
  310. package/dist/web-file.js +1 -17
  311. package/dist/web.d.ts +1 -0
  312. package/dist/web.js +1 -0
  313. package/dist/webcodec-sample-types.d.ts +6 -4
  314. package/dist/webcodec-sample-types.js +1 -2
  315. package/dist/worker/forward-controller.d.ts +3 -0
  316. package/dist/worker/forward-controller.js +20 -0
  317. package/dist/worker/serialize-error.d.ts +4 -0
  318. package/dist/worker/serialize-error.js +95 -0
  319. package/dist/worker/worker-types.d.ts +243 -0
  320. package/dist/worker/worker-types.js +1 -0
  321. package/dist/worker-bun-entry.d.ts +1 -0
  322. package/dist/worker-bun-entry.js +5 -0
  323. package/dist/worker-entry.d.ts +1 -0
  324. package/dist/worker-entry.js +5 -0
  325. package/dist/worker-server-entry.d.ts +1 -0
  326. package/dist/worker-server-entry.js +5 -0
  327. package/dist/worker-server.d.ts +2 -0
  328. package/dist/worker-server.js +381 -0
  329. package/dist/worker-web-entry.d.ts +1 -0
  330. package/dist/worker-web-entry.js +5 -0
  331. package/dist/worker.d.ts +2 -0
  332. package/dist/worker.js +267 -0
  333. package/dist/writers/node.js +16 -23
  334. package/dist/writers/writer.js +1 -2
  335. package/package.json +40 -21
  336. package/fetch.js +0 -2
  337. package/test.json +0 -663
  338. package/web-file.js +0 -2
@@ -1,29 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.internalParseMedia = void 0;
4
- const emit_available_info_1 = require("./emit-available-info");
5
- const get_fields_from_callbacks_1 = require("./get-fields-from-callbacks");
6
- const has_all_info_1 = require("./has-all-info");
7
- const log_1 = require("./log");
8
- const media_parser_controller_1 = require("./media-parser-controller");
9
- const perform_seek_1 = require("./perform-seek");
10
- const remotion_license_acknowledge_1 = require("./remotion-license-acknowledge");
11
- const run_parse_iteration_1 = require("./run-parse-iteration");
12
- const parser_state_1 = require("./state/parser-state");
13
- const throttled_progress_1 = require("./throttled-progress");
14
- const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue, reader: readerInterface, onAudioTrack, onVideoTrack, controller = (0, media_parser_controller_1.mediaParserController)(), logLevel, onParseProgress: onParseProgressDoNotCallDirectly, progressIntervalInMs, mode, onDiscardedData, onError, acknowledgeRemotionLicense, apiName, selectM3uStream: selectM3uStreamFn, selectM3uAssociatedPlaylists: selectM3uAssociatedPlaylistsFn, ...more }) {
1
+ import { emitAvailableInfo } from './emit-available-info';
2
+ import { getFieldsFromCallback } from './get-fields-from-callbacks';
3
+ import { getAvailableInfo, hasAllInfo } from './has-all-info';
4
+ import { Log } from './log';
5
+ import { mediaParserController } from './media-parser-controller';
6
+ import { performSeek } from './perform-seek';
7
+ import { warnIfRemotionLicenseNotAcknowledged } from './remotion-license-acknowledge';
8
+ import { runParseIteration } from './run-parse-iteration';
9
+ import { makeParserState } from './state/parser-state';
10
+ import { throttledStateUpdate } from './throttled-progress';
11
+ export const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue, reader: readerInterface, onAudioTrack, onVideoTrack, controller = mediaParserController(), logLevel, onParseProgress: onParseProgressDoNotCallDirectly, progressIntervalInMs, mode, onDiscardedData, onError, acknowledgeRemotionLicense, apiName, selectM3uStream: selectM3uStreamFn, selectM3uAssociatedPlaylists: selectM3uAssociatedPlaylistsFn, mp4HeaderSegment, ...more }) {
15
12
  var _a;
16
- (0, remotion_license_acknowledge_1.warnIfRemotionLicenseNotAcknowledged)({
13
+ warnIfRemotionLicenseNotAcknowledged({
17
14
  acknowledgeRemotionLicense,
18
15
  logLevel,
19
16
  apiName,
20
17
  });
21
18
  const fieldsInReturnValue = _fieldsInReturnValue !== null && _fieldsInReturnValue !== void 0 ? _fieldsInReturnValue : {};
22
- const fields = (0, get_fields_from_callbacks_1.getFieldsFromCallback)({
19
+ const fields = getFieldsFromCallback({
23
20
  fields: fieldsInReturnValue,
24
21
  callbacks: more,
25
22
  });
26
- log_1.Log.verbose(logLevel, `Reading ${typeof src === 'string' ? src : src.name}`);
23
+ Log.verbose(logLevel, `Reading ${typeof src === 'string' ? src : src instanceof URL ? src.toString() : src.name}`);
27
24
  const { reader: readerInstance, contentLength, name, contentType, supportsContentRange, needsContentRange, } = await readerInterface.read({ src, range: null, controller });
28
25
  if (contentLength === null) {
29
26
  throw new Error(`Cannot read media ${src} without a content length. This is currently not supported. Ensure the media has a "Content-Length" HTTP header.`);
@@ -37,7 +34,7 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
37
34
  !hasVideoTrackHandlers &&
38
35
  Object.values(fields).every((v) => !v) &&
39
36
  mode === 'query') {
40
- log_1.Log.warn(logLevel, new Error('Warning - No `fields` and no `on*` callbacks were passed to `parseMedia()`. Specify the data you would like to retrieve.'));
37
+ Log.warn(logLevel, new Error('Warning - No `fields` and no `on*` callbacks were passed to `parseMedia()`. Specify the data you would like to retrieve.'));
41
38
  }
42
39
  let timeIterating = 0;
43
40
  let timeReadingData = 0;
@@ -45,7 +42,7 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
45
42
  let timeCheckingIfDone = 0;
46
43
  let timeFreeingData = 0;
47
44
  let errored = null;
48
- const state = (0, parser_state_1.makeParserState)({
45
+ const state = makeParserState({
49
46
  hasAudioTrackHandlers,
50
47
  hasVideoTrackHandlers,
51
48
  controller,
@@ -60,23 +57,24 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
60
57
  onDiscardedData,
61
58
  selectM3uStreamFn,
62
59
  selectM3uAssociatedPlaylistsFn,
60
+ mp4HeaderSegment,
63
61
  });
64
62
  const { iterator } = state;
65
63
  let currentReader = readerInstance;
66
64
  const returnValue = {};
67
65
  const moreFields = more;
68
- const throttledState = (0, throttled_progress_1.throttledStateUpdate)({
66
+ const throttledState = throttledStateUpdate({
69
67
  updateFn: onParseProgressDoNotCallDirectly !== null && onParseProgressDoNotCallDirectly !== void 0 ? onParseProgressDoNotCallDirectly : null,
70
68
  everyMilliseconds: progressIntervalInMs !== null && progressIntervalInMs !== void 0 ? progressIntervalInMs : 100,
71
69
  controller,
72
70
  totalBytes: contentLength,
73
71
  });
74
72
  const triggerInfoEmit = async () => {
75
- const availableInfo = (0, has_all_info_1.getAvailableInfo)({
73
+ const availableInfo = getAvailableInfo({
76
74
  fieldsToFetch: fields,
77
75
  state,
78
76
  });
79
- await (0, emit_available_info_1.emitAvailableInfo)({
77
+ await emitAvailableInfo({
80
78
  hasInfo: availableInfo,
81
79
  callbacks: moreFields,
82
80
  fieldsInReturnValue,
@@ -88,13 +86,13 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
88
86
  };
89
87
  const checkIfDone = async () => {
90
88
  const startCheck = Date.now();
91
- const hasAll = (0, has_all_info_1.hasAllInfo)({
89
+ const hasAll = hasAllInfo({
92
90
  fields,
93
91
  state,
94
92
  });
95
93
  timeCheckingIfDone += Date.now() - startCheck;
96
94
  if (hasAll && mode === 'query') {
97
- log_1.Log.verbose(logLevel, 'Got all info, skipping to the end.');
95
+ Log.verbose(logLevel, 'Got all info, skipping to the end.');
98
96
  state.increaseSkippedBytes(contentLength - state.iterator.counter.getOffset());
99
97
  return true;
100
98
  }
@@ -103,14 +101,14 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
103
101
  !state.m3u.getAllChunksProcessedOverall()) {
104
102
  return false;
105
103
  }
106
- log_1.Log.verbose(logLevel, 'Reached end of file');
104
+ Log.verbose(logLevel, 'Reached end of file');
107
105
  await state.discardReadBytes(true);
108
106
  return true;
109
107
  }
110
108
  if (state.iterator.counter.getOffset() + state.iterator.bytesRemaining() ===
111
109
  contentLength &&
112
110
  errored) {
113
- log_1.Log.verbose(logLevel, 'Reached end of file and errorred');
111
+ Log.verbose(logLevel, 'Reached end of file and errorred');
114
112
  return true;
115
113
  }
116
114
  return false;
@@ -139,7 +137,6 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
139
137
  if (iterationWithThisOffset > 0 || !hasBigBuffer) {
140
138
  await fetchMoreData();
141
139
  }
142
- await state.eventLoop.eventLoopBreakIfNeeded();
143
140
  timeReadingData += Date.now() - readStart;
144
141
  (_a = throttledState.update) === null || _a === void 0 ? void 0 : _a.call(throttledState, () => ({
145
142
  bytes: iterator.counter.getOffset(),
@@ -149,7 +146,7 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
149
146
  totalBytes: contentLength,
150
147
  }));
151
148
  if (!errored) {
152
- log_1.Log.trace(logLevel, `Continuing parsing of file, currently at position ${iterator.counter.getOffset()}/${contentLength} (0x${iterator.counter.getOffset().toString(16)})`);
149
+ Log.trace(logLevel, `Continuing parsing of file, currently at position ${iterator.counter.getOffset()}/${contentLength} (0x${iterator.counter.getOffset().toString(16)})`);
153
150
  if (iterationWithThisOffset > 300 &&
154
151
  state.getStructure().type !== 'm3u') {
155
152
  throw new Error('Infinite loop detected. The parser is not progressing. This is likely a bug in the parser. You can report this at https://remotion.dev/report and we will fix it as soon as possible.');
@@ -158,7 +155,7 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
158
155
  await triggerInfoEmit();
159
156
  const start = Date.now();
160
157
  await controller._internals.checkForAbortAndPause();
161
- const skip = await (0, run_parse_iteration_1.runParseIteration)({
158
+ const skip = await runParseIteration({
162
159
  state,
163
160
  mimeType: contentType,
164
161
  contentLength,
@@ -168,11 +165,11 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
168
165
  if (skip !== null) {
169
166
  state.increaseSkippedBytes(skip.skipTo - iterator.counter.getOffset());
170
167
  if (skip.skipTo === contentLength) {
171
- log_1.Log.verbose(logLevel, 'Skipped to end of file, not fetching.');
168
+ Log.verbose(logLevel, 'Skipped to end of file, not fetching.');
172
169
  break;
173
170
  }
174
171
  const seekStart = Date.now();
175
- currentReader = await (0, perform_seek_1.performSeek)({
172
+ currentReader = await performSeek({
176
173
  seekTo: skip.skipTo,
177
174
  currentReader,
178
175
  readerInterface,
@@ -192,7 +189,7 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
192
189
  }
193
190
  if (err.action === 'download') {
194
191
  errored = e;
195
- log_1.Log.verbose(logLevel, 'Error was handled by onError and deciding to continue.');
192
+ Log.verbose(logLevel, 'Error was handled by onError and deciding to continue.');
196
193
  }
197
194
  }
198
195
  const didProgress = iterator.counter.getOffset() > offsetBefore;
@@ -207,9 +204,9 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
207
204
  await state.discardReadBytes(false);
208
205
  timeFreeingData += Date.now() - timeFreeStart;
209
206
  }
210
- log_1.Log.verbose(logLevel, 'Finished parsing file');
207
+ Log.verbose(logLevel, 'Finished parsing file');
211
208
  // Force assign
212
- await (0, emit_available_info_1.emitAvailableInfo)({
209
+ await emitAvailableInfo({
213
210
  hasInfo: Object.keys(fields).reduce((acc, key) => {
214
211
  if (fields === null || fields === void 0 ? void 0 : fields[key]) {
215
212
  acc[key] = true;
@@ -223,11 +220,11 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
223
220
  mimeType: contentType,
224
221
  name,
225
222
  });
226
- log_1.Log.verbose(logLevel, `Time iterating over file: ${timeIterating}ms`);
227
- log_1.Log.verbose(logLevel, `Time fetching data: ${timeReadingData}ms`);
228
- log_1.Log.verbose(logLevel, `Time seeking: ${timeSeeking}ms`);
229
- log_1.Log.verbose(logLevel, `Time checking if done: ${timeCheckingIfDone}ms`);
230
- log_1.Log.verbose(logLevel, `Time freeing data: ${timeFreeingData}ms`);
223
+ Log.verbose(logLevel, `Time iterating over file: ${timeIterating}ms`);
224
+ Log.verbose(logLevel, `Time fetching data: ${timeReadingData}ms`);
225
+ Log.verbose(logLevel, `Time seeking: ${timeSeeking}ms`);
226
+ Log.verbose(logLevel, `Time checking if done: ${timeCheckingIfDone}ms`);
227
+ Log.verbose(logLevel, `Time freeing data: ${timeFreeingData}ms`);
231
228
  currentReader.abort();
232
229
  iterator === null || iterator === void 0 ? void 0 : iterator.destroy();
233
230
  state.callbacks.tracks.ensureHasTracksAtEnd(fields);
@@ -237,4 +234,3 @@ const internalParseMedia = async function ({ src, fields: _fieldsInReturnValue,
237
234
  }
238
235
  return returnValue;
239
236
  };
240
- exports.internalParseMedia = internalParseMedia;
@@ -1,2 +1,2 @@
1
- import type { Structure } from './parse-result';
2
- export declare const isAudioStructure: (structure: Structure) => boolean;
1
+ import type { MediaParserStructureUnstable } from './parse-result';
2
+ export declare const isAudioStructure: (structure: MediaParserStructureUnstable) => boolean;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isAudioStructure = void 0;
4
- const isAudioStructure = (structure) => {
1
+ export const isAudioStructure = (structure) => {
5
2
  if (structure.type === 'mp3') {
6
3
  return true;
7
4
  }
@@ -31,4 +28,3 @@ const isAudioStructure = (structure) => {
31
28
  }
32
29
  throw new Error(`Unhandled structure type: ${structure}`);
33
30
  };
34
- exports.isAudioStructure = isAudioStructure;
package/dist/log.js CHANGED
@@ -1,33 +1,29 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Log = exports.isEqualOrBelowLogLevel = exports.logLevels = void 0;
4
1
  /* eslint-disable no-console */
5
- exports.logLevels = ['trace', 'verbose', 'info', 'warn', 'error'];
2
+ export const logLevels = ['trace', 'verbose', 'info', 'warn', 'error'];
6
3
  const getNumberForLogLevel = (level) => {
7
- return exports.logLevels.indexOf(level);
4
+ return logLevels.indexOf(level);
8
5
  };
9
- const isEqualOrBelowLogLevel = (currentLevel, level) => {
6
+ export const isEqualOrBelowLogLevel = (currentLevel, level) => {
10
7
  return getNumberForLogLevel(currentLevel) <= getNumberForLogLevel(level);
11
8
  };
12
- exports.isEqualOrBelowLogLevel = isEqualOrBelowLogLevel;
13
- exports.Log = {
9
+ export const Log = {
14
10
  trace: (logLevel, ...args) => {
15
- if ((0, exports.isEqualOrBelowLogLevel)(logLevel, 'trace')) {
11
+ if (isEqualOrBelowLogLevel(logLevel, 'trace')) {
16
12
  return console.log(...args);
17
13
  }
18
14
  },
19
15
  verbose: (logLevel, ...args) => {
20
- if ((0, exports.isEqualOrBelowLogLevel)(logLevel, 'verbose')) {
16
+ if (isEqualOrBelowLogLevel(logLevel, 'verbose')) {
21
17
  return console.log(...args);
22
18
  }
23
19
  },
24
20
  info: (logLevel, ...args) => {
25
- if ((0, exports.isEqualOrBelowLogLevel)(logLevel, 'info')) {
21
+ if (isEqualOrBelowLogLevel(logLevel, 'info')) {
26
22
  return console.log(...args);
27
23
  }
28
24
  },
29
25
  warn: (logLevel, ...args) => {
30
- if ((0, exports.isEqualOrBelowLogLevel)(logLevel, 'warn')) {
26
+ if (isEqualOrBelowLogLevel(logLevel, 'warn')) {
31
27
  return console.warn(...args);
32
28
  }
33
29
  },
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getHvc1CodecString = void 0;
4
- const getHvc1CodecString = (data) => {
1
+ export const getHvc1CodecString = (data) => {
5
2
  const configurationVersion = data.getUint8();
6
3
  if (configurationVersion !== 1) {
7
4
  throw new Error(`Unsupported HVCC version ${configurationVersion}`);
@@ -44,4 +41,3 @@ const getHvc1CodecString = (data) => {
44
41
  }
45
42
  return `${profileSpaceChar}${generalProfileIdc.toString(16)}.${profileId.toString(16)}.${generalTierChar}${generalLevelIdc}${generalConstraintString ? '.' : ''}${generalConstraintString}`;
46
43
  };
47
- exports.getHvc1CodecString = getHvc1CodecString;
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mediaParserController = void 0;
4
- const emitter_1 = require("./emitter");
5
- const errors_1 = require("./errors");
6
- const pause_signal_1 = require("./pause-signal");
7
- const mediaParserController = () => {
1
+ import { MediaParserEmitter } from './emitter';
2
+ import { MediaParserAbortError } from './errors';
3
+ import { makePauseSignal } from './pause-signal';
4
+ export const mediaParserController = () => {
8
5
  const abortController = new AbortController();
9
- const emitter = new emitter_1.MediaParserEmitter();
10
- const pauseSignal = (0, pause_signal_1.makePauseSignal)(emitter);
6
+ const emitter = new MediaParserEmitter();
7
+ const pauseSignal = makePauseSignal(emitter);
11
8
  const checkForAbortAndPause = async () => {
12
9
  if (abortController.signal.aborted) {
13
- throw new errors_1.MediaParserAbortError('Aborted');
10
+ throw new MediaParserAbortError('Aborted');
14
11
  }
15
12
  await pauseSignal.waitUntilResume();
16
13
  };
@@ -30,4 +27,3 @@ const mediaParserController = () => {
30
27
  },
31
28
  };
32
29
  };
33
- exports.mediaParserController = mediaParserController;
@@ -1,9 +1,9 @@
1
- import type { Structure } from '../parse-result';
1
+ import type { MediaParserStructureUnstable } from '../parse-result';
2
2
  import type { ParserState } from '../state/parser-state';
3
- export type MetadataEntry = {
3
+ export type MediaParserMetadataEntry = {
4
4
  key: string;
5
5
  value: string | number;
6
6
  trackId: number | null;
7
7
  };
8
- export declare const getMetadata: (state: ParserState) => MetadataEntry[];
9
- export declare const hasMetadata: (structure: Structure) => boolean;
8
+ export declare const getMetadata: (state: ParserState) => MediaParserMetadataEntry[];
9
+ export declare const hasMetadata: (structure: MediaParserStructureUnstable) => boolean;
@@ -1,60 +1,56 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hasMetadata = exports.getMetadata = void 0;
4
- const get_metadata_from_flac_1 = require("../containers/flac/get-metadata-from-flac");
5
- const get_metadata_from_mp3_1 = require("../containers/mp3/get-metadata-from-mp3");
6
- const get_metadata_from_wav_1 = require("../containers/wav/get-metadata-from-wav");
7
- const metadata_from_iso_1 = require("./metadata-from-iso");
8
- const metadata_from_matroska_1 = require("./metadata-from-matroska");
9
- const metadata_from_riff_1 = require("./metadata-from-riff");
10
- const getMetadata = (state) => {
1
+ import { getMetadataFromFlac } from '../containers/flac/get-metadata-from-flac';
2
+ import { getMetadataFromMp3 } from '../containers/mp3/get-metadata-from-mp3';
3
+ import { getMetadataFromWav } from '../containers/wav/get-metadata-from-wav';
4
+ import { getMetadataFromIsoBase } from './metadata-from-iso';
5
+ import { getMetadataFromMatroska } from './metadata-from-matroska';
6
+ import { getMetadataFromRiff } from './metadata-from-riff';
7
+ export const getMetadata = (state) => {
11
8
  var _a, _b;
12
9
  const structure = state.getStructure();
13
10
  if (structure.type === 'matroska') {
14
- return (0, metadata_from_matroska_1.getMetadataFromMatroska)(structure);
11
+ return getMetadataFromMatroska(structure);
15
12
  }
16
13
  if (structure.type === 'riff') {
17
- return (0, metadata_from_riff_1.getMetadataFromRiff)(structure);
14
+ return getMetadataFromRiff(structure);
18
15
  }
19
16
  if (structure.type === 'transport-stream' || structure.type === 'm3u') {
20
17
  return [];
21
18
  }
22
19
  if (structure.type === 'mp3') {
23
- const tags = (0, get_metadata_from_mp3_1.getMetadataFromMp3)(structure);
20
+ const tags = getMetadataFromMp3(structure);
24
21
  if (tags === null) {
25
22
  throw new Error('Failed to get metadata from mp3');
26
23
  }
27
24
  return tags;
28
25
  }
29
26
  if (structure.type === 'wav') {
30
- return (_a = (0, get_metadata_from_wav_1.getMetadataFromWav)(structure)) !== null && _a !== void 0 ? _a : [];
27
+ return (_a = getMetadataFromWav(structure)) !== null && _a !== void 0 ? _a : [];
31
28
  }
32
29
  if (structure.type === 'aac') {
33
30
  return [];
34
31
  }
35
32
  if (structure.type === 'flac') {
36
- return (_b = (0, get_metadata_from_flac_1.getMetadataFromFlac)(structure)) !== null && _b !== void 0 ? _b : [];
33
+ return (_b = getMetadataFromFlac(structure)) !== null && _b !== void 0 ? _b : [];
37
34
  }
38
35
  if (structure.type === 'iso-base-media') {
39
- return (0, metadata_from_iso_1.getMetadataFromIsoBase)(state);
36
+ return getMetadataFromIsoBase(state);
40
37
  }
41
38
  throw new Error('Unknown container ' + structure);
42
39
  };
43
- exports.getMetadata = getMetadata;
44
40
  // TODO: This forces some containers to check the whole file
45
41
  // we can do this better! skip over video data
46
- const hasMetadata = (structure) => {
42
+ export const hasMetadata = (structure) => {
47
43
  if (structure.type === 'mp3') {
48
- return (0, get_metadata_from_mp3_1.getMetadataFromMp3)(structure) !== null;
44
+ return getMetadataFromMp3(structure) !== null;
49
45
  }
50
46
  if (structure.type === 'wav') {
51
- return (0, get_metadata_from_wav_1.getMetadataFromWav)(structure) !== null;
47
+ return getMetadataFromWav(structure) !== null;
52
48
  }
53
49
  if (structure.type === 'm3u' || structure.type === 'transport-stream') {
54
50
  return true;
55
51
  }
56
52
  if (structure.type === 'flac') {
57
- return (0, get_metadata_from_flac_1.getMetadataFromFlac)(structure) !== null;
53
+ return getMetadataFromFlac(structure) !== null;
58
54
  }
59
55
  if (structure.type === 'iso-base-media') {
60
56
  return false;
@@ -70,4 +66,3 @@ const hasMetadata = (structure) => {
70
66
  }
71
67
  throw new Error('Unknown container ' + structure);
72
68
  };
73
- exports.hasMetadata = hasMetadata;
@@ -1,5 +1,5 @@
1
1
  import type { RegularBox } from '../containers/iso-base-media/base-media-box';
2
2
  import type { ParserState } from '../state/parser-state';
3
- import type { MetadataEntry } from './get-metadata';
4
- export declare const parseIsoMetaBox: (meta: RegularBox, trackId: number | null) => MetadataEntry[];
5
- export declare const getMetadataFromIsoBase: (state: ParserState) => MetadataEntry[];
3
+ import type { MediaParserMetadataEntry } from './get-metadata';
4
+ export declare const parseIsoMetaBox: (meta: RegularBox, trackId: number | null) => MediaParserMetadataEntry[];
5
+ export declare const getMetadataFromIsoBase: (state: ParserState) => MediaParserMetadataEntry[];
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMetadataFromIsoBase = exports.parseIsoMetaBox = void 0;
4
- const traversal_1 = require("../containers/iso-base-media/traversal");
5
- const truthy_1 = require("../truthy");
1
+ import { getMoovBoxFromState, getTkhdBox, getTraks, } from '../containers/iso-base-media/traversal';
2
+ import { truthy } from '../truthy';
6
3
  /**
7
4
  *
8
5
  * @param ilstBox ©ART - Artist
@@ -85,9 +82,9 @@ const parseIlstBoxWithoutKeys = (ilstBox) => {
85
82
  value: entry.value.value,
86
83
  };
87
84
  })
88
- .filter(truthy_1.truthy);
85
+ .filter(truthy);
89
86
  };
90
- const parseIsoMetaBox = (meta, trackId) => {
87
+ export const parseIsoMetaBox = (meta, trackId) => {
91
88
  const ilstBox = meta.children.find((b) => b.type === 'ilst-box');
92
89
  const keysBox = meta.children.find((b) => b.type === 'keys-box');
93
90
  if (!ilstBox || !keysBox) {
@@ -114,13 +111,12 @@ const parseIsoMetaBox = (meta, trackId) => {
114
111
  }
115
112
  return entries;
116
113
  };
117
- exports.parseIsoMetaBox = parseIsoMetaBox;
118
- const getMetadataFromIsoBase = (state) => {
119
- const moov = (0, traversal_1.getMoovBox)(state);
114
+ export const getMetadataFromIsoBase = (state) => {
115
+ const moov = getMoovBoxFromState(state);
120
116
  if (!moov) {
121
117
  return [];
122
118
  }
123
- const traks = (0, traversal_1.getTraks)(moov);
119
+ const traks = getTraks(moov);
124
120
  const meta = moov.children.find((b) => b.type === 'regular-box' && b.boxType === 'meta');
125
121
  const udta = moov.children.find((b) => b.type === 'regular-box' && b.boxType === 'udta');
126
122
  const metaInUdta = udta === null || udta === void 0 ? void 0 : udta.children.find((b) => {
@@ -130,19 +126,18 @@ const getMetadataFromIsoBase = (state) => {
130
126
  .map((t) => {
131
127
  const metaBox = t.children.find((child) => child.type === 'regular-box' && child.boxType === 'meta');
132
128
  if (metaBox) {
133
- const tkhd = (0, traversal_1.getTkhdBox)(t);
129
+ const tkhd = getTkhdBox(t);
134
130
  if (!tkhd) {
135
131
  throw new Error('No tkhd box found');
136
132
  }
137
- return (0, exports.parseIsoMetaBox)(metaBox, tkhd.trackId);
133
+ return parseIsoMetaBox(metaBox, tkhd.trackId);
138
134
  }
139
135
  return null;
140
136
  })
141
- .filter(truthy_1.truthy);
137
+ .filter(truthy);
142
138
  return [
143
- ...(meta ? (0, exports.parseIsoMetaBox)(meta, null) : []),
144
- ...(metaInUdta ? (0, exports.parseIsoMetaBox)(metaInUdta, null) : []),
139
+ ...(meta ? parseIsoMetaBox(meta, null) : []),
140
+ ...(metaInUdta ? parseIsoMetaBox(metaInUdta, null) : []),
145
141
  ...metaInTracks.flat(1),
146
142
  ];
147
143
  };
148
- exports.getMetadataFromIsoBase = getMetadataFromIsoBase;
@@ -1,3 +1,3 @@
1
1
  import type { MatroskaStructure } from '../parse-result';
2
- import type { MetadataEntry } from './get-metadata';
3
- export declare const getMetadataFromMatroska: (structure: MatroskaStructure) => MetadataEntry[];
2
+ import type { MediaParserMetadataEntry } from './get-metadata';
3
+ export declare const getMetadataFromMatroska: (structure: MatroskaStructure) => MediaParserMetadataEntry[];
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMetadataFromMatroska = void 0;
4
- const traversal_1 = require("../containers/webm/traversal");
1
+ import { getTrackWithUid } from '../containers/webm/traversal';
5
2
  const removeEndZeroes = (value) => {
6
3
  return value.endsWith('\u0000') ? removeEndZeroes(value.slice(0, -1)) : value;
7
4
  };
@@ -17,7 +14,7 @@ const parseSimpleTagIntoEbml = (children, trackId) => {
17
14
  value: removeEndZeroes(tagString.value),
18
15
  };
19
16
  };
20
- const getMetadataFromMatroska = (structure) => {
17
+ export const getMetadataFromMatroska = (structure) => {
21
18
  var _a;
22
19
  const entries = [];
23
20
  for (const segment of structure.boxes) {
@@ -35,7 +32,7 @@ const getMetadataFromMatroska = (structure) => {
35
32
  if (target) {
36
33
  const tagTrackId = (_a = target.value.find((c) => c.type === 'TagTrackUID')) === null || _a === void 0 ? void 0 : _a.value;
37
34
  if (tagTrackId) {
38
- trackId = (0, traversal_1.getTrackWithUid)(segment, tagTrackId);
35
+ trackId = getTrackWithUid(segment, tagTrackId);
39
36
  }
40
37
  }
41
38
  const simpleTags = child.value.filter((s) => s.type === 'SimpleTag');
@@ -50,4 +47,3 @@ const getMetadataFromMatroska = (structure) => {
50
47
  }
51
48
  return entries;
52
49
  };
53
- exports.getMetadataFromMatroska = getMetadataFromMatroska;
@@ -1,3 +1,3 @@
1
1
  import type { RiffStructure } from '../containers/riff/riff-box';
2
- import type { MetadataEntry } from './get-metadata';
3
- export declare const getMetadataFromRiff: (structure: RiffStructure) => MetadataEntry[];
2
+ import type { MediaParserMetadataEntry } from './get-metadata';
3
+ export declare const getMetadataFromRiff: (structure: RiffStructure) => MediaParserMetadataEntry[];
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMetadataFromRiff = void 0;
4
- const truthy_1 = require("../truthy");
5
- const getMetadataFromRiff = (structure) => {
1
+ import { truthy } from '../truthy';
2
+ export const getMetadataFromRiff = (structure) => {
6
3
  const boxes = structure.boxes.find((b) => b.type === 'list-box' && b.listType === 'INFO');
7
4
  if (!boxes) {
8
5
  return [];
@@ -19,6 +16,5 @@ const getMetadataFromRiff = (structure) => {
19
16
  value: child.software,
20
17
  };
21
18
  })
22
- .filter(truthy_1.truthy);
19
+ .filter(truthy);
23
20
  };
24
- exports.getMetadataFromRiff = getMetadataFromRiff;
@@ -1,17 +1 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./writers/node"), exports);
1
+ export * from './writers/node';
package/dist/node.js CHANGED
@@ -1,17 +1 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./readers/from-node"), exports);
1
+ export * from './readers/from-node';