Repository navigation
Releases
Releases · remotion-dev/remotion
v4.0.543
What's Changed
@remotion/studio: Add audio level meters by @JonnyBurger in #13146- remotion.pro is retired, buy a license now at https://www.remotion.dev/pricing instead
@remotion/cli: Addopen-timeline importandcanvas-capture importby @JonnyBurger in #13148@remotion/renderer: AddchromiumOptions.flagsto override Chrome flags by @JonnyBurger in #13147@remotion/renderer: AddproResBitsPerMacroblockfor ProRes file size control by @JonnyBurger in #13220@remotion/studio: Add movable playback diagnostics by @JonnyBurger in #13224@remotion/studio: Create<Track>s by right-clicking by @JonnyBurger in #13289remotion: Fix<HtmlInCanvas>flicker when resizing by @JonnyBurger in #13222remotion: Stop<CanvasImage>from reloading whenonErroris inline by @samohovets in #13238- remotion.new: Install required auxiliary packages with Elements by @samohovets in #13154
- remotion.new: Pin transitive dependency versions in fallback bundle, avoid ephemeral e2e port by @samohovets in #13203
@remotion/cli: Fixremotion elementserrors and docs that disagree with the command by @samohovets in #13151@remotion/cli: Reload the config again when it changes during a reload by @samohovets in #13260@remotion/lambda: Fix process crashes on chunk file write errors by @anthod0 in #13170@remotion/media: Fix duplicate redraw after ready and apply volume on mount by @samohovets in #13196@remotion/media: Skip audio initialization when muted or disabled by @JonnyBurger in #13221@remotion/media: CallonErroronce and show the error fallback when a preview fails by @samohovets in #13247@remotion/player: Fix audio interruptions from late preview frames by @JonnyBurger in #12519@remotion/player: Reduce bundle size by 10% by sharing code betweenremotionandremotion/no-reactby @samohovets in #13172@remotion/player: Fix buffering indicator not shown when buffering restarts within one frame by @samohovets in #13213@remotion/renderer: Fix replacement browser not closed after crash by @samohovets in #13188@remotion/renderer: Fix port lock not released when port selection throws by @samohovets in #13189@remotion/renderer: Fix CDP connection teardown running twice by @samohovets in #13190@remotion/renderer: Fix asset download hanging after invalid data URL by @samohovets in #13191@remotion/skills: Make Studio interactivity the default by @samohovets in #13133@remotion/skills: Use.element.tsxfile names and full Element index links for agents by @samohovets in #13156@remotion/studio: Keep the timeline zoom anchor fixed for the whole gesture by @VAbhijeetCD in #13103@remotion/studio: Fix effect inspector selection and reordering by @JonnyBurger in #13141@remotion/studio: Fix effect reorder indicators and history by @JonnyBurger in #13142@remotion/studio: Fix Element Library names in the Browse Elements menu by @samohovets in #13152@remotion/studio: Add source actions to Effects context menu by @JonnyBurger in #13185@remotion/studio: Fix element insert selection and default props races, harden e2e tests by @samohovets in #13195@remotion/studio: Fix timeline editing, playback and agent state by @JonnyBurger in #13233@remotion/studio: Show why a render could not be queued by @samohovets in #13239@remotion/studio: Jump to selected props and effects when opening source by @JonnyBurger in #13245@remotion/studio: Reconnect after the server answers/eventswith an error by @samohovets in #13261@remotion/studio: Keep sequence-props subscriptions stable during effect edits by @JonnyBurger in #13292@remotion/studio-server: Fix Studio discovery routing to the wrong tab by @alec-watts in #13120@remotion/studio-server: Fix missing assets when public folder is created by @JonnyBurger in #13252@remotion/web-renderer: Render SVG filter regions with offsets by @alec-watts in #13037@remotion/web-renderer: Render referenced SVG polygon and path clips by @alec-watts in #13100@remotion/web-renderer: Render referenced clips with multiple rectangles by @alec-watts in #13108@remotion/web-renderer: Fix doubled opacity on root SVG elements by @alec-watts in #13111@remotion/web-renderer: Fix rounding of CSS transform matrices by @alec-watts in #13112@remotion/web-renderer: Composite opaquerenderMediaOnWeb()output against black by @alec-watts in #13114@remotion/web-renderer: Preserve uncropped SVG blob content by @alec-watts in #13116@remotion/web-renderer: Preserve disabled SVG stylesheet state by @alec-watts in #13118@remotion/web-renderer: Addmask-compositefor multiple raster masks by @alec-watts in #13129@remotion/web-renderer: Preserve positioned children during filter capture by @alec-watts in #13140@remotion/web-renderer: Restore SVG fallback when a font family is removed by @alec-watts in #13145@remotion/web-renderer: Resolve percentages and CSS math intext-decoration-thicknessby @alec-watts in #13158@remotion/web-renderer: Close video frames whenrenderMediaOnWeb()fails by @alec-watts in #13160@remotion/web-renderer: Resolve CSS math inmask-sizeby @alec-watts in #13162@remotion/web-renderer: Fix composition props retained after unmount by @alec-watts in #13164@remotion/web-renderer: Keep readiness checks ticking after a worker error by @alec-watts in #13168@remotion/web-renderer: Restore inline styles after transform measurement by @alec-watts in #13171
Elements
- Define Element descriptions only in the Element registry by @samohovets in #13157
Templates
template-stargazer: Require GitHub authentication to fetch stargazers by @JonnyBurger in #13296
Docs
- Migrate public links and website guidance to remotion.dev by @JonnyBurger in #12808
- Clarify which organizations qualify as non-profits for the Free License by @samohovets in #12907
- Condense client-side rendering limitations by @JonnyBurger in #13122
- Use the Pro production backend for account routes by @JonnyBurger in #13130
- Publish standalone version 4.0 policies by @JonnyBurger in #13139
- Update the company address and keep 4.0 policies indexable by @JonnyBurger in #13149
- Fix inaccuracies in the Element authoring and library guides by @samohovets in #13155
- Add soundza to sound effect resources by @vfseanm in #13167
- Fix list of components that support effects by @samohovets in #13173
- Fix
getAvailableEmojis()name andscalevalues for@remotion/animated-emojiby @samohovets in #13174 - Fix legacy
bundle()signature and progress example by @samohovets in https://github.com/remotion-...
v4.0.542
What's Changed
@remotion/lambda-client: AddrenderMediaOnLambdaAndStream()andrenderFramesOnLambdaAndStream()by @JonnyBurger in #12851@remotion/lambda: AddchunkstorenderMediaOnLambda()and--chunkstonpx remotion lambda renderby @TimbuckTato in #12879@remotion/studio: Add OpenTimelineIO import by @JonnyBurger in #12580@remotion/studio: Add high contrast mode by @JonnyBurger in #12969@remotion/effects: Addmagnify()for enlarging image regions by @JonnyBurger in #12991@remotion/effects: Addlightning()for branching lightning bolts by @JonnyBurger in #13051@remotion/cli: Addremotion elements usecommand by @samohovets in #13000@remotion/studio-server: Reduce latency for edits by @JonnyBurger in #13087remotion: Fix missing images and videos inside<HtmlInCanvas>by @JonnyBurger in #12971remotion: Fix playback stuttering when resizing<HtmlInCanvas>by @JonnyBurger in #13079remotion: Fix<Sequence>inside<ThreeCanvas>crashing in Studio by @samohovets in #12979remotion: Clarify that unavailable HTML-in-canvas support refers to nested support by @amir-rezaei in #12981remotion: Skip image loading during audio-only rendering by @alec-watts in #12998remotion: ReturntruefromuseAudioEnabled()during server-side rendering by @DeryFerd in #13045remotion: Remove premount controls from default component schemas by @JonnyBurger in #13083@remotion/bundler: Fix EPERM when copying Windows directory junctions by @z22115554 in #13060@remotion/cloudrun: Update Google Cloud Storage to 7.21.0 by @JonnyBurger in #12938@remotion/codemods: Wrap added imports that exceed printWidth by @samohovets in #13008@remotion/codemods: Fix default import when inserting lazy compositions with named exports by @JonnyBurger in #13096create-video: Add--skillsflag for non-interactive skill installation by @DeryFerd in #12963@remotion/eslint-plugin: Flag absolute Windows paths with any drive letter or a UNC prefix by @DeryFerd in #13028@remotion/eslint-plugin: ChecksrcSetin theno-string-assetsrule by @DeryFerd in #13046@remotion/eslint-plugin: CheckstaticFile()template literal arguments by @DeryFerd in #13068@remotion/lambda: Reduce progress update overhead by @JonnyBurger in #13003@remotion/lambda-go: Surface Lambda function errors in render and progress invocations by @DeryFerd in #13064@remotion/lambda-php: Type the webhook option as an array instead of a string by @DeryFerd in #13065@remotion/lambda-ruby: Upload oversized input props to S3 like the other SDKs by @DeryFerd in #13066@remotion/layout-utils: Throw a clear error whenmaxLinesis below 1 by @DeryFerd in #12962@remotion/layout-utils: Throw a clear error whenmaxFontSizeis below 0.1 by @DeryFerd in #12994@remotion/layout-utils: Throw an error in v5 when the text infitText()measures 0 wide by @DeryFerd in #13027@remotion/layout-utils: Cap themeasureText()cache size by @DeryFerd in #13070@remotion/licensing: Throw a clear error for unexpected responses ingetUsage()by @DeryFerd in #13047@remotion/media: Show a placeholder for missing local videos in Studio by @JonnyBurger in #12986@remotion/media: Fix decoder buildup for videos with delayed fractional starts by @JonnyBurger in #13012@remotion/media: Respect the flip of mirrored videos when rendering by @nouredinateur in #13063@remotion/media-utils: FixgetWaveformPortion()crashing for largenumberOfSamplesby @DeryFerd in #12993@remotion/paths: FixreversePath()for commands afterZby @b84330808 in #12956@remotion/paths: Accept comma-separated viewBoxes inextendViewBox()by @DeryFerd in #13049@remotion/paths: Reject viewBoxes with a non-positive width or height inextendViewBox()by @DeryFerd in #13069@remotion/player: Fix playback timing after interruptions by @JonnyBurger in #12517@remotion/preload: Time outresolveRedirect()after 20 seconds by @DeryFerd in #13071@remotion/renderer: Re-download cached browsers when executable is missing by @JonnyBurger in #13073@remotion/renderer: MakevideoEnabledandaudioEnabledreactive during rendering by @JonnyBurger in #13077@remotion/shapes: Throw a clear error whenmakeStar()receives fewer than 3 points by @DeryFerd in #12961@remotion/studio: Move effect picker into inspector with live previews by @JonnyBurger in #12473@remotion/studio: Open inline ChatGPT composer for layer annotations by @JonnyBurger in #12950@remotion/studio: Label dimensions and snap frame rate controls to presets by @MehmetAdemi in #12959@remotion/studio: Give the icon-only menu trigger a discernible name by @gongfpp in #12960@remotion/studio: Fix editing props with literal divisions by @JonnyBurger in #12973@remotion/studio: Prevent arrow keys from seeking with computed layers selected by @JonnyBurger in #12974@remotion/studio: Fix nested controls and keyboard context menus by @MehmetAdemi in #12977@remotion/studio: Limit displayed frame rate precision by @MehmetAdemi in #12988@remotion/studio: Resize timeline from above playback controls by @MehmetAdemi in #12990@remotion/studio: Fix accessible names and high-contrast button text by @MehmetAdemi in #13026@remotion/studio: Fix inspector deselection by @JonnyBurger in #13056@remotion/studio: Fix moving compositions into folders defined in other files by @JonnyBurger in #13075@remotion/studio: Fix action flicker when switching compositions by @JonnyBurger in #13080@remotion/studio: Remove extra layer name padding with ellipsis by @JonnyBurger in #13084@remotion/studio: Apply chained effect edits optimistically by @JonnyBurger in #13088@remotion/studio: Apply composition moves and deletions optimistically by @JonnyBurger in #13094@remotion/studio: Fix misaligned italic composition metadata when set bycalculateMetadata()by @JonnyBurger in #13119@remotion/web-renderer: Support polygon fill rules by @alec-watts in #12928@remotion/web-renderer: Add sizing and repetition for raster URL masks by @alec-watts in #12964@remotion/web-renderer: Fix SVG files drawn through<Img>by @vamsi-venkatesh in #13024@remotion/web-renderer: Fixobject-positionin client image and canvas rendering by @alec-watts in #13031@remotion/web-renderer: Blend single-gradient backgrounds in an isolated group by @alec-watts in #13032@remotion/web-renderer: Order atomic 2D stacking-context siblin...
v4.0.541
What's Changed
@remotion/lambda: Allow custom function names todeployFunction()by @JonnyBurger in #12849remotion: Forward Solid data and aria props to its canvas by @alec-watts in #12933remotion: Round fractionalrgb()channels ininterpolateColors()by @kevin9327 in #12912remotion: Remove brokenrequestVideoFrameCallbacktime comparison from media sync by @samohovets in #12903remotion: Avoid replaying HTML5 audio after Player buffering by @keiffff in #12514@remotion/studio: Add "Render and replace" action to swap a scene for its rendered video by @samohovets in #12839@remotion/lambda-client: Remove the duplicate bundledfast-xml-parserdependency by @gongfpp in #12943@remotion/lambda-python: Upload input props to the forced bucket by @DeryFerd in #12854@remotion/media: Fix Windows hardware decoder stalls with high-fps source videos by @alec-watts in #12842@remotion/media: Call<Video>onErrorin client-side rendering and respect disallowed fallbacks by @samohovets in #12901@remotion/media: Skip rerunning effects on an unchanged decoded video frame by @FTMManager in #12878@remotion/media: Avoid duplicate animated video effect paints by @samohovets in #12885@remotion/motion-blur: Render a single sample when the shutter angle is 0 by @DeryFerd in #12913@remotion/paths: Fix NaN length of arcs whose radii are scaled up by @b84330808 in #12910@remotion/paths: Cut the closingZcommand incutPath()by @b84330808 in #12921@remotion/renderer: Gracefully close Chrome to avoid retained macOS code-sign clones by @antidebug in #12804@remotion/renderer: Fix flickering issue on Windows by @JonnyBurger in #12939@remotion/renderer: Avoid reusing pages of a browser that was replaced after a crash by @yongjip in #12896@remotion/renderer: Fix render hanging forever after a browser crash by @yongjip in #12841@remotion/studio: Add playback controls to fullscreen preview by @npmisantosh in #12906@remotion/studio: Fix timeline edits, output paths, and tab restoration by @JonnyBurger in #12931@remotion/studio: Improve timeline editing, render outputs, captions, and undo/redo by @JonnyBurger in #12875@remotion/studio: Keep cursors stable throughout drag gestures by @JonnyBurger in #12940@remotion/studio: Fix trim cursors during marquee selection by @JonnyBurger in #12937@remotion/studio: Don't show notification after pasting a property onto multiple sequences by @Maxwell-II in #12941@remotion/studio: Open hosted Studio links without a leading slash by @samohovets in #12926@remotion/studio: Fall back toexecCommand('copy')when the Clipboard API is unavailable by @andriidrok1 in #12911@remotion/studio: Fix 1px video seam at the edge of the fitted preview by @Asyncronize in #12877
Templates
- Vibe Code template: Fix visual editing and browser exports by @JonnyBurger in #12932
Docs
- Fix hydration errors caused by the SWC HTML minifier by @samohovets in #12930
- Add Karaoke Captions to product resources by @ParishKhan in #12871
- Remove Recorder from Products navbar by @samohovets in #12887
Internal and Experimental
@remotion/sdk: AddgetCanvasKeyframeValueChange()for editing selected keyframes by @JonnyBurger in #12932@remotion/paths: Prepare arc tangent direction fix for Remotion 5 by @b84330808 in #12868@remotion/promo-pages: Fix pricing terms links across sites by @JonnyBurger in #12919- Skills: Add
/fix-root-causeskill by @samohovets in #12902 - Skills: Add
/no-commentsskill by @samohovets in #12892 - remotion.dev/brand: Add 2020 Remotion prototype podcast edit by @JonnyBurger in #12895
- remotion.dev/brand: Polish agentic video and standardize Dark+ visuals by @JonnyBurger in 72a13b0872
New Contributors
- @gongfpp made their first contribution in #12943
- @kevin9327 made their first contribution in #12912
- @npmisantosh made their first contribution in #12906
Full Changelog: v4.0.540...v4.0.541
v4.0.540
What's Changed
remotion: Every effect now has a WebGPU version by @JonnyBurger in #12700@remotion/renderer: Upgrade Chrome to 158.0.8127.2 and publish build scripts by @JonnyBurger in #12814@remotion/bundler: Upgrade to Rspack 2.3 by @JonnyBurger in #12146@remotion/media: Upgrade Mediabunny to 1.64.0 by @JonnyBurger in #12830@remotion/studio: Show timeline preview images for<AnimatedImage>and<Gif>by @JonnyBurger in #12807remotion: Fix long<OffthreadVideo>renders on Chrome 158 by @JonnyBurger in #12834remotion: Skip rerunning effects on an unchanged AnimatedImage frame by @andriidrok1 in #12811remotion: Avoid Chromium crashes during WebGL effect cleanup by @JonnyBurger in #12710remotion: Recover canvas effects after WebGL context loss by @JonnyBurger in #12708remotion: Fix WebGL state leaking between canvas effects by @JonnyBurger in #12694remotion: Reduce per-frame overhead of<Sequence>by @alec-watts in #12688@remotion/effects: Add weather, burn, and wipe effects by @JonnyBurger in #12598@remotion/effects: Add WebGL2 and WebGPU backends to 38 effects by @JonnyBurger in #12805@remotion/effects: Add WebGPU backends to the remaining 49 effects by @JonnyBurger in #12809@remotion/web-renderer: AddrenderFramesOnWeb()for rendering multiple still frames by @alec-watts in #12326@remotion/transitions: Makecube()presentation free by @JonnyBurger in #12657@remotion/studio: Add a custom playback rate control to the preview toolbar by @Tatsuya0330 in #12601@remotion/animation-utils: Fixskew()with per-axis units and validatescale()y by @kjgggggg in #12664@remotion/canvas-capture-extension: Open Browser Studio recordings on remotion.new by @JonnyBurger in #12659@remotion/captions: Strip tags and decode character references inparseVtt()cue text by @samohovets in #12636@remotion/captions: FixparseVtt()dropping text of YouTube auto-generated captions by @samohovets in #12623@remotion/cli: Add missing boolean flags toCommandLineOptionsby @DeryFerd in #12819@remotion/cli: Accept--propsfiles saved with a UTF-8 BOM by @b84330808 in #12645@remotion/cli: Respect--flag falsefor 7 boolean options by @DeryFerd in #12629@remotion/cli: Ignore config file CRF for codecs without CRF support by @samohovets in #12621@remotion/cli: Report usage for image sequence renders by @costajohnt in #12607@remotion/effects: Reuse WebGPU pipelines and samplers by @JonnyBurger in #12713@remotion/lambda-go: AddGetCompositionsOnLambda()by @DeryFerd in #12835@remotion/lambda-php: AddgetCompositionsOnLambda()by @DeryFerd in #12837@remotion/lambda-python: Addget_compositions_on_lambda()by @DeryFerd in #12836@remotion/lambda-ruby: Addget_compositions_on_lambda()by @DeryFerd in #12838@remotion/media: Reuse prepared audio when the playback clock changes by @JonnyBurger in #12706@remotion/media: Bound unshifted audio decoding to the sequence end by @samohovets in #12695@remotion/media: Remove redundant canvas copies from video previews by @alec-watts in #12684@remotion/media: Recover when Chrome reclaims idle decoders by @dg314 in #12679@remotion/media: Fix<Video>preview lagging one frame behind render for 29.97fps WebM by @samohovets in #12671@remotion/media: Bound paused audio decoding with a keep-alive context by @alec-watts in #12609@remotion/media-utils: FixgetAudioData()caching across sample rates by @JonnyBurger in #12556@remotion/motion-blur: FixHtmlInCanvasMotionBlurrender failure by @JonnyBurger in #12690@remotion/paths: Treat arcs with a zero radius as straight lines by @b84330808 in #12859@remotion/paths: Fix geometry of chainedTcommands after a non-quadratic command by @b84330808 in #12821@remotion/paths: FixgetBoundingBox()for curves starting with a flat tangent by @b84330808 in #12687@remotion/player: Fix audio context leak when<Player>unmounts by @alec-watts in #12634@remotion/player: Fix audio interruptions during muted playback by @JonnyBurger in #12606@remotion/renderer: Forward uncaught exceptions toonBrowserLogby @JonnyBurger in #12831@remotion/renderer: Fix render hanging when a media download fails after frames are rendered by @samohovets in #12829@remotion/renderer: Report page crashes in still renders instead of timing out by @yongjip in #12682@remotion/renderer: Fix audio dropouts in distributed AAC renders by @JonnyBurger in #12673@remotion/studio: Improve render cancellation, output previews, timeline editing, and keyboard controls by @JonnyBurger in #12873@remotion/studio: Fix stale previews and effect deletion by @JonnyBurger in #12862@remotion/studio: Preserve pending edits during source updates by @JonnyBurger in #12860@remotion/studio: Agent-assisted quality improvements by @JonnyBurger in #12857@remotion/studio: Ask for a composition ID when pre-composing by @samohovets in #12813@remotion/studio: Open video and audio sources from the Inspector by @samohovets in #12812@remotion/studio: Use remotion.new in Browser Studio links and copy by @JonnyBurger in #12658@remotion/studio: Prevent accidental swipe navigation in Safari by @JonnyBurger in #12655@remotion/studio: Download render output when "Open in Folder" fails by @samohovets in #12649@remotion/studio: Fix timeline seeking when interactivity is disabled by @samohovets in #12641@remotion/studio: Delete the adjacent transition or overlay together with a TransitionSeries sequence by @andriidrok1 in #12431@remotion/transitions: Hold rendering until HTML-in-canvas transitions paint by @BeyondITL-Mossaddique in #12845@remotion/transitions: Fix OffscreenCanvas errors when reactivating transitions by @JonnyBurger in #12672@remotion/web-renderer: Fix browser rendering in Safari by @samohovets in #12699@remotion/web-renderer: Rasterize precomposited layers at the ancestor scale by @BeyondITL-Mossaddique in #12650@remotion/web-renderer: Fixmix-blend-modebeing ignored by @samohovets in #12647@remotion/web-renderer: Release completed render results from queues by @alec-watts in #12631- Standardize
licenseKeyandisProductionacross rendering APIs by @JonnyBurger in #12654 @remotion/whisper-web: Deprecate package - use@remotion/whisper-webgpuinstead by @samohovets in #12828
Elements
- Hide "Try in remotion.new" button when inside Studio by @samohovets in #12696
docs: Point Element install fallback hint to the drag handle by @samohovets in https://github.com/remotion-de...
v4.0.539
What's Changed
@remotion/effects: Addcurves()and graphical color controls in Studio by @JonnyBurger in #12550@remotion/effects: Addshatter()for 3D fragment animations by @JonnyBurger in #12578remotion: Fixspring()overshoot clamping with custom ranges by @JonnyBurger in #12552remotion: Fix hue angles ininterpolateColors()by @JonnyBurger in #12574remotion: Fix multi-keyframe loops ininterpolate()by @JonnyBurger in #12587remotion: Fixprefetch()cleanup for shared assets by @JonnyBurger in #12591remotion: Close animated image frames when evicted from cache by @WhyTan00 in #12571remotion: Avoid repeated Tailwind scans inAbsoluteFillby @JonnyBurger in #12545@remotion/animation-utils: Fix 3D transforms ininterpolateStyles()by @JonnyBurger in #12554@remotion/cli: Add render usage flags and fix Lambda telemetry by @JonnyBurger in #12596@remotion/lambda: Actually run the launch handler's cleanup tasks by @parbhatkapila4 in #12521@remotion/lambda-php: AddrenderStillOnLambda()by @DeryFerd in #12524@remotion/media: Bound the preview reveal frame cache by @alec-watts in #12540@remotion/media: Release abandoned preview startup on disposal by @alec-watts in #12541@remotion/media-utils: Fix non-finite values invisualizeAudio()by @JonnyBurger in #12555@remotion/media-utils: Ignore staleuseAudioData()requests by @JonnyBurger in #12570@remotion/media-utils: Fix audio context leaks ingetAudioData()by @JonnyBurger in #12576@remotion/media-utils: Fix multichannel audio corruption inaudioBufferToDataUrl()by @JonnyBurger in #12586@remotion/paths: Fix geometry of relative quadratic paths by @JonnyBurger in #12547@remotion/paths: FixtranslatePath()for paths starting withmby @JonnyBurger in #12553@remotion/player: Fix browser rewind and fast-forward seeking by @JonnyBurger in #12543@remotion/player: Fix component updates withnoSuspenseby @JonnyBurger in #12579@remotion/player: Fix keyboard trapping in the playback-speed menu by @JonnyBurger in #12581@remotion/renderer: Don't deadlock when concurrent renders merge 32+ audio tracks by @parbhatkapila4 in #12539@remotion/renderer: Fix downloads with relative redirect paths by @JonnyBurger in #12549@remotion/renderer: Fix oversized suffix byte-range requests by @JonnyBurger in #12584@remotion/renderer: Fix localhost port collisions with IPv6 servers by @JonnyBurger in #12585@remotion/studio: Speed up remapping large selections after source edits by @JonnyBurger in #12544@remotion/studio: Speed up move and resize setup for large selections by @JonnyBurger in #12546@remotion/studio: Speed up resizing large TransitionSeries selections by @JonnyBurger in #12548@remotion/studio: Skip unchanged expanded timeline trees during playback by @JonnyBurger in #12551@remotion/studio-server: Fix API requests rejected behind HTTPS reverse proxies by @samohovets in #12575@remotion/transitions: Fix capturing bareOffthreadVideoscenes by @JonnyBurger in #12561
Elements
- Fix Browse Elements in Safari on remotion.dev/new by @samohovets in #12562
- Fix cross-origin drag-and-drop in Safari by @samohovets in #12567
- Add error and retry screens for Studio library loading by @samohovets in #12572
Docs
- Add GitHub CLI skill installation command by @tommaso-moro in #12530
- Update browser bug statuses and Chrome fix versions by @JonnyBurger in #12538
- Mark HTML-in-canvas object-fit bug as fixed by @JonnyBurger in #12590
- Define non-profit in license FAQ by @JonnyBurger in #12557
- Align non-profit FAQ with terms by @JonnyBurger in #12558
- Link Free License eligibility from pricing by @samohovets in #12537
- Move "Why is there no Remotion app?" article to FAQ by @JonnyBurger in dac0f8541a
- Fix warning admonitions in player preloading guide by @JonnyBurger in 3266d0b58f
Internal and Experimental
- Homepage: Add experimental homepage with synchronized Studio handoff by @JonnyBurger in 870b8a614c
- Homepage: Add styled Convert demo to explore section by @JonnyBurger in 7830ef2f55
- remotion.dev/convert: Match site navigation across Convert and test media by @JonnyBurger in 2bd172f29a
- Internal testbed: Fix CommittedRenderHolds without ImageDecoder by @samohovets in #12569
Full Changelog: v4.0.538...v4.0.539
v4.0.538
What's Changed
Many performance improvements in the Studio!
@remotion/studio: Preserve pitch when changing playback speed by @JonnyBurger in #12423- Upgrade Mediabunny to 1.62.0 by @JonnyBurger in #12450
@remotion/media: AddpreservePitchto change speed without changing pitch by @alec-watts in #12350remotion: Show notice in<HtmlInCanvas>when not supported instead of crash by @JonnyBurger in #12421remotion: Fix memory leak when replacing<Sequence>children by @alec-watts in #12291remotion: Fix retention of replaced components and callbacks by @JonnyBurger in #12462remotion: Fix Studio sequence prop resubscriptions when seeking by @JonnyBurger in #12401remotion: Speed up sequentialspring()calculations by @JonnyBurger in #12516remotion: Speed upinterpolateColors()by reusing color matchers by @JonnyBurger in #12525remotion: Speed upEasing.ease()evaluations by @JonnyBurger in #12527remotion: Skip unused premount frame subscriptions by @JonnyBurger in #12531remotion: Skip unchangedSequencelayout wrapper renders by @JonnyBurger in #12533remotion: Avoid redundantHtml5Audiovolume evaluations by @JonnyBurger in #12535@remotion/agent-plugin: Publish on every release by @JonnyBurger in #12459@remotion/bundler: Avoid repeated sorting while scanning public assets by @JonnyBurger in #12481@remotion/codemods: Speed upgetNodes()for large compositions by @JonnyBurger in #12486@remotion/codemods: Speed upupdateMultipleNodeProps()for large selections by @JonnyBurger in #12489@remotion/codemods: Skip unnecessary scope lookups for numeric props by @JonnyBurger in #12492@remotion/codemods: Speed up bulk nonnumeric property edits by @JonnyBurger in #12497@remotion/codemods: Speed updeleteNodes()andduplicateNodes()for large selections by @JonnyBurger in #12502@remotion/codemods: Speed upupdateMultipleNodeProps()andreorderNodes()for large selections by @JonnyBurger in #12503@remotion/google-fonts: Add font faces todocument.fontsin a deterministic order by @serdarucel in #12443@remotion/google-fonts: Share the loader across ESM entry points by @alec-watts in #12476@remotion/lambda: Remove@remotion/serverlessand@remotion/serverless-clientby @JonnyBurger in #12426@remotion/lambda: Generate default output key whenoutName.keyis omitted by @smartcalsystems-sketch in #12399@remotion/lambda: Don't fail a render when a retried stream replays an artifact by @parbhatkapila4 in #12452@remotion/lambda-client: Accept the raw request body invalidateWebhookSignature()by @DeryFerd in #12454@remotion/lambda-php: AddWebhookSignature::validate()by @DeryFerd in #12415@remotion/lambda-ruby: Addvalidate_webhook_signature()by @DeryFerd in #12396@remotion/media: Fix extra GOP decoded when seeking to fractional MP4 keyframes by @JonnyBurger in #12348@remotion/media: Fix memory growth during audio playback by @alec-watts in #12409@remotion/media: Fix automatic audio selection when the preferred track cannot decode by @alec-watts in #12433@remotion/media: Fix audio decoding errors being replaced by timeouts in web renders by @alec-watts in #12434@remotion/media: Close extracted video frames on parallel audio failures by @alec-watts in #12435@remotion/media: Preserve audio and video decode failure details by @alec-watts in #12437@remotion/media-utils: Fix audio data hooks timing out on errors in web renders by @JonnyBurger in #12442@remotion/paths: Cut cubic curves at the requested arc length incutPath()by @serdarucel in #12410@remotion/player: Fix audio anchor shifts whendurationInFrameschanges by @Plastic-time in #12395@remotion/renderer: HonorpreservePitch={false}in server-side HTML5/Offthread rendering by @xsalaices in #11777@remotion/renderer: Keep the decimal part ofconcurrencypercentages by @serdarucel in #12417@remotion/renderer: Reject two artifacts with the same filename on the same frame by @parbhatkapila4 in #12446@remotion/studio: Stack timeline layer and asset names by @JonnyBurger in #12520@remotion/studio: Persist timeline waveforms and thumbnails across reloads by @JonnyBurger in #12413@remotion/studio: Show selected item type in inspector title by @JonnyBurger in #12430@remotion/studio: Show the tab close button only on hover by @andriidrok1 in #12398@remotion/studio: Restore the persisted playback rate after a reload by @signalzero-dev in #12418@remotion/studio: Disable child canvas selection while rotating a parent by @JonnyBurger in #12416@remotion/studio: Show error details with syntax colors ready by @JonnyBurger in #12495@remotion/studio: Position context menus relative to the cursor by @JonnyBurger in ec5b00614e@remotion/studio: Align UV coordinate values with numeric fields by @JonnyBurger in f73de38e71@remotion/studio: Fix playback slowdown with many selected or expanded layers by @JonnyBurger in #12456@remotion/studio: Reduce timeline zoom rendering work by @JonnyBurger in #12407@remotion/studio: Reduce timeline work during playback and Series dragging by @JonnyBurger in #12465@remotion/studio: Reduce selection outline work during playback by @JonnyBurger in #12469@remotion/studio: Reduce inspector and timeline re-renders during playback by @JonnyBurger in #12471@remotion/studio: Only rerender edited elements when saving prop changes by @JonnyBurger in #12472@remotion/studio: Speed up canvas outlines and long transition timelines by @JonnyBurger in #12474@remotion/studio: Speed up source remapping when editing large compositions by @JonnyBurger in #12482@remotion/studio: Skip volume curve sampling for offscreen timeline clips by @JonnyBurger in #12488@remotion/studio: Avoid repeated track scans when inspecting multiple sequences by @JonnyBurger in #12490@remotion/studio: Avoid rerendering unchanged source subscribers by @JonnyBurger in #12493@remotion/studio: Avoid repeated scans when selecting many timeline items by @JonnyBurger in #12496@remotion/studio: Avoid repeated scans for timeline selection highlights by @JonnyBurger in #12501@remotion/studio: Reduce memory used by large timeline selections by @JonnyBurger in #12504@remotion/studio: Speed up multi-selection inspector previews by @JonnyBurger in #12506@remotion/studio: Speed up timing edits across large selections by @JonnyBurger in #12509@remotion/studio: Speed up selecting many timeline rows by @JonnyBurger in #12510@remotion/studio: Speed up moving and trimming large clip selections by @JonnyBurger in #12511@remotion/studio: Speed up source updates for compositions ...
v4.0.537
What's Changed
@remotion/effects: Addcylinder()andsphere()projections by @JonnyBurger in #12351@remotion/effects: AddpageTurn()and add Peel Element by @JonnyBurger in #12352@remotion/effects: AddfractalNoise()for procedural textures by @JonnyBurger in #12354@remotion/effects: AddturbulentDisplace()for animated distortion by @JonnyBurger in #12355@remotion/effects: AddlensBlur()for camera defocus by @JonnyBurger in #12356@remotion/effects: AddbevelAlpha()for raised text and shapes by @JonnyBurger in #12359@remotion/captions: AddparseVtt()by @DeryFerd in #12318remotion: Default premounting to zero inside<HtmlInCanvas>to work around bug by @JonnyBurger in #12373remotion: Prevent<HtmlInCanvas>from flashing unprocessed HTML before effects finish by @JonnyBurger in #12377remotion: Avoid snapshot crashes with nested<HtmlInCanvas>by @JonnyBurger in #12371remotion: Fix<AnimatedImage>decoder errors when scrubbing by @JonnyBurger in #12336remotion: Fix error message for non-finitedurationInFramesby @DeryFerd in #12365remotion: Skip frame updates for static interactive components by @JonnyBurger in #12366remotion: Skip redundant preparation for unchanged effects by @JonnyBurger in #12368@remotion/codemods: Group split clips in a namedTrackby @JonnyBurger in #12332create-video: Open a shell in newly created projects by @JonnyBurger in #12343create-video: Install every skill when Install all skills is selected by @DanielMcSheehy in #12361@remotion/lambda: Reject directory symbolic links during site deployment by @serdarucel in #12376@remotion/lambda: Fix stale output recovery when overwriting renders by @JonnyBurger in #12388@remotion/maptiler: Fix crashes when hidden maps become visible again by @samohovets in #12321- Upgrade Mediabunny to 1.61.6 by @JonnyBurger in #12387
@remotion/player: Keep the playback clock across effect re-runs whendurationInFrameschanges by @chiragjangiir in #12324@remotion/renderer: Bind render server to localhost by default by @JonnyBurger in #12381@remotion/serverless: Don't merge a chunk twice when a streamed chunk is retried by @parbhatkapila4 in #12337@remotion/studio: Save and watch default props in the file that registers the composition by @costajohnt in #12370@remotion/studio: Offer project download for server-side rendering in Browser Studio by @samohovets in #12346@remotion/studio: Scale timeline waveforms by static volume by @JonnyBurger in #12330@remotion/studio: Hide timeline labels too narrow to show a full character by @JonnyBurger in e0a094c@remotion/studio: Fix missing gaps between nested scene clips by @JonnyBurger in ba7cc17@remotion/studio: Fix connected composition icon clipping in short timeline rows by @JonnyBurger in a8cf5c2@remotion/studio: Keep roll trim interactions below timeline ticks by @JonnyBurger in b30f317@remotion/studio: Fix marquee selection starting during rolling edits by @JonnyBurger in #12335@remotion/studio: Fix stale source subscriptions after refresh by @JonnyBurger in #12385@remotion/studio: Batch sequence prop unsubscriptions by @JonnyBurger in #12327@remotion/whisper-web: Stop publishing starting with v5 by @JonnyBurger in #12328
Elements
- Migrate to
Interactive.create()by @JonnyBurger in #12339 - Use dropdown for caption style libraries in Studio by @samohovets in #12342
Templates
- Elements: Add starter template for publishing libraries by @samohovets in #12325
- Elements: Add Markdown pages and catalogs to library template by @samohovets in #12382
Docs
- Simplify Element contribution guide by @samohovets in #12390
- Add HTML-in-canvas bug tracker by @JonnyBurger in #12378
- Add rendering alternatives to SSR comparison by @JonnyBurger in #12329
- Remove NPM Kiosk publishing recommendation by @samohovets in #12391
- Remove background-check claim from DPA by @JonnyBurger in #12345
- Remove Remotion Pro branding from licensing statements by @JonnyBurger in #12393
Internal and Experimental
@remotion/codemods: AddunwrapNode()to remove wrappers and keep children by @JonnyBurger in #12334remotion: Add a regression test for the AnimatedImage decoder lifecycle by @chiragjangiir in #12358- remotion.dev/brand: Add a 3D timeline comparison by @JonnyBurger in #12333
- remotion.dev/brand: Center close-up interactions at 1920x1080 by @JonnyBurger in #12340
- remotion.dev/brand: Add video rolling edit close-up by @JonnyBurger in 87d7ae2
- remotion.dev/brand: Add source-only trim close-ups by @JonnyBurger in 36a18eb
- Internal testbed: Consolidate still rendering workflows by @JonnyBurger in #12362
- Skills: Rewrite editable timeline guidance and example by @JonnyBurger in #12341
- Skills: Add Arabic and right-to-left text guidance by @AmroAlemam in #12374
New Contributors
- @serdarucel made their first contribution in #12376
Full Changelog: v4.0.536...v4.0.537
v4.0.536
What's Changed
@remotion/studio: New timeline experience! by @JonnyBurger in #12228@remotion/studio: Show unmounted components in the timeline by @JonnyBurger in e9c20e1remotion: AddInteractive.create()for custom components by @JonnyBurger in #12269@remotion/cli: AddConfig.setSequenceActivityLimit()with unlimited default by @JonnyBurger in #12272remotion: AddeffectsOutputSizeto all effect-capable components by @alec-watts in #12178@remotion/studio: Add rolling edits for touching timeline clips by @JonnyBurger in #12224@remotion/studio: Add interlocking transitions with rolling edit targets by @JonnyBurger in #12229remotion: Suspend off-screen sequence updates during playback and seeking by @JonnyBurger in #12303remotion: Fix hold interpolation of custom cursor strings by @JonnyBurger in 68a0a19remotion: Fix cursor desynchronization when moving sequences in Studio by @JonnyBurger in 5082befremotion: Update drag previews for hidden components by @JonnyBurger in 7ac02c1remotion: Release temporary bitmaps after applying effects by @JonnyBurger in #12296@remotion/codemods: ResolveInteractivewrappers when inserting compositions by @JonnyBurger in 438c633@remotion/codemods: Speed up edits by reusing parsed source by @JonnyBurger in #12295create-video: Record esbuild script denial in npm projects by @JonnyBurger in #12304@remotion/lambda-client: Count props size in bytes before sending them inline by @parbhatkapila4 in #12260@remotion/lambda-client: DefaultenvVariablesingetCompositionsOnLambda()by @parbhatkapila4 in #12284@remotion/lambda-go: AddValidateWebhookSignature()by @DeryFerd in #12244@remotion/lambda-python: Addvalidate_webhook_signature()by @DeryFerd in #12286@remotion/media: Prevent disposed initialization from repainting its replacement by @alec-watts in #12234@remotion/media: Avoid stopping audio buffers that never started by @alec-watts in #12235@remotion/player: Don't drop frames when a frame update commits after the next tick by @auiphc in #12121@remotion/renderer: Fix clipped audio in seamless AAC chunks by @JonnyBurger in #12285@remotion/renderer: Preserve pixel density in scaled Lambda captures by @Arthur031221 in #12248@remotion/studio: Add text action to composition inspector by @samohovets in #12266@remotion/studio: Edit text on preview double-click by @samohovets in #12282@remotion/studio: Add font previews on hover and keyboard navigation by @samohovets in #12301@remotion/studio: Organize settings and add option explainers by @JonnyBurger in b0db22e@remotion/studio: Add Match current time duration preset by @JonnyBurger in e26adcb@remotion/studio: Add agent context copying to easing menu by @JonnyBurger in d17f1ba@remotion/studio: Show item count in multi-selection delete action by @JonnyBurger in b098931@remotion/studio: Recognize JPEG XL by @JonnyBurger in #12302@remotion/studio: Read JPEG XL dimensions from file headers by @JonnyBurger in #12311@remotion/studio: Draw linear volume curves between keyframes by @JonnyBurger in #12232@remotion/studio: ShowTransitionSeriessequence trim glow on hover by @JonnyBurger in ce6e150@remotion/studio: Explain computed values when trimming timeline clips by @JonnyBurger in 5b322e7@remotion/studio: Show the element library menu even when no libraries are added by @samohovets in #12314@remotion/studio: Hide unavailable agent hints in Browser Studio by @samohovets in #12246@remotion/studio: Hide empty inspector controls section by @JonnyBurger in d5f4553@remotion/studio: Use thinner easing preset previews by @JonnyBurger in 0f6a044@remotion/studio: Keep trim highlights bright on inactive layers by @JonnyBurger in 1d14292@remotion/studio: Remove trim outlines during rolling edits by @JonnyBurger in #12271@remotion/studio: Disable audio separation for videos without audio tracks by @samohovets in #12225@remotion/studio: Prevent invalid keyframe ranges when trimming by @JonnyBurger in #12220@remotion/studio: Preserve selection when dragging timeline items by @JonnyBurger in #12221@remotion/studio: Restore synchronous timeline trimming by @JonnyBurger in #12267@remotion/studio: Restore composition browser in narrow layouts by @samohovets in #12226@remotion/studio: FixTrackclip rows and keyframe expansion by @JonnyBurger in #12227@remotion/studio: Fix false<Track>overlaps for audio without explicit durations by @JonnyBurger in #12312@remotion/studio: Fix source-only edits on clips trimmed by parents by @JonnyBurger in #12288@remotion/studio: Fix trimming ofTransitionSeriesclips and isolate edge handles by @JonnyBurger in ec142d2@remotion/studio: MakeSeriestrims consistent by @JonnyBurger in 688be38@remotion/studio: Trim clipped layers at their visible edge by @JonnyBurger in e612bde@remotion/studio: Show complete trim outlines on pointer down by @JonnyBurger in 97a87b5@remotion/studio: Keep nested hidden clip trims live by @JonnyBurger in b537eb6@remotion/studio: Respect trims in caption timeline labels by @JonnyBurger in da3dd12@remotion/studio: Fix rolling edit handles clipped at scene boundaries by @JonnyBurger in fc6dd24@remotion/studio: Fix keyframes clipped by scene boundaries by @JonnyBurger in 4c47160@remotion/studio: Scope connected composition expansion to tracks by @JonnyBurger in 89d22aa@remotion/studio: Remove extra connected composition spacing by @JonnyBurger in 935e31f@remotion/studio: Fix inherited premount values in Inspector by @JonnyBurger in #12251@remotion/studio: Fix folder drop targets with alphabetical sorting by @JonnyBurger in fb63655@remotion/studio: Fix first timeline seek after browser-back navigation by @samohovets in #12239@remotion/studio: Fix text flicker when selecting fonts ...
v4.0.535
What's Changed
@remotion/studio: Premount components for 2 seconds by default by @JonnyBurger in #12212@remotion/studio: Hide premounting by default (configurable) by @JonnyBurger in #12081- Upgrade Mediabunny to 1.61.3 by @JonnyBurger in #12100
@remotion/studio: Make caption layers orange and show titles by @JonnyBurger in #12162@remotion/lambda-client: AddrenderFramesOnLambda()for image sequences by @JonnyBurger in #12077@remotion/lambda: AddseparateAudioTotorenderMediaOnLambda()by @JonnyBurger in #12091@remotion/lambda-python: AddAsyncRemotionClientfor asynchronous rendering by @JonnyBurger in #12089@remotion/studio: AdddefaultPremountInSecondsoption by @JonnyBurger in #12054@remotion/studio-protocol: AddsubscribeToCaptionStyleSelection()for local caption selection by @samohovets in #12175remotion: AddInteractive.childrenSchemafor editable children content by @JonnyBurger in #12066remotion: Addlayoutoption toInteractive.withSchema()by @JonnyBurger in #12161remotion: FixSeriestypes for default layout by @JonnyBurger in #12158remotion: Fix leakeddelayRender()handles when React discards a render by @JonnyBurger in #12103remotion: Fix stale frames from custom<HtmlInCanvas>handlers by @JonnyBurger in #12118remotion: Fix playback stalls when audio resume and suspend overlap by @JonnyBurger in #12142remotion: Allocate effect canvases on first use by @alec-watts in #12130remotion: Avoid resolving video configuration in every consumer by @JonnyBurger in #12197remotion: Separate sequence registration and reuse captured source stacks by @JonnyBurger in #12140@remotion/bundler: Reduce file watcher overhead by @JonnyBurger in #12148@remotion/lambda: Recognize output access errors across bundled package copies by @developerjillur in #12184@remotion/lambda: Exit with code 1 whenpolicies validatefails by @DeryFerd in #12111@remotion/lambda-client: Do not dump payload into oversize error by @DeryFerd in #12176@remotion/lambda-client: Count payload size in bytes by @DeryFerd in #12114@remotion/media: Fix audio crackling after seeking during playback by @JonnyBurger in #12061@remotion/media: Fix audio crash during reverse playback by @JonnyBurger in #12117@remotion/player: Fix stopping before the final frame when playback updates are delayed by @alec-watts in #12133@remotion/renderer: Fix Lambda timeouts caused by libc detection by @JonnyBurger in #12116@remotion/renderer: Cap Chrome video decoder threads to prevent rendering hangs by @JonnyBurger in #12085@remotion/renderer: Fix intermittent FFmpeg spawn failures on Bun by @JonnyBurger in #12080@remotion/renderer: Preserve video track timescale when combining chunks by @JonnyBurger in #12122@remotion/renderer: Fix browser console messages ignoringlogLevelby @JonnyBurger in #12083@remotion/sdk: Skip unused outline work in hidden Fiber trees by @JonnyBurger in #12086@remotion/serverless: Count webhook Content-Length in bytes by @DeryFerd in #12064@remotion/studio: Add drag reordering for Series clips and tracks by @JonnyBurger in #12075@remotion/studio: Applylut()when dropping .cube files onto videos by @JonnyBurger in #12101@remotion/studio: Add view transitions between inspector views by @JonnyBurger in #12110@remotion/studio: Delete sequences optimistically by @JonnyBurger in #12143@remotion/studio: Clamp interactive trims and moves to valid timing ranges by @JonnyBurger in #12169@remotion/studio: Share child rows acrossTransitionSeriesscenes by @JonnyBurger in #12147@remotion/studio: Place Series overlays below scene children by @JonnyBurger in #12155@remotion/studio: Share collapse state across compact timeline scene rows by @JonnyBurger in #12163@remotion/studio: Compact scene layers during transitions by @JonnyBurger in #12164@remotion/studio: Restore scrolling for the full sequence inspector by @JonnyBurger in #12211@remotion/studio: Fix layout shifts when editing number draggers by @JonnyBurger in #12206@remotion/studio: Fix caption inspector jumps when selecting properties by @JonnyBurger in #12207@remotion/studio: Keep property rows selected when committing numeric inputs by @JonnyBurger in #12205@remotion/studio: Fix timeline selection for JSX on one line by @JonnyBurger in #12203@remotion/studio: Fix crashes when deletingTransitionSeries.Overlayby @JonnyBurger in #12202@remotion/studio: Fix documentation links for selected components by @JonnyBurger in #12151@remotion/studio: Fix hover states persisting after pointer exits by @JonnyBurger in #12107@remotion/studio: Fix composition duration input in timecode mode by @JonnyBurger in #12102@remotion/studio: Fix undo for mixed static and keyframed canvas edits by @JonnyBurger in #12088@remotion/studio: Fix update depth errors while trimming by @JonnyBurger in #12071@remotion/studio: Fix timeline ticks appearing above modals by @JonnyBurger in #12067@remotion/studio: Fix timeline playhead alignment by @JonnyBurger in #12062@remotion/studio: Generate ChatGPT annotation metadata only on demand by @JonnyBurger in #12200@remotion/studio: Reduce keyframed volume curve calculation overhead by @JonnyBurger in #12198@remotion/studio: Remove subscriptions to state used only during interactions by @JonnyBurger in #12194@remotion/studio: Reduce clip rerenders when zooming timeline by @JonnyBurger in #12190@remotion/studio: Keep playhead scroll listener stable across frame updates by @JonnyBurger in #12170@remotion/studio: Reduce unrelated timeline clip renders by @JonnyBurger in #12125@remotion/studio: Reduce repeated timing work during timeline drags by @JonnyBurger in #12124@remotion/studio: Reuse unchanged commit metadata by @JonnyBurger in #12127@remotion/studio: Reuse canvas outlines during zoom by @JonnyBurger in #12073@remotion/studio: Remove unnecessary work from closed context menus by @JonnyBurger in #12072@remotion/studio: Register composition and timeline metadata on React commits by @JonnyBurger in #12040@remotion/studio-server: Add Studio terminal shortcut helper by @JonnyBurger in #12069@remotion/three: Release<ThreeCanvas>creation hold on unmount and take it at commit by @taylanalpan in #12097@remotion/transitions: Inherit Sequence props inTransitionSeries.Sequenceby @JonnyBurger in https://github.com/remotion-dev/remotion/pul...
v4.0.534
What's Changed
- Upgrade to Chromium 157.0.8080.0 by @JonnyBurger in #11460
@remotion/renderer: Share memory between Chrome and FFmpeg@remotion/renderer: Enable parallel encoding more oftenremotion: Nested HTML-in-canvas works during server-side renderingremotion: Skip unchanged timeline sequence updates by @JonnyBurger in #12030remotion: Fix unnecessary context updates in<Freeze>by @JonnyBurger in #12039@remotion/animation-utils: Apply easing to colors ininterpolateStyles()by @sarmah-rup in #12043@remotion/cloudrun: Check for missing credentials by @JonnyBurger in #12048@remotion/codemods: Fix Pre-compose forSeries.Sequenceby @JonnyBurger in #11969@remotion/codemods: Pre-compose single roots withInteractive.withSchema()by @JonnyBurger in #12004@remotion/eslint-config-flat: Disableno-use-before-definein user presets by @JonnyBurger in #11976@remotion/lambda-client: Use constant-time comparison for webhook signatures by @DeryFerd in #12035@remotion/media: Preserve original errors from format detection by @JonnyBurger in #11984@remotion/media: Fix duplicate timeline layers when<Video>falls back by @JonnyBurger in #12034@remotion/renderer: Remove free-memory check for parallel encoding by @JonnyBurger in #11971@remotion/renderer: Mux audio-only AAC into .m4a, .m4b and .3gp containers by @PRIEST099 in #11977@remotion/renderer: MuxseparateAudioToAAC into .m4a, .m4b and .3gp containers by @HEOJUNFO in #12014@remotion/renderer: Warn about unsupported AAC output extensions by @JonnyBurger in #11990@remotion/renderer: Fix available memory estimates on macOS and Linux by @JonnyBurger in #12009@remotion/renderer: Accept uppercase output file extensions by @theluckystrike in #12020@remotion/renderer: Fix media rendering failures afterdelayRender()retries by @JonnyBurger in #12033@remotion/renderer: Do not log "Target closed" from tab cycling during teardown by @onlined in #12037@remotion/studio: Add upgrade and action menu for Agent Skills by @JonnyBurger in #11980@remotion/studio: Add seconds and timecode input for composition duration by @JonnyBurger in #11975@remotion/studio: Shortcut for matching duration to timeline by @JonnyBurger in #11983@remotion/studio: Follow active caption in inspector by @snowyukitty in #11965@remotion/studio: FixstaticFile()assets after server restarts by @samohovets in #11962@remotion/studio: Fix unnecessary dropdown renders on resize by @JonnyBurger in #11978@remotion/studio: Keep right sidebar open at narrower widths by @JonnyBurger in #11979@remotion/studio: Fix subscription churn when trimming parent sequences by @JonnyBurger in #11991@remotion/studio: Fix left edge trimming inside trimmed sequences by @JonnyBurger in #11992@remotion/studio: Add ChatGPT annotations to source and repair actions by @JonnyBurger in #11993@remotion/studio: Check wrap eligibility only on click by @JonnyBurger in #11998@remotion/studio: Remove idle tooltip and context menu listeners by @JonnyBurger in #11999@remotion/studio: Fix blank screen when project imports fail by @JonnyBurger in #12000@remotion/studio: Remember recent editor and coding agent choices by @JonnyBurger in #12001@remotion/studio: Remove idle action work on frame changes by @JonnyBurger in #12002@remotion/studio: Keep one visible frame when trimming clipped sequences by @JonnyBurger in #12007@remotion/studio: Add agent guidance to server disconnect banner by @JonnyBurger in #12008@remotion/studio: Reduce unnecessary renders for editing actions by @JonnyBurger in #12010@remotion/studio: Align icons to the pixel grid by @JonnyBurger in #12013@remotion/studio: Fix editingfpsexpressions in files with multiple components by @JonnyBurger in #12016@remotion/studio: Fix wrapper selection after HTML-in-canvas and Motion blur actions by @JonnyBurger in #12017@remotion/studio: Reduce unnecessary canvas and timeline renders by @JonnyBurger in #12028@remotion/studio: Fix waveform peak sampling when zooming or trimming by @JonnyBurger in #12032@remotion/studio: Fix canvas tabs scrollbar track contrast by @JonnyBurger in #12038@remotion/studio: Hide redundant canvas wrapping quick actions by @JonnyBurger in #12047@remotion/studio: Remove waveform peak scaling when showing volume curves by @JonnyBurger in #12050@remotion/studio: Skip saving unchanged props on blur by @JonnyBurger in #12052@remotion/studio-server: Open VS Code source files in project workspace by @JonnyBurger in #11966@remotion/web-renderer: Fix effects and radial gradients in client-side rendering by @JonnyBurger in #12019create-video: Add bundled and individual skill installation choices by @samohovets in #11956create-video: Tailwind disabled by default, use--tailwindto add TailwindCSS by @JonnyBurger in #12055
Elements
- Insert gallery elements without outer Sequences by @JonnyBurger in #11853
- Add visible Browser Studio action to detail pages by @samohovets in #11856
- Rename audio visualizer
audioSrcprops tosrcby @JonnyBurger in #12003
Docs
- remotion.dev/options by @JonnyBurger in #12029
- Avoid renumbering option pages when adding options by @JonnyBurger in #12058
- Clarify stacking order in client-side rendering by @JonnyBurger in #12045
- Document botocore configuration for
RemotionClient()by @JonnyBurger in #12046 - Clamp both sides in
interpolate()range example by @adityapratap0077-cloud in #12044 - Add Faceless Shorts Kit to resources by @developk in #11986
- Add descriptor to Faceless Shorts Kit listing by @developk in #12031
- Add remotion-qa to resources (Tooling) by @GroMarketing in #12011
Internal and Experimental
remotion: Prototype<Track>for single-row Studio timelines by @JonnyBurger in #11854- Skills: Prefer built-in effects for supported components by @JonnyBurger in #11968
- Skills: Fix caption timing guidance for edited clips by @JonnyBurger in #11970
- Skills: Use inline
volumeinterpolation in examples by @JonnyBurger in #11981 - Skills: Add Canvas Capture import via
experimental-codemodby @JonnyBurger in #12012 - Run independent CI setup steps in parallel by @JonnyBurger in #12057
New Contributors
- @snowyukitty made their first contribution in #11965
- @theluckystrike made their first contribution in #12020
Full Changelog: v4.0.533...v4.0.534