remotion 4.0.0-lambda.3 → 4.0.0-newpaths.13

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 (499) hide show
  1. package/LICENSE.md +8 -8
  2. package/README.md +30 -19
  3. package/dist/AbsoluteFill.d.ts +6 -2
  4. package/dist/AbsoluteFill.js +7 -3
  5. package/dist/CanUseRemotionHooks.d.ts +5 -0
  6. package/dist/CanUseRemotionHooks.js +10 -0
  7. package/dist/Clipper.d.ts +7 -0
  8. package/dist/Clipper.js +24 -0
  9. package/dist/Composition.d.ts +3 -5
  10. package/dist/Composition.js +36 -38
  11. package/dist/CompositionManager.d.ts +9 -11
  12. package/dist/CompositionManager.js +9 -3
  13. package/dist/Folder.d.ts +15 -0
  14. package/dist/Folder.js +33 -0
  15. package/dist/IFrame.d.ts +0 -0
  16. package/dist/IFrame.js +0 -0
  17. package/dist/Img.d.ts +0 -0
  18. package/dist/Img.js +31 -21
  19. package/dist/LayerMaster.d.ts +8 -0
  20. package/dist/LayerMaster.js +39 -0
  21. package/dist/NativeLayers.d.ts +13 -0
  22. package/dist/NativeLayers.js +29 -0
  23. package/dist/Null.d.ts +2 -0
  24. package/dist/Null.js +25 -0
  25. package/dist/RemotionRoot.d.ts +1 -0
  26. package/dist/RemotionRoot.js +9 -6
  27. package/dist/{sequencing/index.d.ts → Sequence.d.ts} +13 -4
  28. package/dist/{sequencing/index.js → Sequence.js} +42 -34
  29. package/dist/Still.d.ts +1 -1
  30. package/dist/Still.js +0 -0
  31. package/dist/absolute-src.d.ts +0 -0
  32. package/dist/absolute-src.js +0 -0
  33. package/dist/asset-types.d.ts +1 -4
  34. package/dist/asset-types.js +0 -0
  35. package/dist/audio/Audio.d.ts +5 -3
  36. package/dist/audio/Audio.js +26 -6
  37. package/dist/audio/AudioForDevelopment.d.ts +6 -2
  38. package/dist/audio/AudioForDevelopment.js +42 -6
  39. package/dist/audio/AudioForRendering.d.ts +9 -2
  40. package/dist/audio/AudioForRendering.js +52 -9
  41. package/dist/audio/index.d.ts +0 -0
  42. package/dist/audio/index.js +0 -0
  43. package/dist/audio/props.d.ts +4 -2
  44. package/dist/audio/props.js +0 -0
  45. package/dist/audio/shared-audio-tags.d.ts +9 -4
  46. package/dist/audio/shared-audio-tags.js +117 -45
  47. package/dist/audio/use-audio-frame.d.ts +0 -0
  48. package/dist/audio/use-audio-frame.js +4 -4
  49. package/dist/bezier.d.ts +0 -0
  50. package/dist/bezier.js +0 -0
  51. package/dist/config/input-props.d.ts +0 -0
  52. package/dist/config/input-props.js +12 -14
  53. package/dist/config.d.ts +285 -0
  54. package/dist/config.js +21 -0
  55. package/dist/default-css.d.ts +1 -0
  56. package/dist/default-css.js +9 -2
  57. package/dist/delay-render.d.ts +0 -0
  58. package/dist/delay-render.js +4 -4
  59. package/dist/easing.d.ts +0 -0
  60. package/dist/easing.js +0 -0
  61. package/dist/freeze.d.ts +2 -2
  62. package/dist/freeze.js +2 -2
  63. package/dist/get-asset-file-name.d.ts +0 -0
  64. package/dist/get-asset-file-name.js +0 -0
  65. package/dist/get-compositions-from-markup.d.ts +3 -0
  66. package/dist/get-compositions-from-markup.js +19 -0
  67. package/dist/get-environment.d.ts +1 -0
  68. package/dist/get-environment.js +14 -2
  69. package/dist/get-preview-dom-element.d.ts +0 -0
  70. package/dist/get-preview-dom-element.js +0 -0
  71. package/dist/get-static-files.d.ts +17 -0
  72. package/dist/get-static-files.js +31 -0
  73. package/dist/get-timeline-clip-name.d.ts +0 -0
  74. package/dist/get-timeline-clip-name.js +2 -1
  75. package/dist/index.d.ts +38 -9
  76. package/dist/index.js +25 -9
  77. package/dist/internals.d.ts +50 -102
  78. package/dist/internals.js +18 -93
  79. package/dist/{interpolateColors.d.ts → interpolate-colors.d.ts} +0 -0
  80. package/dist/{interpolateColors.js → interpolate-colors.js} +0 -0
  81. package/dist/interpolate.d.ts +0 -0
  82. package/dist/interpolate.js +0 -0
  83. package/dist/is-approximately-the-same.d.ts +0 -0
  84. package/dist/is-approximately-the-same.js +0 -0
  85. package/dist/is-player.d.ts +3 -0
  86. package/dist/is-player.js +14 -0
  87. package/dist/layers.d.ts +24 -0
  88. package/dist/layers.js +149 -0
  89. package/dist/loading-indicator.d.ts +0 -0
  90. package/dist/loading-indicator.js +0 -0
  91. package/dist/loop/index.d.ts +2 -2
  92. package/dist/loop/index.js +7 -5
  93. package/dist/multiple-versions-warning.d.ts +0 -0
  94. package/dist/multiple-versions-warning.js +23 -4
  95. package/dist/nonce.d.ts +0 -0
  96. package/dist/nonce.js +0 -0
  97. package/dist/play-and-handle-not-allowed-error.d.ts +1 -1
  98. package/dist/play-and-handle-not-allowed-error.js +4 -0
  99. package/dist/portal-node.d.ts +0 -0
  100. package/dist/portal-node.js +0 -0
  101. package/dist/prefetch-state.d.ts +8 -0
  102. package/dist/prefetch-state.js +27 -0
  103. package/dist/prefetch.d.ts +9 -0
  104. package/dist/prefetch.js +108 -0
  105. package/dist/random.d.ts +2 -1
  106. package/dist/random.js +0 -0
  107. package/dist/register-root.d.ts +1 -1
  108. package/dist/register-root.js +3 -0
  109. package/dist/series/flatten-children.d.ts +1 -1
  110. package/dist/series/flatten-children.js +0 -0
  111. package/dist/series/index.d.ts +4 -4
  112. package/dist/series/index.js +5 -3
  113. package/dist/setup-env-variables.d.ts +0 -0
  114. package/dist/setup-env-variables.js +0 -0
  115. package/dist/spring/index.d.ts +8 -4
  116. package/dist/spring/index.js +21 -6
  117. package/dist/spring/measure-spring.d.ts +1 -1
  118. package/dist/spring/measure-spring.js +1 -1
  119. package/dist/spring/spring-utils.d.ts +0 -0
  120. package/dist/spring/spring-utils.js +0 -0
  121. package/dist/static-file.d.ts +4 -0
  122. package/dist/static-file.js +10 -0
  123. package/dist/timeline-position-state.d.ts +1 -1
  124. package/dist/timeline-position-state.js +0 -0
  125. package/dist/truthy.d.ts +0 -0
  126. package/dist/truthy.js +0 -0
  127. package/dist/{use-frame.d.ts → use-current-frame.d.ts} +0 -1
  128. package/dist/use-current-frame.js +28 -0
  129. package/dist/use-lazy-component.d.ts +3 -3
  130. package/dist/use-lazy-component.js +0 -0
  131. package/dist/use-media-in-timeline.d.ts +4 -3
  132. package/dist/use-media-in-timeline.js +15 -8
  133. package/dist/use-media-playback.d.ts +5 -2
  134. package/dist/use-media-playback.js +13 -8
  135. package/dist/use-media-tag-volume.d.ts +1 -1
  136. package/dist/use-media-tag-volume.js +0 -0
  137. package/dist/use-sync-volume-with-media-tag.d.ts +2 -2
  138. package/dist/use-sync-volume-with-media-tag.js +1 -0
  139. package/dist/use-unsafe-video-config.d.ts +1 -1
  140. package/dist/use-unsafe-video-config.js +2 -2
  141. package/dist/use-video-config.d.ts +1 -1
  142. package/dist/use-video-config.js +10 -1
  143. package/dist/use-video.d.ts +13 -1
  144. package/dist/use-video.js +16 -3
  145. package/dist/validate-media-props.d.ts +3 -3
  146. package/dist/validate-media-props.js +0 -0
  147. package/dist/validate-start-from-props.d.ts +0 -0
  148. package/dist/validate-start-from-props.js +0 -0
  149. package/dist/validation/validate-composition-id.d.ts +0 -0
  150. package/dist/validation/validate-composition-id.js +0 -0
  151. package/dist/validation/validate-dimensions.d.ts +0 -0
  152. package/dist/validation/validate-dimensions.js +0 -0
  153. package/dist/validation/validate-duration-in-frames.d.ts +0 -0
  154. package/dist/validation/validate-duration-in-frames.js +0 -0
  155. package/dist/validation/validate-folder-name.d.ts +0 -0
  156. package/dist/validation/validate-folder-name.js +0 -0
  157. package/dist/validation/validate-fps.d.ts +1 -1
  158. package/dist/validation/validate-fps.js +4 -1
  159. package/dist/validation/validate-offthreadvideo-image-format.d.ts +1 -0
  160. package/dist/validation/validate-offthreadvideo-image-format.js +15 -0
  161. package/dist/validation/validation-spring-duration.d.ts +1 -0
  162. package/dist/validation/validation-spring-duration.js +21 -0
  163. package/dist/version.d.ts +1 -0
  164. package/dist/version.js +5 -0
  165. package/dist/video/NativeVideo.d.ts +5 -0
  166. package/dist/video/NativeVideo.js +33 -0
  167. package/dist/video/NativeVideoForRendering.d.ts +8 -0
  168. package/dist/video/NativeVideoForRendering.js +14 -0
  169. package/dist/video/OffthreadVideo.d.ts +2 -2
  170. package/dist/video/OffthreadVideo.js +12 -4
  171. package/dist/video/OffthreadVideoForRendering.d.ts +1 -1
  172. package/dist/video/OffthreadVideoForRendering.js +28 -17
  173. package/dist/video/Video.d.ts +5 -3
  174. package/dist/video/Video.js +27 -6
  175. package/dist/video/VideoForDevelopment.d.ts +10 -2
  176. package/dist/video/VideoForDevelopment.js +75 -7
  177. package/dist/video/VideoForRendering.d.ts +9 -2
  178. package/dist/video/VideoForRendering.js +84 -27
  179. package/dist/video/duration-state.d.ts +17 -0
  180. package/dist/video/duration-state.js +34 -0
  181. package/dist/video/get-current-time.d.ts +2 -1
  182. package/dist/video/get-current-time.js +7 -7
  183. package/dist/video/index.d.ts +1 -1
  184. package/dist/video/index.js +0 -0
  185. package/dist/video/props.d.ts +9 -3
  186. package/dist/video/props.js +0 -0
  187. package/dist/video/video-fragment.d.ts +12 -0
  188. package/dist/video/video-fragment.js +60 -0
  189. package/dist/video-config.d.ts +0 -0
  190. package/dist/video-config.js +0 -0
  191. package/dist/volume-position-state.d.ts +0 -0
  192. package/dist/volume-position-state.js +0 -0
  193. package/dist/volume-prop.d.ts +2 -1
  194. package/dist/volume-prop.js +4 -3
  195. package/dist/warn-about-non-seekable-media.d.ts +1 -1
  196. package/dist/warn-about-non-seekable-media.js +14 -2
  197. package/dist/wrap-remotion-context.d.ts +6 -1
  198. package/dist/wrap-remotion-context.js +15 -3
  199. package/package.json +26 -16
  200. package/.turbo/turbo-build.log +0 -5
  201. package/dist/AbsoluteFill.d.ts.map +0 -1
  202. package/dist/AbsoluteFill.js.map +0 -1
  203. package/dist/Composition.d.ts.map +0 -1
  204. package/dist/Composition.js.map +0 -1
  205. package/dist/CompositionManager.d.ts.map +0 -1
  206. package/dist/CompositionManager.js.map +0 -1
  207. package/dist/IFrame.d.ts.map +0 -1
  208. package/dist/IFrame.js.map +0 -1
  209. package/dist/Img.d.ts.map +0 -1
  210. package/dist/Img.js.map +0 -1
  211. package/dist/RemotionRoot.d.ts.map +0 -1
  212. package/dist/RemotionRoot.js.map +0 -1
  213. package/dist/Still.d.ts.map +0 -1
  214. package/dist/Still.js.map +0 -1
  215. package/dist/absolute-src.d.ts.map +0 -1
  216. package/dist/absolute-src.js.map +0 -1
  217. package/dist/asset-types.d.ts.map +0 -1
  218. package/dist/asset-types.js.map +0 -1
  219. package/dist/audio/Audio.d.ts.map +0 -1
  220. package/dist/audio/Audio.js.map +0 -1
  221. package/dist/audio/AudioForDevelopment.d.ts.map +0 -1
  222. package/dist/audio/AudioForDevelopment.js.map +0 -1
  223. package/dist/audio/AudioForRendering.d.ts.map +0 -1
  224. package/dist/audio/AudioForRendering.js.map +0 -1
  225. package/dist/audio/index.d.ts.map +0 -1
  226. package/dist/audio/index.js.map +0 -1
  227. package/dist/audio/props.d.ts.map +0 -1
  228. package/dist/audio/props.js.map +0 -1
  229. package/dist/audio/shared-audio-tags.d.ts.map +0 -1
  230. package/dist/audio/shared-audio-tags.js.map +0 -1
  231. package/dist/audio/use-audio-frame.d.ts.map +0 -1
  232. package/dist/audio/use-audio-frame.js.map +0 -1
  233. package/dist/bezier.d.ts.map +0 -1
  234. package/dist/bezier.js.map +0 -1
  235. package/dist/compress-assets.d.ts +0 -7
  236. package/dist/compress-assets.d.ts.map +0 -1
  237. package/dist/compress-assets.js +0 -25
  238. package/dist/compress-assets.js.map +0 -1
  239. package/dist/config/browser-executable.d.ts +0 -3
  240. package/dist/config/browser-executable.d.ts.map +0 -1
  241. package/dist/config/browser-executable.js +0 -12
  242. package/dist/config/browser-executable.js.map +0 -1
  243. package/dist/config/browser.d.ts +0 -4
  244. package/dist/config/browser.d.ts.map +0 -1
  245. package/dist/config/browser.js +0 -19
  246. package/dist/config/browser.js.map +0 -1
  247. package/dist/config/bundle-out-dir.d.ts +0 -2
  248. package/dist/config/bundle-out-dir.js +0 -12
  249. package/dist/config/chromium-flags.d.ts +0 -10
  250. package/dist/config/chromium-flags.d.ts.map +0 -1
  251. package/dist/config/chromium-flags.js +0 -34
  252. package/dist/config/chromium-flags.js.map +0 -1
  253. package/dist/config/codec.d.ts +0 -17
  254. package/dist/config/codec.d.ts.map +0 -1
  255. package/dist/config/codec.js +0 -103
  256. package/dist/config/codec.js.map +0 -1
  257. package/dist/config/concurrency.d.ts +0 -3
  258. package/dist/config/concurrency.d.ts.map +0 -1
  259. package/dist/config/concurrency.js +0 -15
  260. package/dist/config/concurrency.js.map +0 -1
  261. package/dist/config/crf.d.ts +0 -9
  262. package/dist/config/crf.d.ts.map +0 -1
  263. package/dist/config/crf.js +0 -83
  264. package/dist/config/crf.js.map +0 -1
  265. package/dist/config/env-file.d.ts +0 -2
  266. package/dist/config/env-file.d.ts.map +0 -1
  267. package/dist/config/env-file.js +0 -10
  268. package/dist/config/env-file.js.map +0 -1
  269. package/dist/config/every-nth-file.d.ts +0 -2
  270. package/dist/config/every-nth-file.js +0 -12
  271. package/dist/config/ffmpeg-executable.d.ts +0 -5
  272. package/dist/config/ffmpeg-executable.d.ts.map +0 -1
  273. package/dist/config/ffmpeg-executable.js +0 -21
  274. package/dist/config/ffmpeg-executable.js.map +0 -1
  275. package/dist/config/frame-range.d.ts +0 -5
  276. package/dist/config/frame-range.d.ts.map +0 -1
  277. package/dist/config/frame-range.js +0 -80
  278. package/dist/config/frame-range.js.map +0 -1
  279. package/dist/config/image-format.d.ts +0 -8
  280. package/dist/config/image-format.d.ts.map +0 -1
  281. package/dist/config/image-format.js +0 -37
  282. package/dist/config/image-format.js.map +0 -1
  283. package/dist/config/image-sequence.d.ts +0 -3
  284. package/dist/config/image-sequence.d.ts.map +0 -1
  285. package/dist/config/image-sequence.js +0 -15
  286. package/dist/config/image-sequence.js.map +0 -1
  287. package/dist/config/index.d.ts +0 -167
  288. package/dist/config/index.d.ts.map +0 -1
  289. package/dist/config/index.js +0 -180
  290. package/dist/config/index.js.map +0 -1
  291. package/dist/config/input-props.d.ts.map +0 -1
  292. package/dist/config/input-props.js.map +0 -1
  293. package/dist/config/log.d.ts +0 -7
  294. package/dist/config/log.d.ts.map +0 -1
  295. package/dist/config/log.js +0 -25
  296. package/dist/config/log.js.map +0 -1
  297. package/dist/config/loop.d.ts +0 -3
  298. package/dist/config/loop.js +0 -15
  299. package/dist/config/max-timeline-tracks.d.ts +0 -2
  300. package/dist/config/max-timeline-tracks.d.ts.map +0 -1
  301. package/dist/config/max-timeline-tracks.js +0 -24
  302. package/dist/config/max-timeline-tracks.js.map +0 -1
  303. package/dist/config/override-webpack.d.ts +0 -6
  304. package/dist/config/override-webpack.d.ts.map +0 -1
  305. package/dist/config/override-webpack.js +0 -14
  306. package/dist/config/override-webpack.js.map +0 -1
  307. package/dist/config/overwrite.d.ts +0 -3
  308. package/dist/config/overwrite.d.ts.map +0 -1
  309. package/dist/config/overwrite.js +0 -14
  310. package/dist/config/overwrite.js.map +0 -1
  311. package/dist/config/pixel-format.d.ts +0 -8
  312. package/dist/config/pixel-format.d.ts.map +0 -1
  313. package/dist/config/pixel-format.js +0 -38
  314. package/dist/config/pixel-format.js.map +0 -1
  315. package/dist/config/preview-server.d.ts +0 -2
  316. package/dist/config/preview-server.d.ts.map +0 -1
  317. package/dist/config/preview-server.js +0 -20
  318. package/dist/config/preview-server.js.map +0 -1
  319. package/dist/config/prores-profile.d.ts +0 -7
  320. package/dist/config/prores-profile.d.ts.map +0 -1
  321. package/dist/config/prores-profile.js +0 -32
  322. package/dist/config/prores-profile.js.map +0 -1
  323. package/dist/config/public-path.d.ts +0 -2
  324. package/dist/config/public-path.js +0 -12
  325. package/dist/config/quality.d.ts +0 -2
  326. package/dist/config/quality.d.ts.map +0 -1
  327. package/dist/config/quality.js +0 -17
  328. package/dist/config/quality.js.map +0 -1
  329. package/dist/config/scale.d.ts +0 -3
  330. package/dist/config/scale.d.ts.map +0 -1
  331. package/dist/config/scale.js +0 -15
  332. package/dist/config/scale.js.map +0 -1
  333. package/dist/config/still-frame.d.ts +0 -2
  334. package/dist/config/still-frame.d.ts.map +0 -1
  335. package/dist/config/still-frame.js +0 -12
  336. package/dist/config/still-frame.js.map +0 -1
  337. package/dist/config/timeout.d.ts +0 -2
  338. package/dist/config/timeout.d.ts.map +0 -1
  339. package/dist/config/timeout.js +0 -17
  340. package/dist/config/timeout.js.map +0 -1
  341. package/dist/config/webpack-caching.d.ts +0 -3
  342. package/dist/config/webpack-caching.d.ts.map +0 -1
  343. package/dist/config/webpack-caching.js +0 -16
  344. package/dist/config/webpack-caching.js.map +0 -1
  345. package/dist/default-css.d.ts.map +0 -1
  346. package/dist/default-css.js.map +0 -1
  347. package/dist/delay-render.d.ts.map +0 -1
  348. package/dist/delay-render.js.map +0 -1
  349. package/dist/easing.d.ts.map +0 -1
  350. package/dist/easing.js.map +0 -1
  351. package/dist/feature-flags.d.ts +0 -1
  352. package/dist/feature-flags.d.ts.map +0 -1
  353. package/dist/feature-flags.js +0 -7
  354. package/dist/feature-flags.js.map +0 -1
  355. package/dist/freeze.d.ts.map +0 -1
  356. package/dist/freeze.js.map +0 -1
  357. package/dist/get-asset-file-name.d.ts.map +0 -1
  358. package/dist/get-asset-file-name.js.map +0 -1
  359. package/dist/get-environment.d.ts.map +0 -1
  360. package/dist/get-environment.js.map +0 -1
  361. package/dist/get-preview-dom-element.d.ts.map +0 -1
  362. package/dist/get-preview-dom-element.js.map +0 -1
  363. package/dist/get-timeline-clip-name.d.ts.map +0 -1
  364. package/dist/get-timeline-clip-name.js.map +0 -1
  365. package/dist/index.d.ts.map +0 -1
  366. package/dist/index.js.map +0 -1
  367. package/dist/initial-frame.d.ts +0 -2
  368. package/dist/initial-frame.d.ts.map +0 -1
  369. package/dist/initial-frame.js +0 -12
  370. package/dist/initial-frame.js.map +0 -1
  371. package/dist/internals.d.ts.map +0 -1
  372. package/dist/internals.js.map +0 -1
  373. package/dist/interpolate.d.ts.map +0 -1
  374. package/dist/interpolate.js.map +0 -1
  375. package/dist/interpolateColors.d.ts.map +0 -1
  376. package/dist/interpolateColors.js.map +0 -1
  377. package/dist/is-approximately-the-same.d.ts.map +0 -1
  378. package/dist/is-approximately-the-same.js.map +0 -1
  379. package/dist/is-audio-codec.d.ts +0 -2
  380. package/dist/is-audio-codec.d.ts.map +0 -1
  381. package/dist/is-audio-codec.js +0 -7
  382. package/dist/is-audio-codec.js.map +0 -1
  383. package/dist/loop/index.d.ts.map +0 -1
  384. package/dist/loop/index.js.map +0 -1
  385. package/dist/multiple-versions-warning.d.ts.map +0 -1
  386. package/dist/multiple-versions-warning.js.map +0 -1
  387. package/dist/nonce.d.ts.map +0 -1
  388. package/dist/nonce.js.map +0 -1
  389. package/dist/perf/index.d.ts +0 -5
  390. package/dist/perf/index.d.ts.map +0 -1
  391. package/dist/perf/index.js +0 -35
  392. package/dist/perf/index.js.map +0 -1
  393. package/dist/play-and-handle-not-allowed-error.d.ts.map +0 -1
  394. package/dist/play-and-handle-not-allowed-error.js.map +0 -1
  395. package/dist/random.d.ts.map +0 -1
  396. package/dist/random.js.map +0 -1
  397. package/dist/register-root.d.ts.map +0 -1
  398. package/dist/register-root.js.map +0 -1
  399. package/dist/sequencing/index.d.ts.map +0 -1
  400. package/dist/sequencing/index.js.map +0 -1
  401. package/dist/series/flatten-children.d.ts.map +0 -1
  402. package/dist/series/flatten-children.js.map +0 -1
  403. package/dist/series/index.d.ts.map +0 -1
  404. package/dist/series/index.js.map +0 -1
  405. package/dist/setup-env-variables.d.ts.map +0 -1
  406. package/dist/setup-env-variables.js.map +0 -1
  407. package/dist/spring/index.d.ts.map +0 -1
  408. package/dist/spring/index.js.map +0 -1
  409. package/dist/spring/measure-spring.d.ts.map +0 -1
  410. package/dist/spring/measure-spring.js.map +0 -1
  411. package/dist/spring/spring-utils.d.ts.map +0 -1
  412. package/dist/spring/spring-utils.js.map +0 -1
  413. package/dist/static-file.d.ts.map +0 -1
  414. package/dist/static-file.js.map +0 -1
  415. package/dist/timeline-inout-position-state.d.ts +0 -12
  416. package/dist/timeline-inout-position-state.d.ts.map +0 -1
  417. package/dist/timeline-inout-position-state.js +0 -23
  418. package/dist/timeline-inout-position-state.js.map +0 -1
  419. package/dist/timeline-position-state.d.ts.map +0 -1
  420. package/dist/timeline-position-state.js.map +0 -1
  421. package/dist/timeout.d.ts +0 -2
  422. package/dist/timeout.d.ts.map +0 -1
  423. package/dist/timeout.js +0 -12
  424. package/dist/timeout.js.map +0 -1
  425. package/dist/truthy.d.ts.map +0 -1
  426. package/dist/truthy.js.map +0 -1
  427. package/dist/use-frame.d.ts.map +0 -1
  428. package/dist/use-frame.js +0 -25
  429. package/dist/use-frame.js.map +0 -1
  430. package/dist/use-lazy-component.d.ts.map +0 -1
  431. package/dist/use-lazy-component.js.map +0 -1
  432. package/dist/use-media-in-timeline.d.ts.map +0 -1
  433. package/dist/use-media-in-timeline.js.map +0 -1
  434. package/dist/use-media-playback.d.ts.map +0 -1
  435. package/dist/use-media-playback.js.map +0 -1
  436. package/dist/use-media-tag-volume.d.ts.map +0 -1
  437. package/dist/use-media-tag-volume.js.map +0 -1
  438. package/dist/use-sync-volume-with-media-tag.d.ts.map +0 -1
  439. package/dist/use-sync-volume-with-media-tag.js.map +0 -1
  440. package/dist/use-unsafe-video-config.d.ts.map +0 -1
  441. package/dist/use-unsafe-video-config.js.map +0 -1
  442. package/dist/use-video-config.d.ts.map +0 -1
  443. package/dist/use-video-config.js.map +0 -1
  444. package/dist/use-video.d.ts.map +0 -1
  445. package/dist/use-video.js.map +0 -1
  446. package/dist/validate-media-props.d.ts.map +0 -1
  447. package/dist/validate-media-props.js.map +0 -1
  448. package/dist/validate-start-from-props.d.ts.map +0 -1
  449. package/dist/validate-start-from-props.js.map +0 -1
  450. package/dist/validation/validate-composition-id.d.ts.map +0 -1
  451. package/dist/validation/validate-composition-id.js.map +0 -1
  452. package/dist/validation/validate-dimensions.d.ts.map +0 -1
  453. package/dist/validation/validate-dimensions.js.map +0 -1
  454. package/dist/validation/validate-duration-in-frames.d.ts.map +0 -1
  455. package/dist/validation/validate-duration-in-frames.js.map +0 -1
  456. package/dist/validation/validate-every-nth-frame.d.ts +0 -1
  457. package/dist/validation/validate-every-nth-frame.js +0 -21
  458. package/dist/validation/validate-folder-name.d.ts.map +0 -1
  459. package/dist/validation/validate-folder-name.js.map +0 -1
  460. package/dist/validation/validate-fps.d.ts.map +0 -1
  461. package/dist/validation/validate-fps.js.map +0 -1
  462. package/dist/validation/validate-frame.d.ts +0 -1
  463. package/dist/validation/validate-frame.d.ts.map +0 -1
  464. package/dist/validation/validate-frame.js +0 -24
  465. package/dist/validation/validate-frame.js.map +0 -1
  466. package/dist/validation/validate-image-format.d.ts +0 -2
  467. package/dist/validation/validate-image-format.d.ts.map +0 -1
  468. package/dist/validation/validate-image-format.js +0 -9
  469. package/dist/validation/validate-image-format.js.map +0 -1
  470. package/dist/validation/validate-opengl-renderer.d.ts +0 -4
  471. package/dist/validation/validate-opengl-renderer.d.ts.map +0 -1
  472. package/dist/validation/validate-opengl-renderer.js +0 -14
  473. package/dist/validation/validate-opengl-renderer.js.map +0 -1
  474. package/dist/validation/validate-quality.d.ts +0 -1
  475. package/dist/validation/validate-quality.d.ts.map +0 -1
  476. package/dist/validation/validate-quality.js +0 -21
  477. package/dist/validation/validate-quality.js.map +0 -1
  478. package/dist/video/Video.d.ts.map +0 -1
  479. package/dist/video/Video.js.map +0 -1
  480. package/dist/video/VideoForDevelopment.d.ts.map +0 -1
  481. package/dist/video/VideoForDevelopment.js.map +0 -1
  482. package/dist/video/VideoForRendering.d.ts.map +0 -1
  483. package/dist/video/VideoForRendering.js.map +0 -1
  484. package/dist/video/get-current-time.d.ts.map +0 -1
  485. package/dist/video/get-current-time.js.map +0 -1
  486. package/dist/video/index.d.ts.map +0 -1
  487. package/dist/video/index.js.map +0 -1
  488. package/dist/video/props.d.ts.map +0 -1
  489. package/dist/video/props.js.map +0 -1
  490. package/dist/video-config.d.ts.map +0 -1
  491. package/dist/video-config.js.map +0 -1
  492. package/dist/volume-position-state.d.ts.map +0 -1
  493. package/dist/volume-position-state.js.map +0 -1
  494. package/dist/volume-prop.d.ts.map +0 -1
  495. package/dist/volume-prop.js.map +0 -1
  496. package/dist/warn-about-non-seekable-media.d.ts.map +0 -1
  497. package/dist/warn-about-non-seekable-media.js.map +0 -1
  498. package/dist/wrap-remotion-context.d.ts.map +0 -1
  499. package/dist/wrap-remotion-context.js.map +0 -1
@@ -5,41 +5,52 @@ const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
6
  const absolute_src_1 = require("../absolute-src");
7
7
  const CompositionManager_1 = require("../CompositionManager");
8
+ const delay_render_1 = require("../delay-render");
9
+ const get_environment_1 = require("../get-environment");
8
10
  const random_1 = require("../random");
9
- const sequencing_1 = require("../sequencing");
10
- const use_frame_1 = require("../use-frame");
11
+ const Sequence_1 = require("../Sequence");
12
+ const timeline_position_state_1 = require("../timeline-position-state");
13
+ const use_current_frame_1 = require("../use-current-frame");
11
14
  const volume_prop_1 = require("../volume-prop");
12
15
  const use_audio_frame_1 = require("./use-audio-frame");
13
16
  const AudioForRenderingRefForwardingFunction = (props, ref) => {
14
17
  const audioRef = (0, react_1.useRef)(null);
15
- const absoluteFrame = (0, use_frame_1.useAbsoluteCurrentFrame)();
18
+ const absoluteFrame = (0, timeline_position_state_1.useTimelinePosition)();
16
19
  const volumePropFrame = (0, use_audio_frame_1.useFrameForVolumeProp)();
17
- const frame = (0, use_frame_1.useCurrentFrame)();
18
- const sequenceContext = (0, react_1.useContext)(sequencing_1.SequenceContext);
20
+ const frame = (0, use_current_frame_1.useCurrentFrame)();
21
+ const sequenceContext = (0, react_1.useContext)(Sequence_1.SequenceContext);
19
22
  const { registerAsset, unregisterAsset } = (0, react_1.useContext)(CompositionManager_1.CompositionManager);
23
+ const environment = (0, get_environment_1.useRemotionEnvironment)();
20
24
  // Generate a string that's as unique as possible for this asset
21
25
  // but at the same time the same on all threads
22
26
  const id = (0, react_1.useMemo)(() => {
23
27
  var _a;
24
- return `audio-${(0, random_1.random)((_a = props.src) !== null && _a !== void 0 ? _a : '')}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.relativeFrom}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.cumulatedFrom}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.durationInFrames}-muted:${props.muted}`;
25
- }, [props.muted, props.src, sequenceContext]);
26
- const { volume: volumeProp, playbackRate, ...nativeProps } = props;
28
+ return `audio-${(0, random_1.random)((_a = props.src) !== null && _a !== void 0 ? _a : '')}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.relativeFrom}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.cumulatedFrom}-${sequenceContext === null || sequenceContext === void 0 ? void 0 : sequenceContext.durationInFrames}`;
29
+ }, [props.src, sequenceContext]);
30
+ const { volume: volumeProp, playbackRate, allowAmplificationDuringRender, ...nativeProps } = props;
27
31
  const volume = (0, volume_prop_1.evaluateVolume)({
28
32
  volume: volumeProp,
29
33
  frame: volumePropFrame,
30
34
  mediaVolume: 1,
35
+ allowAmplificationDuringRender: allowAmplificationDuringRender !== null && allowAmplificationDuringRender !== void 0 ? allowAmplificationDuringRender : false,
31
36
  });
32
37
  (0, react_1.useImperativeHandle)(ref, () => {
33
38
  return audioRef.current;
34
- });
39
+ }, []);
35
40
  (0, react_1.useEffect)(() => {
36
41
  var _a;
37
42
  if (!props.src) {
38
43
  throw new Error('No src passed');
39
44
  }
45
+ if (!window.remotion_audioEnabled) {
46
+ return;
47
+ }
40
48
  if (props.muted) {
41
49
  return;
42
50
  }
51
+ if (volume <= 0) {
52
+ return;
53
+ }
43
54
  registerAsset({
44
55
  type: 'audio',
45
56
  src: (0, absolute_src_1.getAbsoluteSrc)(props.src),
@@ -48,6 +59,7 @@ const AudioForRenderingRefForwardingFunction = (props, ref) => {
48
59
  volume,
49
60
  mediaFrame: frame,
50
61
  playbackRate: (_a = props.playbackRate) !== null && _a !== void 0 ? _a : 1,
62
+ allowAmplificationDuringRender: allowAmplificationDuringRender !== null && allowAmplificationDuringRender !== void 0 ? allowAmplificationDuringRender : false,
51
63
  });
52
64
  return () => unregisterAsset(id);
53
65
  }, [
@@ -62,7 +74,38 @@ const AudioForRenderingRefForwardingFunction = (props, ref) => {
62
74
  frame,
63
75
  playbackRate,
64
76
  props.playbackRate,
77
+ allowAmplificationDuringRender,
65
78
  ]);
79
+ const { src, onDuration } = props;
80
+ // If audio source switches, make new handle
81
+ if (environment === 'rendering') {
82
+ // eslint-disable-next-line react-hooks/rules-of-hooks
83
+ (0, react_1.useLayoutEffect)(() => {
84
+ if (process.env.NODE_ENV === 'test') {
85
+ return;
86
+ }
87
+ const newHandle = (0, delay_render_1.delayRender)('Loading <Audio> duration with src=' + src);
88
+ const { current } = audioRef;
89
+ const didLoad = () => {
90
+ if (current === null || current === void 0 ? void 0 : current.duration) {
91
+ onDuration(src, current.duration);
92
+ }
93
+ (0, delay_render_1.continueRender)(newHandle);
94
+ };
95
+ if (current === null || current === void 0 ? void 0 : current.duration) {
96
+ onDuration(src, current.duration);
97
+ (0, delay_render_1.continueRender)(newHandle);
98
+ }
99
+ else {
100
+ current === null || current === void 0 ? void 0 : current.addEventListener('loadedmetadata', didLoad, { once: true });
101
+ }
102
+ // If tag gets unmounted, clear pending handles because video metadata is not going to load
103
+ return () => {
104
+ current === null || current === void 0 ? void 0 : current.removeEventListener('loadedmetadata', didLoad);
105
+ (0, delay_render_1.continueRender)(newHandle);
106
+ };
107
+ }, [src, onDuration]);
108
+ }
66
109
  return (0, jsx_runtime_1.jsx)("audio", { ref: audioRef, ...nativeProps });
67
110
  };
68
111
  exports.AudioForRendering = (0, react_1.forwardRef)(AudioForRenderingRefForwardingFunction);
File without changes
File without changes
@@ -1,10 +1,12 @@
1
1
  /// <reference types="react" />
2
- import { VolumeProp } from '../volume-prop';
2
+ import type { VolumeProp } from '../volume-prop';
3
3
  export declare type RemotionMainAudioProps = {
4
4
  startFrom?: number;
5
5
  endAt?: number;
6
6
  };
7
- export declare type RemotionAudioProps = Omit<React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>, HTMLAudioElement>, 'autoPlay' | 'controls' | 'loop' | 'onEnded'> & {
7
+ export declare type RemotionAudioProps = Omit<React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>, HTMLAudioElement>, 'autoPlay' | 'controls' | 'onEnded' | 'nonce' | 'onResize' | 'onResizeCapture'> & {
8
8
  volume?: VolumeProp;
9
9
  playbackRate?: number;
10
+ acceptableTimeShiftInSeconds?: number;
11
+ allowAmplificationDuringRender?: boolean;
10
12
  };
File without changes
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { RemotionAudioProps } from './props';
2
+ import type { RemotionAudioProps } from './props';
3
3
  /**
4
4
  * This functionality of Remotion will keep a certain amount
5
5
  * of <audio> tags pre-mounted and by default filled with an empty audio track.
@@ -15,11 +15,16 @@ declare type AudioElem = {
15
15
  id: number;
16
16
  props: RemotionAudioProps;
17
17
  el: React.RefObject<HTMLAudioElement>;
18
+ audioId: string;
18
19
  };
19
20
  declare type SharedContext = {
20
- registerAudio: (aud: RemotionAudioProps) => AudioElem;
21
+ registerAudio: (aud: RemotionAudioProps, audioId: string) => AudioElem;
21
22
  unregisterAudio: (id: number) => void;
22
- updateAudio: (id: number, aud: RemotionAudioProps) => void;
23
+ updateAudio: (options: {
24
+ id: number;
25
+ aud: RemotionAudioProps;
26
+ audioId: string;
27
+ }) => void;
23
28
  playAllAudios: () => void;
24
29
  numberOfAudioTags: number;
25
30
  };
@@ -28,5 +33,5 @@ export declare const SharedAudioContextProvider: React.FC<{
28
33
  numberOfAudioTags: number;
29
34
  children: React.ReactNode;
30
35
  }>;
31
- export declare const useSharedAudio: (aud: RemotionAudioProps) => AudioElem;
36
+ export declare const useSharedAudio: (aud: RemotionAudioProps, audioId: string) => AudioElem;
32
37
  export {};
@@ -27,9 +27,40 @@ exports.useSharedAudio = exports.SharedAudioContextProvider = exports.SharedAudi
27
27
  const jsx_runtime_1 = require("react/jsx-runtime");
28
28
  const react_1 = __importStar(require("react"));
29
29
  const EMPTY_AUDIO = 'data:audio/mp3;base64,/+MYxAAJcAV8AAgAABn//////+/gQ5BAMA+D4Pg+BAQBAEAwD4Pg+D4EBAEAQDAPg++hYBH///hUFQVBUFREDQNHmf///////+MYxBUGkAGIMAAAAP/29Xt6lUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV/+MYxDUAAANIAAAAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV';
30
+ const compareProps = (obj1, obj2) => {
31
+ const keysA = Object.keys(obj1).sort();
32
+ const keysB = Object.keys(obj2).sort();
33
+ if (keysA.length !== keysB.length) {
34
+ return false;
35
+ }
36
+ for (let i = 0; i < keysA.length; i++) {
37
+ // Not the same keys
38
+ if (keysA[i] !== keysB[i]) {
39
+ return false;
40
+ }
41
+ // Not the same values
42
+ if (obj1[keysA[i]] !== obj2[keysB[i]]) {
43
+ return false;
44
+ }
45
+ }
46
+ return true;
47
+ };
48
+ const didPropChange = (key, newProp, prevProp) => {
49
+ // /music.mp3 and http://localhost:3000/music.mp3 are the same
50
+ if (key === 'src' &&
51
+ !prevProp.startsWith('data:') &&
52
+ !newProp.startsWith('data:')) {
53
+ return (new URL(prevProp, window.location.origin).toString() !==
54
+ new URL(newProp, window.location.origin).toString());
55
+ }
56
+ if (prevProp === newProp) {
57
+ return false;
58
+ }
59
+ return true;
60
+ };
30
61
  exports.SharedAudioContext = (0, react_1.createContext)(null);
31
62
  const SharedAudioContextProvider = ({ children, numberOfAudioTags }) => {
32
- const [audios, setAudios] = (0, react_1.useState)([]);
63
+ const audios = (0, react_1.useRef)([]);
33
64
  const [initialNumberOfAudioTags] = (0, react_1.useState)(numberOfAudioTags);
34
65
  if (numberOfAudioTags !== initialNumberOfAudioTags) {
35
66
  throw new Error('The number of shared audio tags has changed dynamically. Once you have set this property, you cannot change it afterwards.');
@@ -40,7 +71,38 @@ const SharedAudioContextProvider = ({ children, numberOfAudioTags }) => {
40
71
  });
41
72
  }, [numberOfAudioTags]);
42
73
  const takenAudios = (0, react_1.useRef)(new Array(numberOfAudioTags).fill(false));
43
- const registerAudio = (0, react_1.useCallback)((aud) => {
74
+ const rerenderAudios = (0, react_1.useCallback)(() => {
75
+ refs.forEach(({ ref, id }) => {
76
+ var _a;
77
+ const data = (_a = audios.current) === null || _a === void 0 ? void 0 : _a.find((a) => a.id === id);
78
+ const { current } = ref;
79
+ if (!current) {
80
+ // Whole player has been unmounted, the refs don't exist anymore.
81
+ // It is not an error anymore though
82
+ return;
83
+ }
84
+ if (data === undefined) {
85
+ current.src = EMPTY_AUDIO;
86
+ return;
87
+ }
88
+ if (!data) {
89
+ throw new TypeError('Expected audio data to be there');
90
+ }
91
+ Object.keys(data.props).forEach((key) => {
92
+ // @ts-expect-error
93
+ if (didPropChange(key, data.props[key], current[key])) {
94
+ // @ts-expect-error
95
+ current[key] = data.props[key];
96
+ }
97
+ });
98
+ });
99
+ }, [refs]);
100
+ const registerAudio = (0, react_1.useCallback)((aud, audioId) => {
101
+ var _a, _b;
102
+ const found = (_a = audios.current) === null || _a === void 0 ? void 0 : _a.find((a) => a.audioId === audioId);
103
+ if (found) {
104
+ return found;
105
+ }
44
106
  const firstFreeAudio = takenAudios.current.findIndex((a) => a === false);
45
107
  if (firstFreeAudio === -1) {
46
108
  throw new Error(`Tried to simultaneously mount ${numberOfAudioTags + 1} <Audio /> tags at the same time. With the current settings, the maximum amount of <Audio /> tags is limited to ${numberOfAudioTags} at the same time. Remotion pre-mounts silent audio tags to help avoid browser autoplay restrictions. See https://remotion.dev/docs/player/autoplay#use-the-numberofsharedaudiotags-property for more information on how to increase this limit.`);
@@ -53,17 +115,14 @@ const SharedAudioContextProvider = ({ children, numberOfAudioTags }) => {
53
115
  props: aud,
54
116
  id,
55
117
  el: ref,
118
+ audioId,
56
119
  };
57
- // We need a timeout because this state setting is triggered by another state being set, causing React to throw an error.
58
- // By setting a timeout, we are bypassing the error and allowing the state
59
- // to be updated in the next tick.
60
- // This can lead to a tiny delay of audio playback, improvement ideas are welcome.
61
- setTimeout(() => {
62
- setAudios((prevAudios) => [...prevAudios, newElem]);
63
- }, 4);
120
+ (_b = audios.current) === null || _b === void 0 ? void 0 : _b.push(newElem);
121
+ rerenderAudios();
64
122
  return newElem;
65
- }, [numberOfAudioTags, refs]);
123
+ }, [numberOfAudioTags, refs, rerenderAudios]);
66
124
  const unregisterAudio = (0, react_1.useCallback)((id) => {
125
+ var _a;
67
126
  const cloned = [...takenAudios.current];
68
127
  const index = refs.findIndex((r) => r.id === id);
69
128
  if (index === -1) {
@@ -71,23 +130,31 @@ const SharedAudioContextProvider = ({ children, numberOfAudioTags }) => {
71
130
  }
72
131
  cloned[index] = false;
73
132
  takenAudios.current = cloned;
74
- setAudios((prevAudios) => {
75
- return prevAudios.filter((a) => a.id !== id);
76
- });
77
- }, [refs]);
78
- const updateAudio = (0, react_1.useCallback)((id, aud) => {
79
- setAudios((prevAudios) => {
80
- return prevAudios.map((prevA) => {
81
- if (prevA.id === id) {
82
- return {
83
- ...prevA,
84
- props: aud,
85
- };
133
+ audios.current = (_a = audios.current) === null || _a === void 0 ? void 0 : _a.filter((a) => a.id !== id);
134
+ rerenderAudios();
135
+ }, [refs, rerenderAudios]);
136
+ const updateAudio = (0, react_1.useCallback)(({ aud, audioId, id, }) => {
137
+ var _a;
138
+ let changed = false;
139
+ audios.current = (_a = audios.current) === null || _a === void 0 ? void 0 : _a.map((prevA) => {
140
+ if (prevA.id === id) {
141
+ const isTheSame = compareProps(aud, prevA.props);
142
+ if (isTheSame) {
143
+ return prevA;
86
144
  }
87
- return prevA;
88
- });
145
+ changed = true;
146
+ return {
147
+ ...prevA,
148
+ props: aud,
149
+ audioId,
150
+ };
151
+ }
152
+ return prevA;
89
153
  });
90
- }, []);
154
+ if (changed) {
155
+ rerenderAudios();
156
+ }
157
+ }, [rerenderAudios]);
91
158
  const playAllAudios = (0, react_1.useCallback)(() => {
92
159
  refs.forEach((ref) => {
93
160
  var _a;
@@ -110,41 +177,46 @@ const SharedAudioContextProvider = ({ children, numberOfAudioTags }) => {
110
177
  updateAudio,
111
178
  ]);
112
179
  return ((0, jsx_runtime_1.jsxs)(exports.SharedAudioContext.Provider, { value: value, children: [refs.map(({ id, ref }) => {
113
- const data = audios.find((a) => a.id === id);
114
- if (data === undefined) {
115
- return (0, jsx_runtime_1.jsx)("audio", { ref: ref, src: EMPTY_AUDIO }, id);
116
- }
117
- if (!data) {
118
- throw new TypeError('Expected audio data to be there');
119
- }
120
- return (0, jsx_runtime_1.jsx)("audio", { ref: ref, ...data.props }, id);
180
+ return (0, jsx_runtime_1.jsx)("audio", { ref: ref, src: EMPTY_AUDIO }, id);
121
181
  }), children] }));
122
182
  };
123
183
  exports.SharedAudioContextProvider = SharedAudioContextProvider;
124
- const useSharedAudio = (aud) => {
184
+ const useSharedAudio = (aud, audioId) => {
125
185
  const ctx = (0, react_1.useContext)(exports.SharedAudioContext);
186
+ /**
187
+ * We work around this in React 18 so an audio tag will only register itself once
188
+ */
126
189
  const [elem] = (0, react_1.useState)(() => {
127
190
  if (ctx && ctx.numberOfAudioTags > 0) {
128
- return ctx.registerAudio(aud);
191
+ return ctx.registerAudio(aud, audioId);
129
192
  }
130
193
  return {
131
194
  el: react_1.default.createRef(),
132
195
  id: Math.random(),
133
196
  props: aud,
197
+ audioId,
134
198
  };
135
199
  });
136
- (0, react_1.useEffect)(() => {
137
- return () => {
200
+ /**
201
+ * Effects in React 18 fire twice, and we are looking for a way to only fire it once.
202
+ * - useInsertionEffect only fires once. If it's available we are in React 18.
203
+ * - useLayoutEffect only fires once in React 17.
204
+ */
205
+ const effectToUse = react_1.useInsertionEffect !== null && react_1.useInsertionEffect !== void 0 ? react_1.useInsertionEffect : react_1.useLayoutEffect;
206
+ if (typeof document !== 'undefined') {
207
+ effectToUse(() => {
138
208
  if (ctx && ctx.numberOfAudioTags > 0) {
139
- ctx.unregisterAudio(elem.id);
209
+ ctx.updateAudio({ id: elem.id, aud, audioId });
140
210
  }
141
- };
142
- }, [ctx, elem.id]);
143
- (0, react_1.useEffect)(() => {
144
- if (ctx && ctx.numberOfAudioTags > 0) {
145
- ctx.updateAudio(elem.id, aud);
146
- }
147
- }, [aud, ctx, elem.id]);
211
+ }, [aud, ctx, elem.id, audioId]);
212
+ effectToUse(() => {
213
+ return () => {
214
+ if (ctx && ctx.numberOfAudioTags > 0) {
215
+ ctx.unregisterAudio(elem.id);
216
+ }
217
+ };
218
+ }, [ctx, elem.id]);
219
+ }
148
220
  return elem;
149
221
  };
150
222
  exports.useSharedAudio = useSharedAudio;
File without changes
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useFrameForVolumeProp = exports.useMediaStartsAt = void 0;
4
4
  const react_1 = require("react");
5
- const sequencing_1 = require("../sequencing");
6
- const use_frame_1 = require("../use-frame");
5
+ const Sequence_1 = require("../Sequence");
6
+ const use_current_frame_1 = require("../use-current-frame");
7
7
  const useMediaStartsAt = () => {
8
8
  var _a;
9
- const parentSequence = (0, react_1.useContext)(sequencing_1.SequenceContext);
9
+ const parentSequence = (0, react_1.useContext)(Sequence_1.SequenceContext);
10
10
  const startsAt = Math.min(0, (_a = parentSequence === null || parentSequence === void 0 ? void 0 : parentSequence.relativeFrom) !== null && _a !== void 0 ? _a : 0);
11
11
  return startsAt;
12
12
  };
@@ -16,7 +16,7 @@ exports.useMediaStartsAt = useMediaStartsAt;
16
16
  * we calculate the way more intuitive value for currentFrame
17
17
  */
18
18
  const useFrameForVolumeProp = () => {
19
- const frame = (0, use_frame_1.useCurrentFrame)();
19
+ const frame = (0, use_current_frame_1.useCurrentFrame)();
20
20
  const startsAt = (0, exports.useMediaStartsAt)();
21
21
  return frame + startsAt;
22
22
  };
package/dist/bezier.d.ts CHANGED
File without changes
package/dist/bezier.js CHANGED
File without changes
File without changes
@@ -13,21 +13,19 @@ const warnOnceSSRImport = () => {
13
13
  console.warn(" typeof window === 'undefined' ? {} : getInputProps()");
14
14
  };
15
15
  const getInputProps = () => {
16
- if ((0, get_environment_1.getRemotionEnvironment)() === 'rendering') {
17
- if (typeof window === 'undefined') {
18
- warnOnceSSRImport();
19
- return {};
20
- }
21
- const param = window.remotion_inputProps;
22
- if (!param) {
23
- return {};
24
- }
25
- const parsed = JSON.parse(param);
26
- return parsed;
16
+ if (typeof window === 'undefined') {
17
+ warnOnceSSRImport();
18
+ return {};
27
19
  }
28
- if ((0, get_environment_1.getRemotionEnvironment)() === 'preview') {
29
- return process.env.INPUT_PROPS;
20
+ if ((0, get_environment_1.getRemotionEnvironment)() === 'player-development' ||
21
+ (0, get_environment_1.getRemotionEnvironment)() === 'player-production') {
22
+ throw new Error('You cannot call `getInputProps()` from a <Player>. Instead, the props are available as React props from component that you passed as `component` prop.');
30
23
  }
31
- throw new Error('You cannot call `getInputProps()` from a <Player>. Instead, the props are available as React props from component that you passed as `component` prop.');
24
+ const param = window.remotion_inputProps;
25
+ if (!param) {
26
+ return {};
27
+ }
28
+ const parsed = JSON.parse(param);
29
+ return parsed;
32
30
  };
33
31
  exports.getInputProps = getInputProps;