Skip to content

Instantly share code, notes, and snippets.

View JonnyBurger's full-sized avatar
๐ŸŽฅ
Making videos in React

Jonny Burger JonnyBurger

๐ŸŽฅ
Making videos in React
View GitHub Profile
@JonnyBurger
JonnyBurger / README.md
Created September 25, 2026 12:47
Chromium layoutSubtree nested canvas scaling at DPR 2: repro, detection, workaround

Chromium nested canvas scaling at DPR 2

Related: Chromium issue 540532973 and Remotion PR 11500.

Problem

A layoutSubtree canvas captures an immediate child whose descendants include another canvas. The outer paint handler calls captureElementImage(wrapper), resets its 2D context, and calls drawElementImage(image, 0, 0).

On Chrome 153 and Canary 156 at devicePixelRatio 2, the nested canvas pixels occupy only the top-left quarter of the outer canvas. In the four-quadrant repro, the yellow bottom-right quadrant lands at the top-left and the other three sample points are transparent. Ordinary DOM content is unaffected. Chrome 150 at DPR 2 and Chrome 153 at DPR 1 show all four quadrants correctly. The same workaround works when the inner canvas also has layoutSubtree = true.

@JonnyBurger
JonnyBurger / README.md
Created September 19, 2026 17:44
Transformers.js 4.3 WebGPU LayerNorm regression repro

Transformers.js 4.3 WebGPU LayerNorm regression

This is a single-file browser reproduction. It has no dependencies and no build step.

python3 -m http.server 8000 --directory repros/transformers-js-4.3-webgpu-layernorm

Open http://localhost:8000 in a browser with WebGPU support.

@JonnyBurger
JonnyBurger / figma-payload
Created July 17, 2026 08:42
Example Figma clipboard text/html payload for Remotion Studio SVG import analysis
<meta charset='utf-8'><meta charset="utf-8"><span data-metadata="<!--(figmeta)eyJmaWxlS2V5IjoiczdFamVDS0tGRGFoNmR0aWhveDNvMSIsInBhc3RlSUQiOjEwNDI2ODY0MjcsImRhdGFUeXBlIjoic2NlbmUiLCJlbnZpcm9ubWVudCI6Ind3dy5maWdtYS5jb20iLCJzZWxlY3RlZE5vZGVEYXRhIjoiMTk0MToxMTR8NHwwIn0K(/figmeta)-->"></span><span data-buffer="<!--(figma)ZmlnLWtpd2lqAAAA338AALW9CZhkSXHYn+/V1T333gew3Pe17C6X7rq6u2bqol51z85aVqumqnq6dqqrSvWqZ2ewLCOEEEIIIYQwQghhjBFCCCOMEEIIIYQQwgghhDHGGCOEMMYYY4wxxhj/fxGZ76ieXmR9/v777fTLjIyMjIyMjIyMzPfqq9nGMAx7F4bdK7OhMbecbtWa20G32Oka/mu2KtXt8kaxuV4NyHqbQbWTyvuKXW1WSGeC2nqzWCeVDbrn6lUSOU1sB1WhlVdcpbwdnKm1tzvVeqsoNQvNVre2dm472Ght1ivbm+31TrEi9VdccrvSakp+Ncp3qmudarAB6EhQrjar24DbG9vP2qx2zgE8mgZ2qu26AI9VamtrPI+X67Vqs7td6tB6uRgIbydSvJ1ubXboR1U4Oxl0O9Viw5aQP+XytsfX1JrdaqdY7ta26GS9BmNWNJRd26mWW81mtUxnU8xEHF53eHHE6/XKD61s15rlTrUBv8U6pa4OGDfoyMBXdzNIWr3R9a1D1WpHu3BTafOee7aL7XantQWNGPXm4uVRyAjeTdpIm16x30cTANHFynarqZwYzZzt1LpSyWtOB8P2bi8cggZjxa62AVKjtaVJ7+xoMhhNLnT2x4LTbDXvqXZaFJhWRcuFglW1IoVVQKbSKm9KF0l65WJzqxiQ8tc7rc02icxap9gQvG
@JonnyBurger
JonnyBurger / ew-resize-cursor-48.svg
Last active June 8, 2026 13:06
Remotion cursor previews for issue #8251
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@JonnyBurger
JonnyBurger / conversation.txt
Created March 19, 2026 14:40
What's new in Remotion - Editing with Claude Code
โ•ญโ”€โ”€โ”€ Claude Code v2.1.79 โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚ Tips for getting โ”‚
โ”‚ Welcome back Jonny! โ”‚ started โ”‚
โ”‚ โ”‚ Run /init to create a โ€ฆ โ”‚
โ”‚ โ–โ–›โ–ˆโ–ˆโ–ˆโ–œโ–Œ โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚
โ”‚ โ–โ–œโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–›โ–˜ โ”‚ Recent activity โ”‚
โ”‚ โ–˜โ–˜ โ–โ– โ”‚ No recent activity โ”‚
โ”‚ Opus 4.6 (1M context) ยท Claude Max ยท โ”‚ โ”‚
โ”‚ jonny@remotion.dev's Organization โ”‚ โ”‚
โ”‚ ~/whats-new โ”‚ โ”‚
@JonnyBurger
JonnyBurger / conversation.txt
Created March 19, 2026 14:40
What's new in Remotion - Editing with Claude Code
โ•ญโ”€โ”€โ”€ Claude Code v2.1.79 โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚ Tips for getting โ”‚
โ”‚ Welcome back Jonny! โ”‚ started โ”‚
โ”‚ โ”‚ Run /init to create a โ€ฆ โ”‚
โ”‚ โ–โ–›โ–ˆโ–ˆโ–ˆโ–œโ–Œ โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚
โ”‚ โ–โ–œโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–›โ–˜ โ”‚ Recent activity โ”‚
โ”‚ โ–˜โ–˜ โ–โ– โ”‚ No recent activity โ”‚
โ”‚ Opus 4.6 (1M context) ยท Claude Max ยท โ”‚ โ”‚
โ”‚ jonny@remotion.dev's Organization โ”‚ โ”‚
โ”‚ ~/whats-new โ”‚ โ”‚
@JonnyBurger
JonnyBurger / messages.md
Created March 3, 2026 13:23
AI-generated docs draft: Update site when upgrading Remotion Lambdas for best practice.

nota0966 - 3/2/2026, 10:41:56 PM

We are using Remotion Lambdas as well as rendering videos in our UI for user previews. I've been trying to document upgrade paths for our team and currently when we upgrade we bump all versions in our apps and also redeploy lambda functions as documented. However, I don't see any documentation around rebundling. My question is, when we upgrade and redeploy a Lambda, do we also need to create a new site to go with it? In which case we would probably deploy versioned sites ( e.g. npx remotion lambda sites create --site-name v4.0.245 ).

We haven't been doing this so far and haven't come across any issues, but it might just be good luck, so wanted to confirm best practice.

jonnyburger - 3/3/2026, 1:22:48 PM

yes, you should update the site

@JonnyBurger
JonnyBurger / messages.md
Created February 18, 2026 15:37
AI-generated docs draft: Loop support varies based on video component rendering.

empz3190 - 2/18/2026, 1:31:54 PM

Question about the new Video component and its fallback to OffthreadVideo behavior.

I see there's a fallbackOffthreadVideoPropsprop on the Video component.

The question is, what happens with "loop"? The new Video component supports the loop property, but OffthreadVideo does not. So what would happen if, during rendering, the component needs to fallback to OffthreadVideo and it was set to loop? It certainly won't loop, right? Anyway to resolve this inconsistency?

jonnyburger - 2/18/2026, 3:20:56 PM

โ•ญโ”€โ”€โ”€ Claude Code v2.1.39 โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โ”‚ Tips for getting started โ”‚
โ”‚ Welcome back Jonny! โ”‚ Run /init to create a CLAUDE.md file with instrโ€ฆ โ”‚
โ”‚ โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚
โ”‚ โ–โ–›โ–ˆโ–ˆโ–ˆโ–œโ–Œ โ”‚ Recent activity โ”‚
โ”‚ โ–โ–œโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–›โ–˜ โ”‚ No recent activity โ”‚
โ”‚ โ–˜โ–˜ โ–โ– โ”‚ โ”‚
โ”‚ โ”‚ โ”‚
โ”‚ Opus 4.6 ยท Claude Max โ”‚ โ”‚