manim-web 0.3.21 → 0.3.23
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.
- package/README.md +20 -0
- package/dist/{svg-swSF_J59.js → MathJaxBundle-xSidSV0E.js} +18571 -7242
- package/dist/animation/Animation.d.ts.map +1 -1
- package/dist/animation/AnimationGroup.d.ts.map +1 -1
- package/dist/animation/MasterTimeline.d.ts +88 -1
- package/dist/animation/MasterTimeline.d.ts.map +1 -1
- package/dist/animation/Timeline.d.ts.map +1 -1
- package/dist/animation/changing/index.d.ts +2 -2
- package/dist/animation/changing/index.d.ts.map +1 -1
- package/dist/animation/creation/Create.d.ts.map +1 -1
- package/dist/animation/growing/index.d.ts +8 -5
- package/dist/animation/growing/index.d.ts.map +1 -1
- package/dist/animation/movement/Homotopy.d.ts +37 -7
- package/dist/animation/movement/Homotopy.d.ts.map +1 -1
- package/dist/animation/movement/MoveAlongPath.d.ts.map +1 -1
- package/dist/animation/movement/Rotate.d.ts +2 -7
- package/dist/animation/movement/Rotate.d.ts.map +1 -1
- package/dist/animation/speed/index.d.ts.map +1 -1
- package/dist/animation/transform/ApplyPointwiseFunction.d.ts.map +1 -1
- package/dist/animation/transform/ApplyPointwiseFunctionToCenter.d.ts.map +1 -1
- package/dist/animation/transform/ApplyTransforms.d.ts.map +1 -1
- package/dist/animation/transform/MorphStrategy.d.ts +23 -0
- package/dist/animation/transform/MorphStrategy.d.ts.map +1 -1
- package/dist/animation/transform/PointCloudMorphStrategy.d.ts +18 -0
- package/dist/animation/transform/PointCloudMorphStrategy.d.ts.map +1 -0
- package/dist/animation/transform/PointMorphStrategy.d.ts +26 -0
- package/dist/animation/transform/PointMorphStrategy.d.ts.map +1 -1
- package/dist/animation/transform/Transform.d.ts +2 -0
- package/dist/animation/transform/Transform.d.ts.map +1 -1
- package/dist/animation/transform/TransformMatching.d.ts.map +1 -1
- package/dist/animation/utility/index.d.ts +6 -2
- package/dist/animation/utility/index.d.ts.map +1 -1
- package/dist/core/AnimateProxy.d.ts +3 -5
- package/dist/core/AnimateProxy.d.ts.map +1 -1
- package/dist/core/Camera.d.ts +40 -0
- package/dist/core/Camera.d.ts.map +1 -1
- package/dist/core/Camera2DFrame.d.ts +1 -1
- package/dist/core/Camera2DFrame.d.ts.map +1 -1
- package/dist/core/CameraExtensions.d.ts +33 -1
- package/dist/core/CameraExtensions.d.ts.map +1 -1
- package/dist/core/CameraFrame.d.ts.map +1 -1
- package/dist/core/Group.d.ts +11 -39
- package/dist/core/Group.d.ts.map +1 -1
- package/dist/core/InteractiveScene.d.ts.map +1 -1
- package/dist/core/Lighting.d.ts.map +1 -1
- package/dist/core/Mobject.d.ts +246 -11
- package/dist/core/Mobject.d.ts.map +1 -1
- package/dist/core/MobjectPositioning.d.ts +0 -8
- package/dist/core/MobjectPositioning.d.ts.map +1 -1
- package/dist/core/MobjectState.d.ts.map +1 -1
- package/dist/core/MobjectTraversal.d.ts +3 -0
- package/dist/core/MobjectTraversal.d.ts.map +1 -1
- package/dist/core/MobjectTypes.d.ts +29 -4
- package/dist/core/MobjectTypes.d.ts.map +1 -1
- package/dist/core/PointBounds.d.ts +39 -0
- package/dist/core/PointBounds.d.ts.map +1 -0
- package/dist/core/Renderer.d.ts +3 -0
- package/dist/core/Renderer.d.ts.map +1 -1
- package/dist/core/Scene.d.ts +82 -0
- package/dist/core/Scene.d.ts.map +1 -1
- package/dist/core/TexturedMobject.d.ts +12 -0
- package/dist/core/TexturedMobject.d.ts.map +1 -1
- package/dist/core/ThreeDScene.d.ts +9 -1
- package/dist/core/ThreeDScene.d.ts.map +1 -1
- package/dist/core/VDict.d.ts +1 -9
- package/dist/core/VDict.d.ts.map +1 -1
- package/dist/core/VGroup.d.ts +58 -42
- package/dist/core/VGroup.d.ts.map +1 -1
- package/dist/core/VMobject.d.ts +102 -28
- package/dist/core/VMobject.d.ts.map +1 -1
- package/dist/core/VMobjectCurveUtils.d.ts +1 -1
- package/dist/core/VMobjectCurveUtils.d.ts.map +1 -1
- package/dist/core/VMobjectGeometry.d.ts +20 -10
- package/dist/core/VMobjectGeometry.d.ts.map +1 -1
- package/dist/core/VMobjectRendering.d.ts +5 -0
- package/dist/core/VMobjectRendering.d.ts.map +1 -1
- package/dist/core/VMobjectStrokeGeometry.d.ts.map +1 -1
- package/dist/core/VMobjectTransformAlignment.d.ts +9 -0
- package/dist/core/VMobjectTransformAlignment.d.ts.map +1 -1
- package/dist/core/ZoomedScene.d.ts +2 -1
- package/dist/core/ZoomedScene.d.ts.map +1 -1
- package/dist/export/GifExporter.d.ts.map +1 -1
- package/dist/export/VideoExporter.d.ts.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -4
- package/dist/integrations/react.js +16 -18
- package/dist/integrations/vue.js +15 -17
- package/dist/interaction/Draggable.d.ts +12 -0
- package/dist/interaction/Draggable.d.ts.map +1 -1
- package/dist/interaction/OrbitControls.d.ts +1 -1
- package/dist/interaction/OrbitControls.d.ts.map +1 -1
- package/dist/manim-web.browser.js +12510 -10445
- package/dist/mobjects/fractals/MandelbrotSet.d.ts +2 -1
- package/dist/mobjects/fractals/MandelbrotSet.d.ts.map +1 -1
- package/dist/mobjects/fractals/NewtonFractal.d.ts +2 -1
- package/dist/mobjects/fractals/NewtonFractal.d.ts.map +1 -1
- package/dist/mobjects/frame/index.d.ts +3 -12
- package/dist/mobjects/frame/index.d.ts.map +1 -1
- package/dist/mobjects/geometry/AngleShapes.d.ts +4 -8
- package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -1
- package/dist/mobjects/geometry/AnnularSector.d.ts +4 -74
- package/dist/mobjects/geometry/AnnularSector.d.ts.map +1 -1
- package/dist/mobjects/geometry/Annulus.d.ts +1 -62
- package/dist/mobjects/geometry/Annulus.d.ts.map +1 -1
- package/dist/mobjects/geometry/Arc.d.ts +3 -1
- package/dist/mobjects/geometry/Arc.d.ts.map +1 -1
- package/dist/mobjects/geometry/ArcBetweenPoints.d.ts +1 -1
- package/dist/mobjects/geometry/ArcBetweenPoints.d.ts.map +1 -1
- package/dist/mobjects/geometry/ArcPolygon.d.ts +1 -1
- package/dist/mobjects/geometry/ArcPolygon.d.ts.map +1 -1
- package/dist/mobjects/geometry/Arrow.d.ts +130 -23
- package/dist/mobjects/geometry/Arrow.d.ts.map +1 -1
- package/dist/mobjects/geometry/ArrowTips.d.ts +7 -7
- package/dist/mobjects/geometry/ArrowTips.d.ts.map +1 -1
- package/dist/mobjects/geometry/BooleanOperations.d.ts.map +1 -1
- package/dist/mobjects/geometry/Circle.d.ts +20 -23
- package/dist/mobjects/geometry/Circle.d.ts.map +1 -1
- package/dist/mobjects/geometry/CubicBezier.d.ts +1 -1
- package/dist/mobjects/geometry/CubicBezier.d.ts.map +1 -1
- package/dist/mobjects/geometry/CurvedArrow.d.ts +1 -1
- package/dist/mobjects/geometry/CurvedArrow.d.ts.map +1 -1
- package/dist/mobjects/geometry/CurvedDoubleArrow.d.ts +1 -1
- package/dist/mobjects/geometry/CurvedDoubleArrow.d.ts.map +1 -1
- package/dist/mobjects/geometry/DashedLine.d.ts +3 -2
- package/dist/mobjects/geometry/DashedLine.d.ts.map +1 -1
- package/dist/mobjects/geometry/DashedVMobject.d.ts +3 -2
- package/dist/mobjects/geometry/DashedVMobject.d.ts.map +1 -1
- package/dist/mobjects/geometry/Dot.d.ts +4 -15
- package/dist/mobjects/geometry/Dot.d.ts.map +1 -1
- package/dist/mobjects/geometry/Ellipse.d.ts +3 -47
- package/dist/mobjects/geometry/Ellipse.d.ts.map +1 -1
- package/dist/mobjects/geometry/LabeledGeometry.d.ts +5 -5
- package/dist/mobjects/geometry/LabeledGeometry.d.ts.map +1 -1
- package/dist/mobjects/geometry/Line.d.ts +15 -9
- package/dist/mobjects/geometry/Line.d.ts.map +1 -1
- package/dist/mobjects/geometry/Polygon.d.ts +1 -1
- package/dist/mobjects/geometry/Polygon.d.ts.map +1 -1
- package/dist/mobjects/geometry/PolygonExtensions.d.ts +11 -67
- package/dist/mobjects/geometry/PolygonExtensions.d.ts.map +1 -1
- package/dist/mobjects/geometry/Polygram.d.ts +1 -1
- package/dist/mobjects/geometry/Polygram.d.ts.map +1 -1
- package/dist/mobjects/geometry/Rectangle.d.ts +4 -5
- package/dist/mobjects/geometry/Rectangle.d.ts.map +1 -1
- package/dist/mobjects/geometry/Sector.d.ts +5 -69
- package/dist/mobjects/geometry/Sector.d.ts.map +1 -1
- package/dist/mobjects/geometry/ShapeMatchers.d.ts +6 -5
- package/dist/mobjects/geometry/ShapeMatchers.d.ts.map +1 -1
- package/dist/mobjects/geometry/TangentialArc.d.ts +1 -1
- package/dist/mobjects/geometry/TangentialArc.d.ts.map +1 -1
- package/dist/mobjects/geometry/segment.d.ts +24 -0
- package/dist/mobjects/geometry/segment.d.ts.map +1 -0
- package/dist/mobjects/graph/DiGraph.d.ts +1 -4
- package/dist/mobjects/graph/DiGraph.d.ts.map +1 -1
- package/dist/mobjects/graph/GenericGraph.d.ts +2 -1
- package/dist/mobjects/graph/GenericGraph.d.ts.map +1 -1
- package/dist/mobjects/graph/Graph.d.ts +1 -4
- package/dist/mobjects/graph/Graph.d.ts.map +1 -1
- package/dist/mobjects/graph/layoutAlgorithms.d.ts.map +1 -1
- package/dist/mobjects/graphing/Axes.d.ts +1 -4
- package/dist/mobjects/graphing/Axes.d.ts.map +1 -1
- package/dist/mobjects/graphing/BarChart.d.ts +1 -4
- package/dist/mobjects/graphing/BarChart.d.ts.map +1 -1
- package/dist/mobjects/graphing/ComplexPlane.d.ts +43 -9
- package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -1
- package/dist/mobjects/graphing/FunctionGraph.d.ts +1 -4
- package/dist/mobjects/graphing/FunctionGraph.d.ts.map +1 -1
- package/dist/mobjects/graphing/ImplicitFunction.d.ts +1 -4
- package/dist/mobjects/graphing/ImplicitFunction.d.ts.map +1 -1
- package/dist/mobjects/graphing/NumberLine.d.ts +2 -8
- package/dist/mobjects/graphing/NumberLine.d.ts.map +1 -1
- package/dist/mobjects/graphing/NumberPlane.d.ts +1 -4
- package/dist/mobjects/graphing/NumberPlane.d.ts.map +1 -1
- package/dist/mobjects/graphing/ParametricFunction.d.ts +1 -4
- package/dist/mobjects/graphing/ParametricFunction.d.ts.map +1 -1
- package/dist/mobjects/graphing/Vector.d.ts +1 -4
- package/dist/mobjects/graphing/Vector.d.ts.map +1 -1
- package/dist/mobjects/graphing/VectorField.d.ts +3 -12
- package/dist/mobjects/graphing/VectorField.d.ts.map +1 -1
- package/dist/mobjects/image/index.d.ts +6 -4
- package/dist/mobjects/image/index.d.ts.map +1 -1
- package/dist/mobjects/matrix/Matrix.d.ts +4 -16
- package/dist/mobjects/matrix/Matrix.d.ts.map +1 -1
- package/dist/mobjects/point/Mobject1D.d.ts +1 -4
- package/dist/mobjects/point/Mobject1D.d.ts.map +1 -1
- package/dist/mobjects/point/Mobject2D.d.ts +1 -1
- package/dist/mobjects/point/Mobject2D.d.ts.map +1 -1
- package/dist/mobjects/point/PGroup.d.ts +2 -4
- package/dist/mobjects/point/PGroup.d.ts.map +1 -1
- package/dist/mobjects/point/PMobject.d.ts +49 -13
- package/dist/mobjects/point/PMobject.d.ts.map +1 -1
- package/dist/mobjects/point/PointCloudDot.d.ts +1 -4
- package/dist/mobjects/point/PointCloudDot.d.ts.map +1 -1
- package/dist/mobjects/point/PointMobject.d.ts +13 -17
- package/dist/mobjects/point/PointMobject.d.ts.map +1 -1
- package/dist/mobjects/probability/DiceFace.d.ts +1 -5
- package/dist/mobjects/probability/DiceFace.d.ts.map +1 -1
- package/dist/mobjects/probability/SampleSpace.d.ts +1 -5
- package/dist/mobjects/probability/SampleSpace.d.ts.map +1 -1
- package/dist/mobjects/svg/Brace.d.ts +5 -20
- package/dist/mobjects/svg/Brace.d.ts.map +1 -1
- package/dist/mobjects/svg/SVGMobject.d.ts +2 -2
- package/dist/mobjects/svg/SVGMobject.d.ts.map +1 -1
- package/dist/mobjects/table/Table.d.ts +1 -5
- package/dist/mobjects/table/Table.d.ts.map +1 -1
- package/dist/mobjects/text/Code.d.ts +1 -4
- package/dist/mobjects/text/Code.d.ts.map +1 -1
- package/dist/mobjects/text/CodeHighlighting.d.ts.map +1 -1
- package/dist/mobjects/text/CodeLanguageData.d.ts.map +1 -1
- package/dist/mobjects/text/DecimalNumber.d.ts +2 -8
- package/dist/mobjects/text/DecimalNumber.d.ts.map +1 -1
- package/dist/mobjects/text/GlyphVMobject.d.ts +1 -1
- package/dist/mobjects/text/GlyphVMobject.d.ts.map +1 -1
- package/dist/mobjects/text/MarkupText.d.ts +1 -1
- package/dist/mobjects/text/MarkupText.d.ts.map +1 -1
- package/dist/mobjects/text/MathJaxBundle.d.ts +7 -0
- package/dist/mobjects/text/MathJaxBundle.d.ts.map +1 -0
- package/dist/mobjects/text/MathJaxRenderer.d.ts +9 -0
- package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -1
- package/dist/mobjects/text/MathTex.d.ts +17 -4
- package/dist/mobjects/text/MathTex.d.ts.map +1 -1
- package/dist/mobjects/text/MathTexImage.d.ts +19 -4
- package/dist/mobjects/text/MathTexImage.d.ts.map +1 -1
- package/dist/mobjects/text/Paragraph.d.ts +1 -1
- package/dist/mobjects/text/Paragraph.d.ts.map +1 -1
- package/dist/mobjects/text/Tex.d.ts +2 -5
- package/dist/mobjects/text/Tex.d.ts.map +1 -1
- package/dist/mobjects/text/Text.d.ts +17 -1
- package/dist/mobjects/text/Text.d.ts.map +1 -1
- package/dist/mobjects/text/TextExtensions.d.ts +3 -12
- package/dist/mobjects/text/TextExtensions.d.ts.map +1 -1
- package/dist/mobjects/text/TextGlyphGroup.d.ts.map +1 -1
- package/dist/mobjects/text/Variable.d.ts +2 -4
- package/dist/mobjects/text/Variable.d.ts.map +1 -1
- package/dist/mobjects/text/katexStyles.d.ts.map +1 -1
- package/dist/mobjects/text/svgPathParser.d.ts.map +1 -1
- package/dist/mobjects/three-d/Arrow3D.d.ts +4 -3
- package/dist/mobjects/three-d/Arrow3D.d.ts.map +1 -1
- package/dist/mobjects/three-d/ConvexHull3D.d.ts +4 -3
- package/dist/mobjects/three-d/ConvexHull3D.d.ts.map +1 -1
- package/dist/mobjects/three-d/Cube.d.ts +6 -11
- package/dist/mobjects/three-d/Cube.d.ts.map +1 -1
- package/dist/mobjects/three-d/Cylinder.d.ts +5 -10
- package/dist/mobjects/three-d/Cylinder.d.ts.map +1 -1
- package/dist/mobjects/three-d/Line3D.d.ts +14 -59
- package/dist/mobjects/three-d/Line3D.d.ts.map +1 -1
- package/dist/mobjects/three-d/Mobject3D.d.ts +19 -0
- package/dist/mobjects/three-d/Mobject3D.d.ts.map +1 -0
- package/dist/mobjects/three-d/ParametricSurface.d.ts +1 -1
- package/dist/mobjects/three-d/ParametricSurface.d.ts.map +1 -1
- package/dist/mobjects/three-d/Polyhedra.d.ts +7 -6
- package/dist/mobjects/three-d/Polyhedra.d.ts.map +1 -1
- package/dist/mobjects/three-d/Sphere.d.ts +4 -6
- package/dist/mobjects/three-d/Sphere.d.ts.map +1 -1
- package/dist/mobjects/three-d/Surface3D.d.ts +41 -4
- package/dist/mobjects/three-d/Surface3D.d.ts.map +1 -1
- package/dist/mobjects/three-d/TexturedSurface.d.ts +4 -3
- package/dist/mobjects/three-d/TexturedSurface.d.ts.map +1 -1
- package/dist/mobjects/three-d/ThreeDAxes.d.ts +1 -1
- package/dist/mobjects/three-d/ThreeDAxes.d.ts.map +1 -1
- package/dist/mobjects/three-d/ThreeDExtensions.d.ts +7 -15
- package/dist/mobjects/three-d/ThreeDExtensions.d.ts.map +1 -1
- package/dist/mobjects/three-d/Torus.d.ts +4 -6
- package/dist/mobjects/three-d/Torus.d.ts.map +1 -1
- package/dist/mobjects/three-d/index.d.ts +1 -0
- package/dist/mobjects/three-d/index.d.ts.map +1 -1
- package/dist/mobjects/value-tracker/ValueTracker.d.ts +4 -2
- package/dist/mobjects/value-tracker/ValueTracker.d.ts.map +1 -1
- package/dist/player/Player.d.ts +36 -29
- package/dist/player/Player.d.ts.map +1 -1
- package/dist/player/PlayerUI.d.ts.map +1 -1
- package/dist/player/RecordingScene.d.ts +37 -0
- package/dist/player/RecordingScene.d.ts.map +1 -0
- package/dist/{src-CW4pfZdP.js → src-Bm3ebFjQ.js} +11003 -8942
- package/dist/test-setup/vitest-setup.d.ts +20 -0
- package/dist/test-setup/vitest-setup.d.ts.map +1 -0
- package/dist/utils/axis.d.ts +4 -0
- package/dist/utils/axis.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +37 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/math.d.ts +4 -0
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/vectors.d.ts +54 -1
- package/dist/utils/vectors.d.ts.map +1 -1
- package/package.json +13 -8
- package/dist/AmsConfiguration-BMyoprhk.js +0 -847
- package/dist/AmsConfiguration-BdxxYRby.js +0 -847
- package/dist/ConfigMacrosConfiguration-B8X_JSVI.js +0 -46
- package/dist/ConfigMacrosConfiguration-DUxp6DUV.js +0 -46
- package/dist/Entities-B1o7gN0J.js +0 -429
- package/dist/Entities-C82lnCux.js +0 -429
- package/dist/Factory-BKM7FEO-.js +0 -107
- package/dist/Factory-D-whCqrb.js +0 -107
- package/dist/GifExporter-BrxY_q7e.js +0 -338
- package/dist/GifExporter-S2pbxMc5.js +0 -338
- package/dist/HtmlNode-BLmQ2r7U.js +0 -981
- package/dist/HtmlNode-DXGeKrcW.js +0 -981
- package/dist/InputJax-DL9oUQY4.js +0 -41
- package/dist/InputJax-DnDWM3Y0.js +0 -41
- package/dist/NewcommandConfiguration-BPjclFig.js +0 -32
- package/dist/NewcommandConfiguration-bJ6P1rBY.js +0 -32
- package/dist/NewcommandMethods-C_E3iLoK.js +0 -187
- package/dist/NewcommandMethods-Cb7yFm5P.js +0 -187
- package/dist/Options-DRlTi0G8.js +0 -63
- package/dist/Options-XPptO-6X.js +0 -63
- package/dist/ParseMethods-BMPfzfQC.js +0 -2636
- package/dist/ParseMethods-D3_HeS1K.js +0 -2636
- package/dist/Styles-Dky5jZUe.js +0 -293
- package/dist/Styles-J-6R3Vr8.js +0 -293
- package/dist/VideoExporter-6ikT3u9H.js +0 -102
- package/dist/VideoExporter-D_RxVahH.js +0 -102
- package/dist/html-DU38zqaN.js +0 -829
- package/dist/html-DjkQuIHJ.js +0 -829
- package/dist/lengths-CP7zmbxJ.js +0 -54
- package/dist/lengths-D4tR1gYA.js +0 -54
- package/dist/liteAdaptor-BLgze3o2.js +0 -616
- package/dist/liteAdaptor-zXv-jsO1.js +0 -616
- package/dist/mathjax-7LgaTjtj.js +0 -121
- package/dist/mathjax-CoSFlQ0H.js +0 -121
- package/dist/mo-C5uLT3Z9.js +0 -2675
- package/dist/mo-CNYDGAsg.js +0 -2675
- package/dist/rolldown-runtime-DnwLefa7.js +0 -23
- package/dist/svg-CYweEoZ1.js +0 -28698
- package/dist/tex-C4_queV-.js +0 -1423
- package/dist/tex-CA5MLeEe.js +0 -1423
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { n as e } from "./rolldown-runtime-DnwLefa7.js";
|
|
2
|
-
//#region src/export/VideoExporter.ts
|
|
3
|
-
var t = /* @__PURE__ */ e({
|
|
4
|
-
VideoExporter: () => n,
|
|
5
|
-
createVideoExporter: () => r
|
|
6
|
-
}), n = class e {
|
|
7
|
-
_scene;
|
|
8
|
-
_options;
|
|
9
|
-
_mediaRecorder = null;
|
|
10
|
-
_recordedChunks = [];
|
|
11
|
-
_isRecording = !1;
|
|
12
|
-
constructor(e, t) {
|
|
13
|
-
this._scene = e, this._options = {
|
|
14
|
-
fps: t?.fps ?? 60,
|
|
15
|
-
quality: t?.quality ?? .9,
|
|
16
|
-
format: t?.format ?? "webm",
|
|
17
|
-
width: t?.width ?? e.getWidth(),
|
|
18
|
-
height: t?.height ?? e.getHeight(),
|
|
19
|
-
duration: t?.duration ?? 0,
|
|
20
|
-
onProgress: t?.onProgress ?? (() => {}),
|
|
21
|
-
includeAudio: t?.includeAudio ?? !0,
|
|
22
|
-
audioManager: t?.audioManager ?? null
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
_getAudioManager() {
|
|
26
|
-
if (this._options.audioManager) return this._options.audioManager;
|
|
27
|
-
try {
|
|
28
|
-
let e = this._scene.audioManager;
|
|
29
|
-
return e.tracks.length > 0 ? e : null;
|
|
30
|
-
} catch (e) {
|
|
31
|
-
return console.warn("AudioManager unavailable; exporting without audio:", e), null;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
async startRecording() {
|
|
35
|
-
if (this._isRecording) throw Error("Already recording");
|
|
36
|
-
let e = this._scene.getCanvas().captureStream(this._options.fps), t = this._options.includeAudio ? this._getAudioManager() : null, n;
|
|
37
|
-
if (t && t.tracks.length > 0) {
|
|
38
|
-
let r = t.createStreamDestination().stream.getAudioTracks();
|
|
39
|
-
n = new MediaStream([...e.getVideoTracks(), ...r]);
|
|
40
|
-
} else n = e;
|
|
41
|
-
let r;
|
|
42
|
-
if (this._options.format === "webm" ? r = "video/webm;codecs=vp9" : this._options.format === "mov" ? MediaRecorder.isTypeSupported("video/quicktime") ? r = "video/quicktime" : (console.warn("MOV format not supported by this browser, falling back to WebM"), r = "video/webm;codecs=vp9") : r = "video/mp4", !MediaRecorder.isTypeSupported(r)) throw Error(`Format ${r} is not supported by this browser`);
|
|
43
|
-
this._recordedChunks = [], this._mediaRecorder = new MediaRecorder(n, {
|
|
44
|
-
mimeType: r,
|
|
45
|
-
videoBitsPerSecond: Math.floor(this._options.quality * 1e7)
|
|
46
|
-
}), this._mediaRecorder.ondataavailable = (e) => {
|
|
47
|
-
e.data.size > 0 && this._recordedChunks.push(e.data);
|
|
48
|
-
}, this._mediaRecorder.start(), this._isRecording = !0;
|
|
49
|
-
}
|
|
50
|
-
async stopRecording() {
|
|
51
|
-
return new Promise((e, t) => {
|
|
52
|
-
if (!this._mediaRecorder || !this._isRecording) {
|
|
53
|
-
t(/* @__PURE__ */ Error("Not recording"));
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
this._mediaRecorder.onstop = () => {
|
|
57
|
-
let t;
|
|
58
|
-
t = this._options.format === "webm" ? "video/webm" : this._options.format === "mov" ? "video/quicktime" : "video/mp4";
|
|
59
|
-
let n = new Blob(this._recordedChunks, { type: t });
|
|
60
|
-
this._isRecording = !1, e(n);
|
|
61
|
-
}, this._mediaRecorder.stop();
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
async exportTimeline(e) {
|
|
65
|
-
let t = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5, n = Math.ceil(t * this._options.fps), r = 1 / this._options.fps, i = this._options.includeAudio ? this._getAudioManager() : null;
|
|
66
|
-
i && i.tracks.length > 0 && i.seek(0), await this.startRecording(), i && i.tracks.length > 0 && i.play();
|
|
67
|
-
for (let e = 0; e < n; e++) {
|
|
68
|
-
let t = e * r;
|
|
69
|
-
this._scene.seek(t), await new Promise((e) => requestAnimationFrame(e)), this._options.onProgress(e / n);
|
|
70
|
-
}
|
|
71
|
-
return i && i.isPlaying && i.stop(), this.stopRecording();
|
|
72
|
-
}
|
|
73
|
-
async exportAudio(e) {
|
|
74
|
-
let t = this._getAudioManager();
|
|
75
|
-
if (!t || t.tracks.length === 0) return null;
|
|
76
|
-
let n = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5;
|
|
77
|
-
return t.exportWAV(n);
|
|
78
|
-
}
|
|
79
|
-
static download(e, t = "animation.webm") {
|
|
80
|
-
let n = URL.createObjectURL(e), r = document.createElement("a");
|
|
81
|
-
r.href = n, r.download = t, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n);
|
|
82
|
-
}
|
|
83
|
-
async exportAndDownload(t, n) {
|
|
84
|
-
let r = await this.exportTimeline(n), i = {
|
|
85
|
-
webm: ".webm",
|
|
86
|
-
mp4: ".mp4",
|
|
87
|
-
mov: ".mov"
|
|
88
|
-
}[this._options.format] ?? ".webm";
|
|
89
|
-
e.download(r, t ?? `animation${i}`);
|
|
90
|
-
}
|
|
91
|
-
isRecording() {
|
|
92
|
-
return this._isRecording;
|
|
93
|
-
}
|
|
94
|
-
getOptions() {
|
|
95
|
-
return { ...this._options };
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
function r(e, t) {
|
|
99
|
-
return new n(e, t);
|
|
100
|
-
}
|
|
101
|
-
//#endregion
|
|
102
|
-
export { t as n, r, n as t };
|