remotion-to-hyperframes: Easing.cubic is mapped to power3 (quartic); cubic is power2
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 88/100
- Tipo de issue
- Documentación
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- documentation
Línea de trabajo
Lee skills/remotion-to-hyperframes/references/timing.md, especialmente las líneas 92–94 y el ejemplo desarrollado en las líneas 135 y 144. Corrige las correspondencias de las funciones de easing cúbicas y la correspondencia del exponente de poly(N) tal como se describe en el issue; se considerará terminado cuando la tabla y el ejemplo coincidan de forma coherente con los polinomios de GSAP indicados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Skill: skills/remotion-to-hyperframes/references/timing.md
The easing table maps Remotion's cubic easing to GSAP power3. GSAP's powerN eases have exponent N+1:
| GSAP ease | polynomial |
|---|---|
power1 |
quad |
power2 |
cubic |
power3 |
quart |
power4 |
quint |
So a ported Easing.out(Easing.cubic) runs as a quartic ease-out.
Affected lines (current main):
- L92:
Easing.out(Easing.cubic)→ease: "power3.out". It should bepower2.out. - L93:
Easing.inOut(Easing.cubic)→ease: "power3.inOut". It should bepower2.inOut. - L94:
Easing.out(Easing.poly(N))→power<N>.out. It should bepower<N-1>.out(poly 2 = quad →power1, 3 = cubic →power2, 4 = quart →power3, 5 = quint →power4). - L135 / L144: the worked example uses
power3.outand says it "matches1 - (1-t)^3exactly". That curve ispower2.out.
Check with GSAP 3.15.0 at t = 0.5:
| ease | value at t = 0.5 |
|---|---|
power2.out |
0.875000 |
power3.out |
0.937500 |
cubic 1 - (1-t)^3 |
0.875000 |
quart 1 - (1-t)^4 |
0.937500 |
Impact we saw: a counter tween ported with power3.out led its cubic original by up to about 0.27 s over a 2.6 s tween. An SSIM check per frame mostly doesn't catch it, because the error is timing: every frame looks plausible, it is just early.
Suggested fix:
- Change the two cubic rows and the worked example to
power2. - Change the
poly(N)row topower<N-1>.
(L72, overshootClamping → power3.out, is marked "not validated" and may be a deliberate approximation, so I've left it out.)
We found this while testing motion libraries for frame-exact rendering. HyperFrames itself was frame-exact in every test we ran. Thanks for building it.
- Lenguaje dominante
- TypeScript
- Estrellas
- 54.1k
- Forks
- 4.9k
- Merge medio
- 8 h 39 min
- PR fusionados (30 d)
- 736
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de heygen-com/hyperframes
-
`hyperframes docs examples` lists templates that don't existPosiblemente ocupada @Muhtasim-Munif-Fahim la tomó hace 3 días. Abiertobug difficulty/easy help wanted triage/ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
heygen-com/hyperframes#5393 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
lint: add tests for three caption rules that have nonePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertodifficulty/easy enhancement help wanted triage/ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
heygen-com/hyperframes#5388 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
gcp-cloud-run image pins Chrome 148, which drops `background-clip: text` glyphs inside layered children; the CLI's Chrome 152 paints themPosiblemente ocupada @user-github-me la tomó hace 5 días. Abiertobug difficulty/medium triage/ready
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
heygen-com/hyperframes#5117 ·
Los mantenedores suelen responder en 1 día
-
Docs: clarify that "Enable auto-update" is only available in the Claude Code terminal (CLI) /plugin UIPosiblemente ocupada @rumi7911 la tomó hace 7 días. Abiertodifficulty/easy documentation triage/ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
heygen-com/hyperframes#5027 ·
Los mantenedores suelen responder en 1 día
-
fix(producer): propagate useGpu to HDR layered streaming encoderPosiblemente ocupada @Monster-GM la tomó hace 9 días. Abiertobug difficulty/easy triage/ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 87/100
heygen-com/hyperframes#5002 ·
Los mantenedores suelen responder en 1 día
Todos los issues de heygen-com/hyperframes
Issues similares
-
e2e-failure ready-to-code
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
redhat-developer/rhdh-plugin-export-overlays#4391 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Luligu/matterbridge#655 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
software-mansion/argent#1457 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
schmayterling/hibi#245 ·
Los mantenedores suelen responder en 1 día
-
After a failed save, the red error banner stays on every page until the app is reloadedPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertoai-driven-qa bug claude Minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
linagora/twake-contacts-frontend#241 ·
Los mantenedores suelen responder en 1 día